AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi von Enabled := False zu Enabled := True geht nicht

von Enabled := False zu Enabled := True geht nicht

Ein Thema von ck.bielefeld · begonnen am 11. Okt 2011 · letzter Beitrag vom 11. Okt 2011
Antwort Antwort
ck.bielefeld

Registriert seit: 11. Okt 2011
7 Beiträge
 
#1

von Enabled := False zu Enabled := True geht nicht

  Alt 11. Okt 2011, 20:39
Hallo Zusammen!
Bevor gemeckert wird:
- Ich bin mir nicht sicher, ob ich in dieser Sparte mit meiner Frage richtig bin. Sollte ich hier falsch sein, bitte ich um Verzeihung und um das Verschieben des Beitrags zur passenden Sparte mittels eines Admins.
- Ja, habe die Suche benutzt, und ja, ich habe Threads gefunden, die ein ähnliches Problem behandeln. Aber nein, die konnten mir leider nicht weiterhelfen.

Nun zu meinem Problem:

Ich besuche eine Vorlesung zur Maschinenbauinformatik, und unsere Aufgabe ist (eigentlich) ganz einfach.
Es sollen zwei Zufallszahlen mittels der vier Grundrechenarten verarbeitet werden.
Man klickt auf ein Button. Dieser Button legt zwei Zufallszahlen in den jeweiligen Variablen ab. Dann klickt man auf einen von vier weiteren Buttons, hinter denen dann die vier Grundrechenarten liegen.
Soweit ganz simpel. Klickt man auf den Zufalls-Button, erscheinen die beiden Zahlen. Klickt man dann auf einen der vier anderen Buttons, wird ordnungsgemäß gerechnet.
Dumm nur, das man auf die vier Buttons zum rechnen klicken kann, wenn noch keine Zufallszahlen generiert wurden. Folglich kann ich +, - oder * rechnen. Bei der Division allerdings gibts Probleme.
Also sollten wir die vier Buttons deaktivieren.

Aus meiner Erfahrung mir Visual Basic kenn ich das Procedere:
Ich habe die vier Buttons von Anfang an auf Enabled := False gestellt.
Nun möchte ich in der Prozedur Klick, die auch die Zufallszahlen erzeugt, die vier Buttons auf Enabled := True setzen. Sprich mit: Button1.Enabled := True
Dies sollte dann so aussehen, das die vier Rechenbuttons inaktiv sind, solange noch keine Zufallszahlen zum Rechnen generiert wurden. Mit dem generieren werden diese Buttons dann wieder aktiv gesetzt. Soweit die Theorie.

Die Praxis sieht allerdings ernüchternd aus: das funktioniert so nicht. Die Buttons bleiben inaktiv.

Woran liegt das?

Vielen Dank für eure Hilfe, und viele Grüße,

ck.bielefeld
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: von Enabled := False zu Enabled := True geht nicht

  Alt 11. Okt 2011, 20:42
Veranlasst du anschliessend die Form sich neu zu Zeichnen?
Wo steht der Code?
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von scrat1979
scrat1979

Registriert seit: 12. Jan 2007
Ort: Sulzbach a.d. Murr
1.026 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: von Enabled := False zu Enabled := True geht nicht

  Alt 11. Okt 2011, 20:47
Veranlasst du anschliessend die Form sich neu zu Zeichnen?
[...]
Warum sollte man die Form neu zeichnen müssen, um das Ergebnis zu sehen?? Ein einfaches button1.enabled := true / false; sollte doch das Ergebnis sofort zeigen, oder?
Michael Kübler
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.007 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#4

AW: von Enabled := False zu Enabled := True geht nicht

  Alt 11. Okt 2011, 20:47
Haltepunkt an die Stelle, wo du das Enabled auf True setzt, und schauen, ob der Code ausgeführt wird.

P.S. Da muss kein Neuzeichnen angetriggert werden

P.P.S. Bissle Sourcecode zu posten kann nie schaden, um den Fehler zu lokalisieren.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
ck.bielefeld

Registriert seit: 11. Okt 2011
7 Beiträge
 
#5

AW: von Enabled := False zu Enabled := True geht nicht

  Alt 11. Okt 2011, 20:48
Ich habe meinen Fehler gefunden!
Oh man, wie blind.

@mkinzler
Die Vermutung, das der Code an der falschen Stelle stand war ziemlich gut!

Der Code zu (re-)aktiviern der Buttons mit der Rechenoperationen lag nicht unter dem Button zu generieren der Zufallszahlen, sonder hinter dem Additions-Button.
Folglich konnte ich meine inaktiven Buttons nur dann reaktivieren, wenn ich vorher auf einen (dummerweise inaktiven) Button geklickt hätte.

Den Code an die richtie Stelle verschoben - Problem gelöst!

Vielen dank an mkinzler!

Viele Grüße,

ck.bielefeld
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:18 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz