| |
|
|
|
Source wurde am 15.07.2007 aus der MMJ-Quellcodesammlung (Dietmar Horn) in die Babyklappe auf XProfan.Com abgelegt:
Haptfenster: verschiebbares Fenster mit CheckBox
def ReleaseCapture(0) !USER32,ReleaseCapture
def RoundRectRgn(6) !GDI32,CreateRoundRectRgn
def SetWindowRgn(3) !USER32,SetWindowRgn
Declare ende%,Fenstert$,Ende&,CB&,Txt$,hFont%,Text$
Windowstyle 112
window 200,200 - 583,397
loadbmp _ground.bmp ,0,0;0** Pfad anpassen
SetWindowRgn(%hwnd, RoundRectRgn(0,0,width(%hwnd),height(%hwnd),18,18), 1)
Proc Controls
Fenstert$ = Hier kommt der Fenstertietel hin
TextColor RGB($FF, $00, $00),-1** Blauer Text
USEFONT Arial,22,0,1,1,0** Schriftart
Drawtext 140,15,Fenstert$
hFont% = @Create(Font,MS Sans Serif,13,0,0,0,0)** Schriftart
Ende&=CREATE(BUTTON,%HWND,Ende,450,350,90,22)
SetFont Ende&,hFont%** Schriftart für Button
Text$ = Ich bin der Checkbox Text
CB&= CREATE(Checkbox,%HWND,,30,100,12,12)
TextColor RGB($00,$00,$FF),-1** Blauer Text
USEFONT MS Sans Serif,13,0,0,0,0** Schriftart
Drawtext 50,100,Text$
Endproc
Controls
** Hauptschleife
SETFOCUS(%HWND)
WHILENOT ENDE%
WAITINPUT
If %KEY=2
ENDE%= 1
ELSEIF %KEY=4
ElseIf Equ(%message,$201) WM_LButtonDown
UseCursor 5
SendMessage(%hwnd,$112,$F012,0)
$112: WM_SYSCOMMAND
$F012: Undokumentierter Wert: ist besser als $0F010 (SC_MOVE)
ReleaseCapture() funktioniert auch ohne, ist aber besser so
UseCursor 0
ElseIf Equ(%message,$204) WM_RButtonDown
Let ende%=1
ELSEIF GETFOCUS(Ende&)BUTTON
ENDE%=1
EndIf
Wend
End
|
|
|
| |
|
|