18 tertiaryColumnCombo->addItem(tr("None"));
19 primaryColumnCombo->setMinimumSize(
20 secondaryColumnCombo->sizeHint());
21 QChar ch = first;
22 while (ch <= last) {
23 primaryColumnCombo->addItem(QString(ch));
24 secondaryColumnCombo->addItem(QString(ch));
25 tertiaryColumnCombo->addItem(QString(ch));
26 ch = ch.unicode() + 1;
27 }
28 }
Конструктор прячет ту часть диалогового окна, где располагаются поля второго и третьего ключей.
Создавать в Qt другой распространенный тип изменяющихся диалоговых окон, многостраничные диалоговые окна, даже еще проще как при ручном кодировании, так и при использовании Qt Designer. Такие диалоговые окна можно строить различными способами:
• можно непосредственно воспользоваться виджетом окно с вкладками QTabWid-get. Здесь сверху окна имеется полоска вкладок, которая находится под управлением стека QStackedWidget;
• можно совместно использовать список QListWidget и стек QStackedWidget, где текущий элемент списка будет определять страницу, показываемую стеком QStackedWidget, обеспечив связь сигнала QListWidget: :currentRowChanged() со слотом QStackedWidget::setCurrentIndex();
• можно виджет древовидной структуры QTreeWidget совместно использовать со стеком QStackedWidget, как в предыдущем случае.
Класс стека QStackedWidget рассматривается в главе 6 («Управление компоновкой»).
<< назад вперед >>