Window Callback ???

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
John Doe
Beiträge: 57
Registriert: 02.01.2006 18:08

Window Callback ???

Beitrag von John Doe »

Hallo,
ich möchte mittels windowcallback Tastatureingaben abfangen und dann via serielle Schnittstelle an ein Automatisierungssystem senden.
Dieses sendet danach die empfangenen Zeichen quasi als Echo wieder zurück, welche dann in einem Editorgadget angezeigt werden.
Das heißt, die von mir eingegebenen Zeichen dürfen nicht im Editorgadget bei der Eingabe angezeigt werden.
Das ganze sollte im Prinzip wie ein Terminalprogramm funktionieren.

Hat vielleicht jemand einen Idee, wie ich die Tastatureingaben abfangen könnte ?
Benutzeravatar
uweb
Beiträge: 461
Registriert: 13.07.2005 08:39

Beitrag von uweb »

Ich bin mir nicht ganz sicher ob ich Dein Problem richtig verstanden habe,
aber was wäre wenn Du zwei EditorGadgets verwenden würdest die Du dann nach belieben aktivieren, deaktivieren verstecken und wieder hervorholen kannst.
Ich habe in meinem Thread von heute ein Beispiel dafür :

http/forums.purebasic.com/german/viewtopic.php?t=6834
Benutzeravatar
John Doe
Beiträge: 57
Registriert: 02.01.2006 18:08

Beitrag von John Doe »

vielleicht habe ich mich etwas undeutlich ausgedrückt, ich versuchs nochmal:

ich habe ein Editorfeld und gebe dort Text ein.
der Text soll aber nicht gleich angezeigt werden, sondern über ein windowcallback abgefangen werden, über die serielle Schnittstelle geschickt werden und das über die ser. Schnittstelle empfangene Echo soll
im Editorfeld angezeigt werden.
Benutzeravatar
uweb
Beiträge: 461
Registriert: 13.07.2005 08:39

Beitrag von uweb »

Zum Anzeigen : AddGadgetItem() oder SetGadgetText()

Zum Abfragen der Tastatureingabe (aus dem Code-Archiv):

Code: Alles auswählen

For r=0 To 255 : GetAsyncKeyState_(r) : Next ; Prepare all key buffers for capture. 
Repeat 
  Sleep_(1) 
  If GetAsyncKeyState_(#VK_A)=-32767 ; Check if 'A' was pressed. 
    Debug "'A' was pressed" 
  EndIf 
ForEver 
Wie man verhindert, dass die Message beim EditorGadget ankommt weiss ich auch nicht.
Aber, wenn Dir mein Vorschlag mit 2 EditorGadgets so zu tun als ob (also am Bildschirm kein Uterschied) nicht gefällt habe ich noch eine andere Idee :

Lösche die Eingabe doch gleich wieder mit RemoveGadgetItem() oder ClearGadgetItemList().
.
Benutzeravatar
John Doe
Beiträge: 57
Registriert: 02.01.2006 18:08

Beitrag von John Doe »

Das ist das, was ich wollte, die Möglichkeit, die Tastatur abzufragen
vielen Dank an uweb
Antworten