WaitEvent in Blitz3D
Übersicht

![]() |
JPDBetreff: WaitEvent in Blitz3D |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo zusammen,
wenn ich in Blitz3D das Fenster verschiebe hält mein Programm an. Gibt es eine Möglichkeit (so wie in B+ mit WaitEvent(0) ) dies zu verhindern? Grüße Jan |
||
PacMani |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Schließe mich der Antwortsuche an! ![]() |
||
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Man kann sich seine eigene Bewegungsroutine schreiben. Das hat jedoch keinen Sinn, wenn man weiterhin eine Titelleiste haben möchte. Bei meinem Dreamplayer auch gemacht. Bei diesem wurde der Fensterrahmen entfernt, dann eine Bewegungssteuerung über die rechte Maustaste realisiert.
Blitz3D-Anwendung: Benötigt wird: Zitat: .lib "user32.dll"
dp_GetCursorPos% (lpPoint*) : "GetCursorPos" dp_GetWindowRect% (hwnd%, lpRect*) : "GetWindowRect" dp_GetSystemMetrics% (nIndex%) : "GetSystemMetrics" dp_MoveWindow% (hwnd%, x%, y%, nWidth%, nHeight%, bRepaint%) : "MoveWindow" dp_SetWindowLong% (hwnd%, nIndex%, dwNewLong%) : "SetWindowLongA" Prüfen, ob die Maus sich über dem Blitz3D-Fenster befindet (MOW = True/False): Code: [AUSKLAPPEN] ;MOW-API-Funktionsaufrufe
dp_GetCursorPos MOWMain dp_GetWindowRect AppHWND,MOWRect ;MOW-Variablen-Zuweisung MOWMXA=MOWMX MOWMYA=MOWMY MOWMX=PeekInt(MOWMain,00) MOWMY=PeekInt(MOWMain,04) MOWX1=PeekInt(MOWRect,00) MOWY1=PeekInt(MOWRect,04) MOWX2=PeekInt(MOWRect,08)-MOWX1 MOWY2=PeekInt(MOWRect,12)-MOWY1 ;MOW-Abfrage+Anwendung MOW=RectsOverlap(MOWMX,MOWMY,1,1,MOWX1,MOWY1,MOWX2,MOWY2) Fensterposition ändern: Code: [AUSKLAPPEN] ;Dreamplayer-Position
dp_MoveWindow(AppHWND,WindowX,WindowY,WindowW,WindowH,1) Restliche Variablen EINMALAUSFÜHRUNGEN: Code: [AUSKLAPPEN] ;Desktop-Sachen-Speichern
SystemW=dp_GetSystemMetrics(0) SystemH=dp_GetSystemMetrics(1) WindowW=GraphicsWidth() WindowH=GraphicsHeight() ;Nullpunktverschiebung WindowX=WindowX-WindowW/2 WindowY=WindowY-WindowH/2 ;Fensterrahmen-Unsichtbar-Machen dp_SetWindowLong(AppHWND,-16,$10020000) ;Fenster-Positionieren dp_MoveWindow(AppHWND,WindowX,WindowY,WindowW,WindowH,True) Global AppHWND%=SystemProperty("APPHWND") ;Dreamplayer-Handle |
||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group