ich bin Anfänger/Autodidakt mit C++/Qt und stehe nun vor dem Problem, dass ich ein Formularfenster/Widget habe auf dem viele Groupboxes mit noch mehr Checkboxes installiert sind, welches ich vor einer Neueingabe resetten möchte (also alle gecheckten Boxes auf unchecked setzen). In C# war das relativ einfach zu bewerkstelligen z. B. mit:
Code: Alles auswählen
System.Collections.IList panelList = Controls; // alle Controls in Liste zusammenfassen
for (int i = 0; i < panelList.Count; i++)
{
if (panelList[i] is MetroFramework.Controls.MetroPanel) // prüfen, ob Control ein Panel ist
{
MetroFramework.Controls.MetroPanel panel = (MetroFramework.Controls.MetroPanel)panelList[i];
System.Collections.IList controlList = panel.Controls;
for (int n = 0; n < controlList.Count; n++)
{
Control control = (Control)controlList[n];
if (control is MetroFramework.Controls.MetroTextBox) (control as MetroFramework.Controls.MetroTextBox).Text = "";
if (control is RadioButton) (control as RadioButton).Checked = false;
}
}
Code: Alles auswählen
if(ui->CheckBox->isChecked()){
ui->CheckBox->setAutoExclusive(false);
ui->CheckBox->setChecked(false);
ui->CheckBox->setAutoExclusive(true);
}
Also nun zu meiner Frage: Gibt es in C++ ein Konstrukt, dass es möglich macht die Objekte elegant zurückzusetzen?
Evtl. gibt es auch die Möglichkeit das komplette Formular zu reloaden und damit automatisch zurückzusetzen?!?
Schon im Voraus vielen lieben Dank