Auf QWidget in GridBox zugreifen
Verfasst: 29. August 2009 01:22
Hallo,
ich habe zahlreiche comboBoxes in einem GridLayout angeordnet und versuche jetzt auf einzelne Elemente abhängig von Spalte und Zeile zuzugreifen. Allerdings stoße ich dabei auf Probleme.
Folgendes Beispiel soll mein Problem verdeutlichen:
Es will mir einfach nicht gelingen, den INdex einer comboBox in zu verändern, wenn ich Spalte und Zeile direkt angebe. Offensichtlich wird ein Null-Pointer zurückgegeben, aber ich weiß einfach nicht, was ich falsch mache. Kann mir jemand helfen?
ich habe zahlreiche comboBoxes in einem GridLayout angeordnet und versuche jetzt auf einzelne Elemente abhängig von Spalte und Zeile zuzugreifen. Allerdings stoße ich dabei auf Probleme.
Folgendes Beispiel soll mein Problem verdeutlichen:
Code: Alles auswählen
#include <QApplication>
#include <QGridLayout>
#include <QComboBox>
int main(int argc, char** argv){
QApplication app(argc, argv);
QWidget *win = new QWidget;
QGridLayout *layout = new QGridLayout(win);
for (int i = 0; i < 10; i++){
QComboBox *mybox = new QComboBox;
mybox->addItem("Test");
mybox->addItem("Test2");
layout->addWidget(mybox, i / 2, i % 2);
}
layout->itemAtPosition( 0, 0 )->widget()->findChild<QComboBox *>()->setCurrentIndex(1);
win->show();
return app.exec();
}