Seite 1 von 1

LostFocus-Event von einem gelöschten Gadget?

Verfasst: 12.02.2011 19:30
von STARGÅTE
Tachchen,

ich weiß nicht genau, ob man das als BUG bezeichnen kann, aber wenn man zB ein Fenster geöffnet hat, mit einem StringGadget, welches Aktiv ist und das Fenster dann geschlossen wird, dann kommt nachträglich noch ein LostFocus-Event vom String-Gadget, was aber schon nicht mehr existiert.

Darauf reagieren (lesen des Inhalts oder so) kann ich ja eh nicht mehr.

Fenster schließen und wundern ^^

Code: Alles auswählen

OpenWindow(0, 0, 0, 200, 40, "Background", #PB_Window_Invisible)

OpenWindow(1, 0, 0, 200, 40, "Window", #PB_Window_MinimizeGadget|#PB_Window_ScreenCentered, WindowID(0))
 StringGadget(1, 10, 10, 180, 20, "Laber Laber")
 SetActiveGadget(1)
 
Repeat

 Event = WaitWindowEvent()
 
 Select Event
 
  Case #PB_Event_CloseWindow
   CloseWindow(1)

  Case #PB_Event_Gadget
   If IsGadget(EventGadget()) = 0
    Debug "Event von einem Gadget, was nicht existiert!"
    If EventType() = #PB_EventType_LostFocus
     Debug "LostFocus"
    EndIf
   EndIf
 
 EndSelect

ForEver

Re: LostFocus-Event von einem gelöschten Gadget?

Verfasst: 12.02.2011 21:56
von hjbremer
ein letzter Gruß aus der Hölle :mrgreen:

Re: LostFocus-Event von einem gelöschten Gadget?

Verfasst: 12.02.2011 22:09
von Falko
Zu diesem ähnlichen Problem hatte freak sich hier geäußert :

http://www.purebasic.fr/german/viewtopi ... 83#p284683

Wobei ich die alte Version schöner fand, die aber wohl ein Bug war.


Gruß Falko

Re: LostFocus-Event von einem gelöschten Gadget?

Verfasst: 12.02.2011 23:17
von sharkpeter
@Stargate,

mir glaubt ja keiner. Es gibt da nämlich noch was: Ich mache ein ChildWindow auf, erledige
dort etwas, und wenn ich dann den "x"-Button (für alle: CloseWindow, AltF4) betätige,
kehrt das Programm zum Hauptfenster zurück, soll es zumindest. Aber was passiert dann,
es bleibt das "#PB_Event_CloseWindow" kleben und schließt auch mein Hauptfenster. TOLL!

Und das alles, OBWOHL ICH HINGEHE UND JEDES FENSTEREREIGNIS AUF DAS FENSTER
ABFRAGE, WELCHES ES AUSGELÖST HAT!
Nur existiert das auslösende Fenster schon
gar nicht mehr ... UND WENN DAS KEIN BUG IST(auch das von Falko verlinkte) DANN
WEISS ICH AUCH NICHT.


Gruß Jens

Re: LostFocus-Event von einem gelöschten Gadget?

Verfasst: 12.02.2011 23:27
von ts-soft
Die Events stehen in einem Stapel, wo sie nacheinander abgearbeitet werden. Wenn nach dem schliessen des
Fensters das Eventloop nicht verlassen wird, kommen die Events dort auch noch an, ansonsten verpuffen sie,
bzw. werden von Windows bearbeitet.

PS: Der eine Fall hat mit dem anderen nun mal überhaupt nix zu tun und Bug ist IMHO hier auch keiner.
Aber das hat Jens ja schon von mir erwartet :mrgreen:

Gruß
Thomas

PS: Das Control wird erst bei #WM_NCDESTROY zerstört und bis dahin gibt es noch viele Events, die nicht
bearbeitet werden müssen, bloß weil sie noch ankommen.

Re: LostFocus-Event von einem gelöschten Gadget?

Verfasst: 12.02.2011 23:56
von sharkpeter
@TS,

das ist schon klar das die in einem Stapel stehen, sonst würde das Ganze System ja nicht
funktionieren. Aber wenn ich ein Fenster schließe, mit Abfrage welches Fenster ich schließe,
und das hat ausdrücklich nichts mit dem anderen Topic zu tun, wie kann denn dann der
CloseWindowEvent noch anstehen und mir das Hauptfenster auch noch schließen. Mir scheint,
und das wiederum hat mit dem anderen Beitrag zu tun, als würde alles doppelt abgefragt und
es muß erst ein zusätzlicher Umlauf stattfinden, bis alles wieder da ist wo es sein soll.

Gruß Jens

PS: Thomas, deine Unterschrift finde ich Klasse, also die mit dem Debugger. Die noch härteren
benutzen die Registry :bounce:

Re: LostFocus-Event von einem gelöschten Gadget?

Verfasst: 13.02.2011 10:24
von Nino

Code: Alles auswählen

IsGadget(EventGadget()) = 0
dürfte IMHO eigentlich gar nicht vorkommen.

Grüße, Nino

Re: LostFocus-Event von einem gelöschten Gadget?

Verfasst: 13.02.2011 23:33
von Falko
Ähnliches Problem mit LostFocus besteht hier, was im Jan. gefixt wurde:

http://www.purebasic.fr/english/viewtop ... =4&t=43514

Gruß Falko

Re: LostFocus-Event von einem gelöschten Gadget?

Verfasst: 14.02.2011 00:48
von STARGÅTE
Alles klar, danke für den Link