2 Fenstern abr nur 1 mit x schließen?
Übersicht

![]() |
klinBetreff: 2 Fenstern abr nur 1 mit x schließen? |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo Leute,
Was soll ich machen, wenn ich 2 fenstern erstellt habe, aber ich nur 1 mit x schließen will? Aber nur 1!!! Ich habe sogar schon mit Function probiert, aber dann schließt der gar keins -.- Wäre sehr nett auf ne Antwort MFG Klin |
||
![]() |
Eingeproggt |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich hab jetzt grad nicht alles im Kopf, aber so ein pseudo-Code kommt schon zusammen:
Code: [AUSKLAPPEN] If EventID()=$803 Then ;Schliessen FreeGadget ActiveWindow() Endif FreeGadget ist im Prinzip die Antwort. Das entfernt jedes BlitzPlus Objekt (auch Fenster), ohne dass das Programm beendet wird. Edit: keine Garantie aufs "ActiveWindow"! Bei mir spinnt das manchmal, weshalb ich lieber mit den Handles arbeite Code: [AUSKLAPPEN] FreeGadget fenster2 |
||
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9 |
![]() |
D2006Administrator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wie in der Event-Tabelle von Blitzbase zu sehen, gibt das Event WindowClose ($803) in ql:EventSource den Handle des Fensters, bei dem auf X gedrückt wurde, mit. So kannst du einfach nur das Fenster schließen, oder, wenn es z.B. das Hauptfenster war, alles schließen. Wie es dir halt beliebt. | ||
Intel Core i5 2500 | 16 GB DDR3 RAM dualchannel | ATI Radeon HD6870 (1024 MB RAM) | Windows 7 Home Premium
Intel Core 2 Duo 2.4 GHz | 2 GB DDR3 RAM dualchannel | Nvidia GeForce 9400M (256 MB shared RAM) | Mac OS X Snow Leopard Intel Pentium Dual-Core 2.4 GHz | 3 GB DDR2 RAM dualchannel | ATI Radeon HD3850 (1024 MB RAM) | Windows 7 Home Premium Chaos Interactive :: GoBang :: BB-Poker :: ChaosBreaker :: Hexagon :: ChaosRacer 2 |
![]() |
Eingeproggt |
![]() Antworten mit Zitat ![]() |
---|---|---|
Stimmt. Ich sagte ja, ich hab nicht mehr alles im Kopf ![]() |
||
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9 |
schalli |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Code: [AUSKLAPPEN] While Not KeyHit(1) ; Editiert: Ich habe <not> vergessen
WaitEvent() If EventID() = $803 Then Select EventSource() Case window1 : FreeGadget window1 Case window2 : FreeGadget window2 End Select EndIf Wend End |
||
- Zuletzt bearbeitet von schalli am Mo, Jul 09, 2007 10:42, insgesamt einmal bearbeitet
![]() |
klin |
![]() Antworten mit Zitat ![]() |
---|---|---|
WOW schali THX ich habe es zwar noch nicht probiert... aber das sieht doch ganz gut aus
Danke MFG Klin |
||
![]() |
Hip Teen |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hey schalli, wie wärs mit ner Erweiterung, die direkt das aktuelle Fenster löscht? So kann man beliebig Fenster erstellen, braucht aber nicht das Case dauernd zu erweitern.
Code: [AUSKLAPPEN] While Not KeyHit(1) ; Editiert: Ich habe <not> vergessen
WaitEvent() If EventID() = $803 Then FreeGadget EventSource() EndIf Wend End |
||
Spruch der Woche: "Ahh, ein neues Gesicht?!" - "Nein, das hab ich schon länger" |
schalli |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
@Hip Teen
Gute Idee! Aber mal was anderes. Ich mach meistens so, Code: [AUSKLAPPEN] DisableGadget window
HideGadget window weil ich Fenster meistens noch brauche. Dann mach ich sie mit Code: [AUSKLAPPEN] EnableGadget window
ShowGadget window wieder sichtbar. |
||
![]() |
Hip Teen |
![]() Antworten mit Zitat ![]() |
---|---|---|
Jop, du hast recht, FreeGadget ist eigentlich komisch immer anzuwenden. Darauf hab ich gar nicht geachtet.
Aber du brauchst das Fenster dann nicht disablen/enablen, einfach Hide reicht da. |
||
Spruch der Woche: "Ahh, ein neues Gesicht?!" - "Nein, das hab ich schon länger" |
![]() |
klin |
![]() Antworten mit Zitat ![]() |
---|---|---|
Danke Hip Teen ! Das hatt super funktioniert ![]() |
||
schalli |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Äh, das mit dem Disable/Enable habe ich mir in den B+Samples
abgeguckt Rob\Blitzalarm |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group