у меня есть QstackedWidget, и я добавляю QHboxLayout и QVBoxLayout к нему, в моем вертикальном макете я добавляю 3 QCheckBox, и я добавляю этот макет с двумя разделителями для левой и правой стороны, затем я помещаю этот новый макет с двумя разделителями для верха и внизу в горизонтальном расположении, теперь я хочу проверить, проверены ли эти QCheckBoxes или нет, но я не знаю, как это проверить.
вот мой код:
QVBoxLayout *center = new QVBoxLayout();
QVBoxLayout *main = new QVBoxLayout();
QHBoxLayout *middle = new QHBoxLayout();
QSpacerItem *topspacer = new QSpacerItem(14, 24, QSizePolicy::Fixed, QSizePolicy::Fixed);
QSpacerItem *buttom = new QSpacerItem(4, 4, QSizePolicy::Expanding, QSizePolicy::Expanding);
QSpacerItem *left = new QSpacerItem(4, 4, QSizePolicy::Expanding, QSizePolicy::Expanding);
QSpacerItem *right = new QSpacerItem(4, 4, QSizePolicy::Expanding, QSizePolicy::Expanding);
middle->addItem(left);
middle->addLayout(center);
middle->addItem(right);
center->addWidget(checkBoxEvent(QString::fromStdString("Analyze events")));
center->addWidget(checkBoxEvent(QString::fromStdString("Edit Tracks")));
center->addWidget(checkBoxEvent(QString::fromStdString("Analyze players")));
main->addItem(topspacer);
main->addLayout(middle);
main->addItem(buttom);
Qwidget *m_page = new Qwidget();
m_page->setLayout(main);
m_stackedWidget->addWidget(m_page);
я пробовал этот код для доступа к элементам, но я получаю ошибку сегментации:
for(int i = 0; i < m_stackedWidget->widget(2)->layout()->count(); i++)
if(dynamic_cast<QPushButton*>( m_stackedWidget->widget(2)->layout()->itemAt(i) )->isChecked())
эти элементы добавляются в m_stackedWidget [1]
Задача ещё не решена.
Других решений пока нет …