| Autor |
Beitrag |
Cashels
      
Beiträge: 167
|
Verfasst: So 22.09.02 14:21
Hallo,
hab mal wieder einen typischen DAU Fall. Der gute Mensch sitzt vor meinem Programm, drückt auf ein Button um eine Funktion auszuführen. Die Rechenroutine in dieser Funktion nimmt allerdings etwas Zeit in Anspruch. Und weil der gute Mann geübt ist in Ungeduld, drückt er natürlich während dieser Zeit noch mindestens 3 mal auf den Button und wundert sich warum da nix passiert. Klar, dass dann zum Schluss, die gesamten Berechnungen mehrmals ausgeführt werden.
Jetzt meine Frage: wie kann ich das verhindern, ohne jeweils nach dem Drücken den Button zu disablen und nach Abschluss wieder freizugeben.
Danke für jeden Tip.
Gruss,
Tom
|
|
Chatfix
      
Beiträge: 1583
Erhaltene Danke: 10
Win 10, Win 8, Win 7, Win Vista, Win XP
VB.net (VS 2015), MsSQL (T-SQL), HTML, CSS, PHP, MySQL
|
Verfasst: So 22.09.02 14:38
nimm doch einfach eine variable
Quelltext 1: 2: 3: 4: 5: 6:
| if VAR=true then begin VAR:=false; {DEIN CODE} VAR:=true; end; |
habs nicht probiert müsste aberr gehen, du kannst die Variable ja auch anders nennen. (VAR :boolean;)
ich hoffe ich konnte dir etwas helfen
_________________ Gehirn: ein Organ, mit dem wir denken, daß wir denken. - Ambrose Bierce
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: So 22.09.02 14:44
Noch einfacher: Setz den Button nach dem Klick auf enabled. Und wenn die Rechnung fertig ist aktivierst du ihn wieder.
|
|
Chatfix
      
Beiträge: 1583
Erhaltene Danke: 10
Win 10, Win 8, Win 7, Win Vista, Win XP
VB.net (VS 2015), MsSQL (T-SQL), HTML, CSS, PHP, MySQL
|
Verfasst: So 22.09.02 14:47
| Zitat: | | ohne jeweils nach dem Drücken den Button zu disablen und nach Abschluss wieder freizugeben |
@ luckie deswegen hab ich das mit der variable gemacht, sonst hätt ich das mit dem disablen auch geschrieben.
_________________ Gehirn: ein Organ, mit dem wir denken, daß wir denken. - Ambrose Bierce
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: So 22.09.02 14:51
Was spricht dagegen? Wenn er so wie so nicht draufklicken soll, warum ihm dann die Möglichkeit geben, bzw. im die Illusion zu geben es wäre möglich?
|
|
Chatfix
      
Beiträge: 1583
Erhaltene Danke: 10
Win 10, Win 8, Win 7, Win Vista, Win XP
VB.net (VS 2015), MsSQL (T-SQL), HTML, CSS, PHP, MySQL
|
Verfasst: So 22.09.02 14:53
mir musst du das nicht sagen, er will es ja so... wer versteht schon einen programmierer *fg*
I love DAU
_________________ Gehirn: ein Organ, mit dem wir denken, daß wir denken. - Ambrose Bierce
|
|
Cashels 
      
Beiträge: 167
|
Verfasst: So 22.09.02 16:51
@Chatfix,
Danke für dein Tip. Aber leider funktionniert dies nicht da dein Code immer nur sequentiell ausgeführt wird. Somit checkst du Var auf true, arbeitest dein Code durch, und setzts anschliessend deine Variabel wieder auf true. Das 2. Clicken auf den Arbeiten wird erst NACH dem Abarbeiten des 1. Clicks durchgeführt. Deine Variabel ist also stets auf true!
Ich habs jetzt mit der enabled/disabled Methode gelöst, was auch prima funktionniert. Ich muss Luckie Recht geben: wenn ich das Drücken verbiete, dann kann das auch ruhig so erscheinen.
Besten Dank an alle,
Gruss,
Tom
|
|
|