Autor |
Beitrag |
bockwurst
      
Beiträge: 191
win98 /XP
D1 D5 Prof DE2005PE
|
Verfasst: Do 20.01.05 12:42
Hallo zusammen,
weiß jemend wie ich den Tastaturpuffer leeren/löschen kann.
ich habe ein Prog geschrieben das berechnet etwas. Wenn man während der Berechnung nun irgendwelche Tasten drückt, merkt sich die Windowswarteschleife dies. Nun erscheint mein neues Fenster und wird evtl. gleich wieder geschlossen.
Danke, schon mal im voraus!
Andreas
Zuletzt bearbeitet von bockwurst am Do 20.01.05 12:50, insgesamt 1-mal bearbeitet
|
|
Timosch
      
Beiträge: 1314
Debian Squeeze, Win 7 Prof.
D7 Pers
|
Verfasst: Do 20.01.05 12:50
Delphi-Quelltext 1: 2: 3: 4: 5:
| asm mov ah, 0Ch mov al, 00h int 21h end; |
Das geht aber bestimmt auch einfacher...
_________________ If liberty means anything at all, it means the right to tell people what they do not want to hear. - George Orwell
|
|
bockwurst 
      
Beiträge: 191
win98 /XP
D1 D5 Prof DE2005PE
|
Verfasst: Do 20.01.05 13:20
Da stürtzt mein prog nur ab. Mit Int muß man bei Windows aufpassen.
Gehen tut da wohl: 1Eh mit INT 16 = Bios Tastaturpuffer löschen. Aber bin mir da auch nicht so sicher. Es muß doch von delphi eien Funktion geben, so eine art "Flushbuffer"
In der Hoffnung auf weitere Hilfe.
|
|
toms
      
Beiträge: 1099
Erhaltene Danke: 2
|
Verfasst: Do 20.01.05 15:09
|
|
bockwurst 
      
Beiträge: 191
win98 /XP
D1 D5 Prof DE2005PE
|
Verfasst: Do 20.01.05 15:44
Hallo toms,
die Lösung da sieht nicht schlecht aus.
Nur leider kenne ich folgende Konstanten nicht.
WM_KEYFIRST, WM_KEYLAST,
WM_MOUSEFIRST, WM_MOUSELAST,
wo stehen die, oder durch was muß ich sie ersetzten?
Ich benutzte delphi5 Prof
Danke schon mal
Andreas
|
|
toms
      
Beiträge: 1099
Erhaltene Danke: 2
|
Verfasst: Do 20.01.05 15:55
Delphi-Quelltext
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Do 20.01.05 19:38
Ich programmiere jetzt schon seit ca. 6 Jahren und ich hatte noch nie das Bedürfniss den Tastaturpuffer leeren zu müssen. Wie wäre es, wenn du einfach wärend der Berechnung, die Controlls sperrst, in die man nichts eigeben darf, auf die man nicht klicken darf?
|
|
bockwurst 
      
Beiträge: 191
win98 /XP
D1 D5 Prof DE2005PE
|
Verfasst: Fr 21.01.05 09:23
Hallo Toms,
Hallo Luckie
vielen dank für eure Antworten. Mit dem Puffer leeren scheint wohl zu funktionieren. Die "Tastatur und Maussperren" wollte/konnte ich vielleivht auch nicht sperren, weil die Anwendung mit vielen verschiedenen Prozessen ablief. Wollte man "umschalten" auch zu anderen Programme, war mir dies, die einfache Lösung. Bei einer Berechnung von ca.30min ist das eben nicht so einfach, den ganzen computer totzulegen. Ich selbst programmiere schon mehr als 20Jahre (ob wohl ich erst/schon 32 bin). Ich habe aus DOS-Zeiten meinen Puffer immer leeren müssen. Bei Windows ist das halt alles nicht so einfach.
Aber schauen wir mal!
Vielen Dank jedenfalls.
Andreas Orban
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Fr 21.01.05 14:29
Von Maus sperren habe ich nie was geschrieben. Du sollst doch nur zum Beispeil die Schaltfläche deaktivieren, die die Berechnung startet und wärend eine lauft alles durcheinander bringen würde, wenn man noch mals draufklick, während schon eine läuft.
|
|