DockWidget schliesen und CheckBox->setChecked(false)

Verschiedenes zu Qt
Antworten
AndiLatte
Beiträge: 104
Registriert: 13. November 2007 13:39

DockWidget schliesen und CheckBox->setChecked(false)

Beitrag von AndiLatte »

Hallo,

mit einer CheckBox öffne/schließe ich DockWidget. Funzt
Wie muss ich das die checkBox mit dem DockWidget connecten, damit die CheckBox auf false gesetzt wird, wenn ich das DockWidget über das "x" (oben rechts) schließe.

Der angefügte Code führt es leider nicht aus.

Code: Alles auswählen

.....
connect(dock, SIGNAL(destroyed(QObject*)), this, SLOT(test()));
....
}

void MainWindow::test()
CheckBox->setChecked(false);
}
Mani99
Beiträge: 244
Registriert: 15. April 2009 10:46
Wohnort: München

Beitrag von Mani99 »

Ich würde eher das signal

Code: Alles auswählen

visibilityChanged(bool)
verwenden (siehe doku zu dockwidget).

Code: Alles auswählen

.....
connect(dock, SIGNAL(visibilityChanged(bool)), this, SLOT(test(bool)));
....
}

void MainWindow::test(bool state)
CheckBox->setChecked(state);
} 
N¤X
Beiträge: 77
Registriert: 21. September 2009 12:24

Beitrag von N¤X »

Ich wollte mir sowas auch mal selbst basteln, bis ich irgendwann bemerkt hab, dass es sowas in der Art schon gibt.
QAction * QDockWidget::toggleViewAction() gibt dir nen Action zurück der genau dann gechecked ist, wenn dein Dockwidget sichtbar ist. Den Action kannst du direkt in ein Menü einbinden oder bestimmt auch irgendwie mit einer Checkbox oder einem ActionButton verbinden ;)
mfg N¤X
Antworten