2 Fenstern abr nur 1 mit x schließen?
Übersicht
BlitzBasic
BlitzPlus|
|
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
BlitzBasic
BlitzPlus
Powered by phpBB © 2001 - 2006, phpBB Group
