C++ QT: GUI inklusiv Konsole schließen

T_55

Lieutenant
Registriert
Feb. 2013
Beiträge
638
Hallo,

ich nutze für eine Widget-Anwendung zur seperaten Darstellung/Debug von Werten in der .pro die Zeile "CONFIG += console", so öffnet sich neben dem Widget auch die klassische Konsole die mir Dinge ausgibt, sehr praktisch.

Wenn ich das Widget schließe bleibt die Konsole aber geöffnet, dort steht dann sowas wie "return um das Fenster zu schließen".

Frage: kann man es hinbekommen, dass sich beim Schließen des Widgets auch die Konsole selbstständig schließt und man nicht noch manuell die Konsole schließen muss?

Gruß
 
Hi, also ich würde sagen, dass es aus Qt Creator nicht geht. Siehe Fenstertitel qtcreator_process_stub.exe. Wenn ich direkt die kompilierte Debugversion der Executable öffne und dann schließe, schließt sich die Konsole. Eben getestet. Ansonsten kannst du ja aus deinem Widget über QProcess die cmd öffnen und z.B. im Destruktor wieder schließen. Ansonsten mal in einer Suchmaschine qprocess live output redirection eingeben (falls es zuviel Arbeit ist alle qDebug-Anweisungen "umzuschreiben").
 
  • Gefällt mir
Reaktionen: T_55
Thx, ich hatte einfach nicht beachtet, dass es sich aus QT heraus ganz anders verhält als wenn ich das Programm selbstständig starte. Die Konsole schließt sich ohne QT wie gewollt.
 
Hi, also ich habe noch einmal kurz darüber nachgedacht. Es funktioniert auch aus der von der IDE ausgeführten Version deines Programmes auch - wenn man so vorgeht:

QCloseEvent überschreiben und dann den relevanten Befehl aufrufen. Schließt sich MainWindow so wird dann auch die Konsole geschlossen. Vor fünf Minuten getestet.

C++:
void MainWindow::closeEvent(QCloseEvent *event)
{
    QProcess::execute("taskkill /im qtcreator_process_stub.exe /f");
}
 
  • Gefällt mir
Reaktionen: T_55

Ähnliche Themen

Antworten
12
Aufrufe
15.260
Antworten
14
Aufrufe
39.528
  • Gesperrt
2 3 4
Antworten
69
Aufrufe
13.969
Antworten
1.745
Aufrufe
244.221
Zurück
Oben