[MaxGui] Aktualisierung der Events während WindowResize
Übersicht

Gray FoxBetreff: [MaxGui] Aktualisierung der Events während WindowResize |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Guten Abend,
vielleicht hat jemand diese Frage schon gestellt, aber ich habe bisher keine Antwort gefunden: Wenn ich das Fenster in der Größe verändere (z.B. mit der Maus an einer Ecke des Fensters ziehen), werden während des Verändern keine Events ausgeführt, wodurch auch erst nach dem Beenden des Vorgangs, die Objekte wie z.B. Canvas usw. angepasst werden. Gibt es eine Möglichkeit, während des Verändern des Fensters, Events abzufragen bzw. auf das Verändern zu reagieren? EDIT: Aktueller MaxGUI-Demo-Code BlitzMax: [AUSKLAPPEN]
|
||
![]() |
HolzchopfMeisterpacker |
![]() Antworten mit Zitat ![]() |
---|---|---|
Die Möglichkeit besteht, mittels eines Event-Hooks. Das sieht dann zum Beispiel so aus:
BlitzMax: [AUSKLAPPEN] AddHook(EmitEventHook, _Hook) Wobei _Hook der Name der Funktion ist, die den Event bearbeiten soll, hier: BlitzMax: [AUSKLAPPEN] ' Hook-Funktion, wird beim Auslösen eines Events (durch Windows) aufgerufen In die Update-Funktion packst du jetzt einfach alles rein, was das Event-Handling betrifft. mfG Holzchopf |
||
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BY ♫ BinaryBorn - Yogurt ♫ (31.10.2018) Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm |
Gray Fox |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich bedanke mich erstmal. ![]() Wann wird denn die Funktion _hook aufgerufen? Jedes Mal, wenn sich das Fenster verändert? |
||
- Zuletzt bearbeitet von Gray Fox am Mi, Jun 19, 2013 21:31, insgesamt 2-mal bearbeitet
![]() |
HolzchopfMeisterpacker |
![]() Antworten mit Zitat ![]() |
---|---|---|
Dank EmitEventHook immer dann, wenn das Betriebssystem einen Event an die Applikation schickt. | ||
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BY ♫ BinaryBorn - Yogurt ♫ (31.10.2018) Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm |
Gray Fox |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Holzchopf hat Folgendes geschrieben: Dank EmitEventHook immer dann, wenn das Betriebssystem einen Event an die Applikation schickt.
Also kann ich quasi jedes Event über diese Methode abfragen? EDIT: Ist es auch möglich, das Fenster so zu erstellen, dass der User die Größe des Fensters nicht verändern kann, u.a. den Maximieren-Button ausgrauen, aber gleichzeitig den Minimieren-Button aktiv lassen? Oder läuft es darauf hinweis, dass ich ein rahmenloses Fenster erstellen und die zwei Button mit eigenen Grafiken simulieren muss? |
||
![]() |
HolzchopfMeisterpacker |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn du bei CreateWindow die Flags selber angibst, geht das sehr wohl. Gib für den style-Parameter einfach BlitzMax: [AUSKLAPPEN] WINDOW_TITLEBAR | WINDOW_MENU | WINDOW_STATUSan |
||
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BY ♫ BinaryBorn - Yogurt ♫ (31.10.2018) Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm |
Gray Fox |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Danke ![]() Aber leider fehlt der Minimieren-Button. |
||
Gray Fox |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich habe noch ein Problem, für das ich jetzt keinen eigenen Thread aufmachen wollte.
Wenn ich die Fenstergröße manipuliere, habe ich das Phänomen, dass sich die Elemente auf dem Fenster verschieben. Das heißt, z.B. ein Panel mit x=0,y=0 verschiebt sich in die Mitte des Fensters. Wie kann ich dem entgegenwirken? |
||
![]() |
HolzchopfMeisterpacker |
![]() Antworten mit Zitat ![]() |
---|---|---|
Mit SetGadgetLayout![]() |
||
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BY ♫ BinaryBorn - Yogurt ♫ (31.10.2018) Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm |
Gray Fox |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Holzchopf hat Folgendes geschrieben: Mit SetGadgetLayout
![]() Ich hatte es zufällig eben selbst gefunden, aber danke für die schnelle Antwort ![]() Ich muss schon sagen, dass ganze "Layouten" erinnert mich schon irgendwie etwas an Visual Basic, falls man dort Elemente dynamisch erzeugt. |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group