Fenster bei Bedarf nur einmal öffnen

Alles rund um die Programmierung mit Qt
Antworten
toem
Beiträge: 124
Registriert: 17. März 2009 14:01

Fenster bei Bedarf nur einmal öffnen

Beitrag von toem »

Hallo,

ich definiere in meiner .h via

Code: Alles auswählen

ShowDocument *sd;
ein leeres Gerüst und fülle das später via

Code: Alles auswählen

sd = new ShowDocument();
sd->show();
Frage hierzu. Ich möchte für einige Dokumente immer ein neues Fenster öffnen, für andere den Inhalt aktualisieren. (kein MDI)

Wie kann ich ggf. abfragen, ob sd schon geöffnet ist und angezeigt wird?
Bislang stosse ich immer nur auf Debugger Fehler.

Ein einfaches

Code: Alles auswählen

if (!sd)
funktioniert ja leider nicht.
AuE
Beiträge: 918
Registriert: 5. August 2008 10:58

Beitrag von AuE »

kommt auf deine Einstellungen an. Bei Qt_WA_deleteOnclose sollte es nach dem schließen keinen gültigen Ptr mehr geben.

Ansonsten checken via isHidden?
Zuletzt geändert von AuE am 14. Dezember 2009 14:15, insgesamt 1-mal geändert.
phlox81
Beiträge: 97
Registriert: 7. Juli 2009 12:30
Kontaktdaten:

Beitrag von phlox81 »

Ein !sd funktioniert schon, wenn du den Zeiger vorher (im Konstruktor z.b.) auf 0 setzt.
archer
Beiträge: 306
Registriert: 2. Februar 2006 09:56

Beitrag von archer »

Warum soll letzteres nicht gehen?

Kleiner Tip: sd im Konstruktor mit NULL initialisieren.
AuE
Beiträge: 918
Registriert: 5. August 2008 10:58

Beitrag von AuE »

Es geht ihm glaube ich nicht ums erste mal aufrufen sondern wenn man das Wdg mehrfach aufruft....da wird der Ctor nicht mehr durchlaufen!
toem
Beiträge: 124
Registriert: 17. März 2009 14:01

Beitrag von toem »

Danke, war ja echt blöde von mir.
Geht jetzt alles.
Antworten