BlitzSys bug?

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

Badudel

Betreff: BlitzSys bug?

BeitragDi, Jul 22, 2008 20:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,

wenn ich den Befehl "DLLPostMessage(hWnd,WM_SYSCOMMAND,SC_MINIMIZE,0)" (Minimieren des Fensters) in einer If MouseDown(1) - Entscheidung verwende, dann minimiert sich das Fenster bei mir nicht.

Jaah, ich habe den Include und die dll-Datei im selben Verzeichnis. Jaah, ich habe den Include gemacht.

Außerdem geht der Befehl wie gewohnt, wenn ich es mit einer Tasten-Entscheidung nutze (ich habe also keinen Fehler gemacht).

Hier ein Code-Ausschnitt zur Überprüfung auf eurem Rechner:

Code: [AUSKLAPPEN]
Include "blitzsys.bb"
Global hWnd = DLLFindBlitzRuntimeHwnd("Bitte minimieren!")
While Not KeyHit(1)
If MouseHit(1) Then DLLPostMessage(hWnd,WM_SYSCOMMAND,SC_MINIMIZE,0)
Wend
End


Wenn ich einfah statt MouseHit nen KeyHit reinschreibe gehts. Wenn ich MouseDown schreibe, gehts nicht.



Ist das bei euch auch so oder liegt es an meinem PC?

Gruß Badudel
Wir werden dem Schwein schon schlachten, auch wenn ihm quiekt.
Zum Teufel mit das Grammatik!
  • Zuletzt bearbeitet von Badudel am Di, Jul 22, 2008 21:02, insgesamt einmal bearbeitet
 

Dreamora

BeitragDi, Jul 22, 2008 20:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Könntest du deinen Code posten.
Der da kanns ja offensichtlich nicht sein, der wird nicht mal kompilieren.

Ich nehm an du überprüfst ob hwnd <> 0 ist?
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Badudel

BeitragDi, Jul 22, 2008 20:59
Antworten mit Zitat
Benutzer-Profile anzeigen
ahm der wird kompilieren - ist ein vollständiges programm... du musst natürlich die blitzsys-dateien dazu tun (dh abspeichern und dann dazutun)

gruß

EDIT: hab ne klammer vergesen - reineditiert
Wir werden dem Schwein schon schlachten, auch wenn ihm quiekt.
Zum Teufel mit das Grammatik!
 

ChristianK

BeitragDi, Jul 22, 2008 21:12
Antworten mit Zitat
Benutzer-Profile anzeigen
WM_SYSCOMMAND ist nur für die Benachrichtigung zuständig und gibt an, welche Operation der Benutzer durchführen will. Wenn das Programm sein Fenster selbst minimieren soll, musst du ShowWindow verwenden.

Code: [AUSKLAPPEN]
Global hwnd = SystemProperty( "AppHWND" )

While Not KeyDown( 1 )
   If MouseHit( 1 ) ShowWindow( hwnd, 6 )
Wend

End

Code: [AUSKLAPPEN]
.lib "user32.dll"
ShowWindow%( hwnd%, show% )

Zum Ermitteln des Fensterhandles würde ich immer SystemProperty verwenden, das ist zuverlässiger.
AdvanceLcd
Intel Core 2 Duo 3.2 GHz, 4 GB RAM, GeForce 8800 GTX | MacBook Pro 15,4″ Intel Core 2 Duo 2.4 GHz, 2 GB RAM, GeForce 8600M GT

Badudel

BeitragDi, Jul 22, 2008 21:17
Antworten mit Zitat
Benutzer-Profile anzeigen
OK, thx, das geht auf jeden Fall. Im "example008.bb" steht das Beispiel für DLLPostMessage(hWnd,WM_SYSCOMMAND,SC_MINIMIZE,0) drinnen, da gehts. Aber ShowWindow geht auf jeden Fall, und das ist ja die Hauptsache.

Gruß Badudel
Wir werden dem Schwein schon schlachten, auch wenn ihm quiekt.
Zum Teufel mit das Grammatik!

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group