| |
|
|
- page 1 - |
|
Julian Schmidt | Salut, je serait volontiers erfassen si dedans eines certain Bereichs eines tête-, ou bien Dialogfensters une à gauche,- à droite-, Doppel(à gauche)klick gemacht wurde. je sais cela es etwa pour à gauche et Droit qui Messages WM_LButtonDown, WM_RButtonDown gibt. seulement comment ermittle je une Double-cliquez sur dedans eines certain Bereichs? KompilierenMarqueSéparationDef LinksImBereich(4) (%message=$201) and (%MouseX>@&(1)) and (%MouseX<@&(3)) and (%MouseY>@&(2)) and (%MouseY<@&(4))
Def RechtsImBereich(4) (%message=$204) and (%MouseX>@&(1)) and (%MouseX<@&(3)) and (%MouseY>@&(2)) and (%MouseY<@&(4))
Windowstyle 24
cls
UseBrush 7,RGB(153,153,153)
Rectangle 50,50 - (width(%hwnd)-50),(height(%hwnd)-50)
While 1
Waitinput
If LinksImBereich(50,50,width(%hwnd)-50,height(%hwnd)-50)'Links im Innen-Rechteck = Verschieben
UseCursor 5
SendMessage(%hwnd,$112,$F012,0)
External("USER32","ReleaseCapture")
UseCursor 0
Elseif RechtsImBereich(50,50,width(%hwnd)-50,height(%hwnd)-50)=0'Rechts im Außen-Rechteck = Ende
break
EndIf
Endwhile
LG
Julian57 |
|
|
| |
|
|
|
« cette Beitrag wurde comme Solution gekennzeichnet. » |
|
Detlef Jagolski | et so avec SubClassing! KompilierenMarqueSéparation $P+
SetErrorLevel 0
$H WINDOWS.PH
$H MESSAGES.PH
$H STRUCTS.PH
STRUCT TRect = ~Rect
STRUCT TPoint = ~Point
Declare appexit%
Declare Point#
Declare Rect#
Declare Punkt&
Dim Point#,TPoint
Dim Rect#,TRect
SubClassProc
If SubClassMessage(%hwnd, ~WM_LBUTTONDBLCLK)
Point#.X& = LOWORD(&sLParam)
Point#.Y& = HIWORD(&sLParam)
~SetRect(Rect#,70,70,200,200)
Case ~PtInRect(Rect#,Point#.X&,Point#.Y&) <> 0: Print "Doppelklick Links"
ElseIf SubClassMessage(%hwnd, ~WM_RBUTTONDBLCLK)
Point#.X& = LOWORD(&sLParam)
Point#.Y& = HIWORD(&sLParam)
~SetRect(Rect#,70,70,200,200)
Case ~PtInRect(Rect#,Point#.X&,Point#.Y&) <> 0: Print "Doppelklick Rechts"
EndIf
Set("WinProc",1)
EndProc
SetTrueColor 1
WindowStyle $003F
WindowTitle "DesignForm"
Window %maxX + 5,114 - 498,415
Cls ~GetSysColor(15)
~SetClassLong(%hwnd,~GCL_STYLE,(~GetClassLong(%hwnd, ~GCL_STYLE) + ~CS_DBLCLKS))
Rectangle 70,70 - 200,200
UseFont "MS Sans Serif",13,0,0,0,0
SetDialogFont 1
SubClass %hwnd,1
SetWindowPos %hwnd = 207,114 - 498,415;0
WhileNot appexit%
WaitInput
If %key = 2
appexit%=1
ElseIf %key = 4
' Fenstergröße
ElseIf %key = 5
' Hilfe
EndIf
Wend
SubClass %hwnd,0
Dispose Point#
'./../../function-references/XProfan/dispose/'>Dispose Rect#
|
|
|
| XProfan X4, PRFellow, Profan2Cpp - Version 2.0c-pre5, Windows 11 | 25.09.2011 ▲ |
|
|
|
|
|
Detlef Jagolski | Aus qui API Aider!
WM_NCLBUTTONDBLCLK WM_MBUTTONDBLCLK WM_RBUTTONDBLCLK WM_LBUTTONDBLCLK |
|
|
| XProfan X4, PRFellow, Profan2Cpp - Version 2.0c-pre5, Windows 11 | 24.09.2011 ▲ |
|
|
|
|
Julian Schmidt | |
|
| |
|
|
|
| peux z.B. wm_lButtonDblClk comme UserMessage festlegen... |
|
|
| |
|
|
|
Julian Schmidt | |
|
| |
|
|
|
| Fenêtre Style 512 ou bien SubClassProc... |
|
|
| |
|
|
|
Julian Schmidt | |
|
|
|
Dieter Zornow | |
|
| Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2 | 25.09.2011 ▲ |
|
|
|
|
Detlef Jagolski | et so avec SubClassing! KompilierenMarqueSéparation $P+
SetErrorLevel 0
$H WINDOWS.PH
$H MESSAGES.PH
$H STRUCTS.PH
STRUCT TRect = ~Rect
STRUCT TPoint = ~Point
Declare appexit%
Declare Point#
Declare Rect#
Declare Punkt&
Dim Point#,TPoint
Dim Rect#,TRect
SubClassProc
If SubClassMessage(%hwnd, ~WM_LBUTTONDBLCLK)
Point#.X& = LOWORD(&sLParam)
Point#.Y& = HIWORD(&sLParam)
~SetRect(Rect#,70,70,200,200)
Case ~PtInRect(Rect#,Point#.X&,Point#.Y&) <> 0: Print "Doppelklick Links"
ElseIf SubClassMessage(%hwnd, ~WM_RBUTTONDBLCLK)
Point#.X& = LOWORD(&sLParam)
Point#.Y& = HIWORD(&sLParam)
~SetRect(Rect#,70,70,200,200)
Case ~PtInRect(Rect#,Point#.X&,Point#.Y&) <> 0: Print "Doppelklick Rechts"
EndIf
Set("WinProc",1)
EndProc
SetTrueColor 1
WindowStyle $003F
WindowTitle "DesignForm"
Window %maxX + 5,114 - 498,415
Cls ~GetSysColor(15)
~SetClassLong(%hwnd,~GCL_STYLE,(~GetClassLong(%hwnd, ~GCL_STYLE) + ~CS_DBLCLKS))
Rectangle 70,70 - 200,200
UseFont "MS Sans Serif",13,0,0,0,0
SetDialogFont 1
SubClass %hwnd,1
SetWindowPos %hwnd = 207,114 - 498,415;0
WhileNot appexit%
WaitInput
If %key = 2
appexit%=1
ElseIf %key = 4
' Fenstergröße
ElseIf %key = 5
' Hilfe
EndIf
Wend
SubClass %hwnd,0
Dispose Point#
'./../../function-references/XProfan/dispose/'>Dispose Rect#
|
|
|
| XProfan X4, PRFellow, Profan2Cpp - Version 2.0c-pre5, Windows 11 | 25.09.2011 ▲ |
|
|
|
|
Julian Schmidt | Ok, qui beiden Source marcher super! Besonders qui variante de Detlef |
|
|
| |
|
|
|
| iF hats doch geschrieben...Fenêtre Style 512 ou bien SubClassProc...
puis écris Du Funktioniert mais quand même pas dans einem Beispiel quoi weder winstyle 512 ou bien qui Proc utilise.
Soll on sich schwer à tête saisir. |
|
|
| |
|
|
|
Julian Schmidt | Unbenannt (25.09.11)
iF hats doch geschrieben...Fenêtre Style 512 ou bien SubClassProc... puis écris Du Funktioniert mais quand même pas dans einem Beispiel quoi weder winstyle 512 ou bien qui Proc utilise. Soll on sich schwer à tête saisir.
wohin ist dans dem Beispiel ne...aucune SubClassProc?
Julian57 (25.09.11)
|
|
|
| |
|
|