| |
|
|
|
Source wurde al 15.07.2007 de el MMJ-Quellcodesammlung (Dietmar Horn) en el Babyklappe en XProfan.Com abgelegt:
Maustasten y Tastatur abfragen (por Subclassing)
de Franco Abbing
Probiert veces el Maustasten de y drückt una pocos Tasten.
Diese Code basiert en Andreas Miethes Vorarbeit. Auf su XProfan-Página findet ihr
tiefer gehende Subclassing-Sources.
$H Windows.ph
$H Messages.ph
Def Hiword(1) And(&(1)>>16,$Ffff)
Def Loword(1) And(&(1),$Ffff)
Declarar Ende&,Button&,Oldwindowproc&,Texto$
Proc Windowproc
Parámetros Wnd&, Msg&, Wparam&, Lparam&
If Msg& = ~Wm_close
~Postquitmessage(0)Programa-Ende
Endif
Texto$=Controlhandle: +Str$(Wnd&)+
~Textout(%Hdc,0,20,Addr(Texto$),Len(Texto$))
Texto$=Message: +Str$(Msg&)+
~Textout(%Hdc,0,40,Addr(Texto$),Len(Texto$))
Texto$=WParam: +Str$(Wparam&)+
~Textout(%Hdc,0,60,Addr(Texto$),Len(Texto$))
Texto$=LParam: +Str$(Lparam&)+
~Textout(%Hdc,0,80,Addr(Texto$),Len(Texto$))
If Msg& = ~Wm_lbuttondown
Texto$=Linker Knopf se gerade gedrückt.
~Textout(%Hdc,0,120,Addr(Texto$),Len(Texto$))
Elseif Msg& = ~Wm_lbuttonup
Texto$=Linker Knopf wurde losgelassen.
~Textout(%Hdc,0,120,Addr(Texto$),Len(Texto$))
Elseif Msg& = ~Wm_rbuttondown
Texto$=Rechter Knopf se gerade gedrückt.
~Textout(%Hdc,0,140,Addr(Texto$),Len(Texto$))
Elseif Msg& = ~Wm_rbuttonup
Texto$=Rechter Knopf wurde losgelassen.
~Textout(%Hdc,0,140,Addr(Texto$),Len(Texto$))
Elseif Msg& = ~Wm_keydown
Texto$=Taste con Tastencode +Str$(Wparam&)+ se gerade gedrückt.
~Textout(%Hdc,0,160,Addr(Texto$),Len(Texto$))
Elseif Msg& = ~Wm_keyup
Texto$=
~Textout(%Hdc,0,160,Addr(Texto$),Len(Texto$))
Endif
todos Messages el no behandelt fueron a el Original-Procedimiento weiterleiten
Volver ~Callwindowproc(Oldwindowproc&,Wnd&, Msg&, Wparam&, Lparam&)
ENDPROC
Conjunto(FastMode,1)
Cls
Ventana-Procedimiento austauschen y el Original-Procedimiento en
OldWindowproc sichern
Oldwindowproc& = ~Setwindowlong(%Hwnd,~Gwl_wndproc, Procaddr(Windowproc,4))
Sinestar encargado Ende&
Waitinput
Endwhile
|
|
|
| |
|
|