| |
|
|
- page 1 - |
|
Timotheus | Salut,
j'ai folgendes Problem. il y a un Fremdfenster, dises appelez un zweites Programme sur, et übergibt dass Hauptfenster Handle. avec dem zweiten Programme möchter je maintenant qui Tastaturabfrage faire. mais dass la fenêtre wurde oui pas de dem zweiten Programme erzeugt. Dabei ist aussi important dass es wirklich un Programme ist, et ne...aucune Fil.
Kurz: comment zwänge je dass Handle cet la fenêtre dans qui System-Variable %HWnd, avec cela es Profan anerkennt, et je avec %ScanKey qui Abfrage faire peux?
Timo |
|
|
| |
|
|
|
| |
|
- page 1 - |
|
Timotheus | GetAsyncKeyState allez!
cela hätte je pas gedacht, weil dans qui API-Lybrary, sowie dans qui Win32.hlp steht drin, dass qui Rüchgabewert seulement depuis dem letzten Aufruf abgefragt wird. alors si F gedückt wird, et A abgefragt wird, devrait dass F doch eigentlich aus dem grenier verschwinden, ou bien pas?
Timo |
|
|
| |
|
|
|
| allô Timo...
GetAsyncKeyState ist une meiner Lieblingsfunktionen, ist dans presque chaque Programme de mir drin.
trop tenir compte de: Wird chez Abfrage zurückgesetzt. D.h., veux du cet Funktion benutzen, dois du, bevor du vous wirklich verwendest, qui Funktion seulement einmal appel um den peut-être. enthaltenen Wert sur 0 zurückzusetzen - c'est dans qui WIN32.HLP gemeint. Aussi klauen sich deux Programme qui cet Funktion benutzen peut-être. mutuel qui Tastendrücke. |
|
|
| |
|
|
|
| Guten journée.
qui GetKeyState-API reicht föllig et ist viel besser approprié. |
|
|
| |
|
|
|
| allô Werner...
cela veux je dir volontiers croyons - schreib doch la fois une Code avec GetKeyState: je voudrais, qui une Messagebox erscheint, si dans einem anderen Programme qui bouton F12 gedrückt wird - et cela sur allen 32Bit Windows Betribssystemen... cela Problem hatten wir avant un paire Jahren déjà la fois. |
|
|
| |
|
|
|
Timotheus | Salut,
Nochmal je. Passt ungefähr trop dem Thema, c'est pourquoi schreibe je nochmal ici rein. je voudrais maintenant aussi encore qui Messages de einem anderen la fenêtre auslesen peut. Beide Programme habe je selbst gestartet. avec AttachThreadInput scheint es dans Bezug sur Messages pas entier hinzuhauen. Gibt es là une autre Possibilité?
Timo |
|
|
| |
|
|
| |
|
- page 2 - |
|
|
Frank Abbing | Hi,
à Messages fremder la fenêtre lesen (et manipuler) trop peut, dois du cela la fenêtre subclassen. Andreas Miethe hat quelques Beispiele sur seiner page, comment on soetwas pouvoir. Condition ist allerdings XProfan ab Version 8. |
|
|
| |
|
|
|
Timotheus | Welches de den vielen soll je choisir, um mich pas avec dem falschen trop tracasser.
Timo |
|
|
| |
|
|
|
Frank Abbing | Hi,
prends am besten [...] . à qui Message WM_QUERYENDSESSION vois du joli, comment cela allez avec den Messages intercepter. |
|
|
| |
|
|
|
Frank Abbing | Hi,
hab vorhin et avec ca gebastelt: KompilierenMarqueSéparation $H windows.ph
$H messages.ph
DEF HiWord(1) And(&(1)>>16,$FFFF)
DEF LoWord(1) And(&(1),$FFFF)
Declare Ende&,Button&,OldWindowProc&,text$
Proc WindowProc
Parameters Wnd&, Msg&, wParam&, lParam&
If Msg& = ~WM_CLOSE
~PostQuitMessage(0)Programm-Ende
Endif
text$="Controlhandle: "+Str$(wnd&)+" "
~TextOut(%hDC,0,20,addr(text$),len(text$))
text$="Message: "+Str$(msg&)+" "
~TextOut(%hDC,0,40,addr(text$),len(text$))
text$="WParam: "+Str$(wparam&)+" "
~TextOut(%hDC,0,60,addr(text$),len(text$))
text$="LParam: "+Str$(lparam&)+" "
~TextOut(%hDC,0,80,addr(text$),len(text$))
If Msg& = ~WM_LBUTTONDOWN
text$="Linker Knopf wird gerade gedrückt."
~TextOut(%hDC,0,120,addr(text$),len(text$))
ElseIf Msg& = ~WM_LBUTTONUP
text$="Linker Knopf wurde losgelassen. "
~TextOut(%hDC,0,120,addr(text$),len(text$))
ElseIf Msg& = ~WM_RBUTTONDOWN
text$="Rechter Knopf wird gerade gedrückt."
~TextOut(%hDC,0,140,addr(text$),len(text$))
ElseIf Msg& = ~WM_RBUTTONUP
text$="Rechter Knopf wurde losgelassen. "
~TextOut(%hDC,0,140,addr(text$),len(text$))
ElseIf Msg& = ~WM_KEYDOWN
text$="Taste mit Tastencode "+Str$(wparam&)+" wird gerade gedrückt. "
~TextOut(%hDC,0,160,addr(text$),len(text$))
ElseIf Msg& = ~WM_KEYUP
text$=" "
~TextOut(%hDC,0,160,addr(text$),len(text$))
Endif
alle Messages die nicht behandelt wurden an die Original-Prozedur weiterleiten
return ~CallWindowProc(OldWindowProc&,Wnd&, Msg&, WParam&, LParam&)
EndProc
set("FastMode",1)
Cls
Window-Prozedur austauschen und die Original-Prozedur in
OldWindowproc sichern
OldWindowProc& = ~SetWindowLong(%hwnd,~GWL_WNDPROC, ProcAddr(windowProc,4))
WhileNot Ende&
WaitInput
href='./../../funktionsreferenzen/XProfan/endwhile/'>Endwhile
Drück fois le Mausknöpfe et un paire Tasten. Eigentlich devrait avec cela chaque la fenêtre gesubclassed volonté peut. je hoffe, aussi fremde. |
|
|
| |
|
|
|
Timotheus | Oje, Oje. une minute après que je cet Forum sortir de hatte, la hâte du cela geschrieben. Hätte je encore 1 minute gewartet, hätte je Je ne selbst un Demo bricoler doit
mais une Frage encore. Ist es possible, 2 la fenêtre avec qui selben Procédure abzufragen? avec scheint cela nähmlich unmöglich.
Incidemment: qui, ou bien quoi, es du pour deinem change sur qui grüne page qui pouvoir?
Entwerder: Gras Shopper (???)
ou bien: grass Hopper
là 1. wahrscheinlich unwahrscheinlich ist, gibt es 3 Opportunités:
1. un krasser Hopper (?) 2. un gras Hopper 3. es wurde encore une neue Rechtschreibreform eingeführt (am wahrscheinlichsten)
Timo |
|
|
| |
|
|
|
Frank Abbing | Hi.
> Oje, Oje. > une minute après que je cet Forum sortir de > hatte, la hâte du cela geschrieben. Hätte je > encore 1 minute gewartet, hätte je Je ne > selbst un Demo bricoler doit
bof, Übung pouvoir den Meister. et selbst Erarbeitetes bleibt oui doch besser hängen.
> mais une Frage encore. Ist es possible, 2 > la fenêtre avec qui selben Procédure abzufragen? > avec scheint cela nähmlich unmöglich.
alors Je ne. qui Codestelle wird plan de verschiedenen Programmen durchlaufen. c'est chez den Threads aussi pas anders et allez (presque)sans Probleme. Jedenfalls solange, comment du pas sur Variablen zugreifst...
> Incidemment: qui, ou bien quoi, es du pour deinem > change sur qui grüne page qui pouvoir? > > Entwerder: Gras Shopper (???) > > ou bien: grass Hopper > > là 1. wahrscheinlich unwahrscheinlich ist, > gibt es 3 Opportunités: > > 1. un krasser Hopper (?) > 2. un gras Hopper > 3. es wurde encore une neue Rechtschreibreform > eingeführt (am wahrscheinlichsten)
Green Vader naturellement... |
|
|
| |
|
|
|
Michael Wodrich | > Entwerder: Gras Shopper (???) > 2. un gras Hopper
ici versteckte sich wohl simple qui Rechtschreib-Frage: - cela Gras, qui Gräser - ou bien Grass, Pott ou bien Schitt
Pour un Label peut-être une Überlegung wert.
belle Grüße Michael Wodrich
|
|
|
| Programmieren, das spannendste Detektivspiel der Welt. | 07.08.2005 ▲ |
|
|
|