| |
|
|
GDL | Salut,
ist es possible, dass sich un so erzeugtes la fenêtre
ofenster&=create(window,%hwnd,Oberflächengestaltung,0,0,%maxx,%maxy)
genauso verhält comment un %hwnd,quasi un 2tes Hauptfenster.
salut Georg |
|
|
| |
|
|
|
Nico Madysa | Soweit je sais, oui, là es oui avec Fenêtre Style einstellen peux. seulement qui Système comment %WinLeft, %WinTop, %cyCaption marcher chez ofenster& naturellement pas. |
|
|
| |
|
|
|
GDL | allô Nico,
je probierte déjà presque alle Windowstyles, mais avec rien aller %mousekey, %mousex ,%mousey et qui inc mouseouver d'ici.
salut Georg |
|
|
| |
|
|
|
Nico Madysa | Hä??? cela find je maintenant überraschend, dass qui Systemvaiablen seulement vom Hauptfenster gesetzt volonté. maintenant ist ici mais quelqu'un une Erklärung schuldig! |
|
|
| |
|
|
|
| [quote-part:0e8477876a=GDL]allô Nico,
je probierte déjà presque alle Windowstyles, mais avec rien aller %mousekey, %mousex ,%mousey et qui inc mouseouver d'ici.
salut Georg[/quote-part:0e8477876a] allô Georg...
Pour cette gibts qui APIs GetCursorPos et ScreenToClient.
Salut
Andreas |
|
|
| |
|
|
|
GDL | allô Andreas,
je bekomme es sur einem Unterfenster pas hin. sur %hwnd klappts mais einwandfrei. KompilierenMarqueSéparationDef PtInRect(3) !"USER32","PtInRect"
Proc CheckMouse
Parameters hw&,x%,y%,lang&[onummer&],breit&[onummer&]
Dim rect#,16
Dim rectpt#,8
Long rect#,0=x%
Long rect#,4=y%
Long rect#,8=lang&[onummer&]
Long rect#,12=breit&[onummer&]
GetCursorPos(rectpt#)
ScreenToClient(hw&,rectpt#)
If Neq(PtInRect(rect#,Long(rectpt#,0),Long(rectpt#,4)),0)
result%=1
EndIf
Dispose rect#
Dispose rectpt#
ENDPROC
salut Georg |
|
|
| |
|
|
|
| allô Georg...
...ist encore pas entier parfait... KompilierenMarqueSéparationDef @GetCursorPos(1) !"USER32","GetCursorPos"
Def @ScreenToClient(2) !"USER32","ScreenToClient"
Def @Ptinrect(3) !"USER32","PtInRect"
Def @WaitMessage(0) !"USER32","WaitMessage"
Declare Rect#,Rectpt#,Dialog&,Message#
Windowstyle 31
LET Dialog&=@CreateWindow(%Desktop,"Mausklick auf Dialog",30,30,300,300)
Usecursor 0
While %Menuitem<>-2
@WaitMessage()
Startpaint Dialog&
Rectangle 30,30-60,60
Endpaint
IF @Checkmouse(Dialog&,30,30,60,60)=1
IF %Message=514
@messagebox("Mit linker Maustaste ins schwarze getroffen!","Treffer!",64)
endif
endif
Usecursor 0
wend
Proc Checkmouse
Parameters Hw&,X%,Y%,Lang&,Breit&
Declare Result&
Dim Rect#,16
Dim Rectpt#,8
Long Rect#,0=X%
Long Rect#,4=Y%
Long Rect#,8=Lang&
Long Rect#,12=Breit&
@Getcursorpos(Rectpt#)
@Screentoclient(Hw&,Rectpt#)
LET Result&=@Ptinrect(Rect#,@long(Rectpt#,0),@long(Rectpt#,4))
Dispose Rect#
Dispose Rectpt#
Return Result&
ENDPROC
|
|
|
| |
|
|
|
GDL | @Andreasanke.
mais erkläre mir s'il te plaît pourquoi on sur einem Dialogue avec les waitinput pas weiterkommt.ou bien sollte on waitinput seulement dans Ausnahmefällen nutzen?
salut Georg |
|
|
| |
|
|
|
| [quote-part:10c8e47fce=GDL]mais erkläre mir s'il te plaît pourquoi on sur einem Dialogue avec les waitinput pas weiterkommt.[/quote-part:10c8e47fce] ...à dem liegen, quoi Waitinput près de dem Aufrufen qui API MsgWaitForMultipleObjects encore so alles tut - peux dir wohl seulement Roland répondre.
Salut
Andreas |
|
|
| |
|
|
|
GDL | @ Andreas,
klappt wunderbar pour Einklickabfrage.Pour ständige Abfrage nehm je comment bereits früher Schonmal gehabt.
@Getasynckeystate(2)<>0.
là @Getasynckeystate(2)<>0 avec waitinput pas allez et je aussi Buttons abfragen voudrais verwendete je
settimer 1 waitinput killtimer
Verstehe zwar pas pourquoi es ensuite allez, mais le principal und dir.
salut Georg |
|
|
| |
|
|
|
Ralph Theobald | allô ,
peux mir quelqu'un expliquer, comment son rausgefunden avez, qui qui Api Funktion PTINRECT trois paramètre hat.
Thomas Bois hat dans Prffellow ( Dlgcheckarea) une ähnlichen Code benutzt. dans qui Win32 et im SDK steht PTinRect avec deux Parametern: 1. Struktur : Rechteckkoordinaten la fenêtre 2. Struktur: Mauskoordinaten ou bien habe je quoi übersehen ?
Salut Ralph |
|
|
| |
|
|
|
| |
|
| |
|
|