QProgressDialog global ?

Alles rund um die Programmierung mit Qt
Antworten
Mati
Beiträge: 66
Registriert: 4. Januar 2006 00:11

QProgressDialog global ?

Beitrag von Mati »

Hallo,

ich habe mehrere Funktionen die alle am QProgressDialog beteiligt sein sollten.

Leider weiß ich nicht wie ich den dialog über mehrere Funktionen hinweg am leben halten soll...
eigentlich muss ich ja den dialog global halten. Damit muss ich doch aber einen Pointer auf dem Heap alloziieren oder? Also mir bleibt nichts anderes übrig als:
im header:

Code: Alles auswählen

QProgressDialog *progress;
und im cpp:

Code: Alles auswählen

//dies geschieht in der ersten funktion damit der pointer
//global bleibt ???
progress = new QProgressDialog(...);
Ja und jetzt einfach in den anderen Funktionen nur über

Code: Alles auswählen

progress->setValue(...) 
den neuen wert setzen???

Das Problem ist das zerstören des Dialogs nach Ablauf. Da es ja ein Heap-Pointer ist und an das Parent gebunden ist - dieses aber Existent bleibt muss ich doch zwangsläufig nach dem fertigen Ablauf ein

Code: Alles auswählen

delete progress; 
aufrufen?

Kann mir jemand helfen und mich an die Wand klatschen wenn ich völlig falsch rangehe?

Danke
Delryn
Beiträge: 70
Registriert: 24. Februar 2006 11:15

Beitrag von Delryn »

Kein schönes Design, aber ja so geht es. Faustregel:

Zu jedem new ein delete, zu jedem new[] ein delete[].
Antworten