ArkKup
16th November 2012, 23:40
Hi,
I was trying out example about Stacked Layouts from the book "C++ GUI Programming with Qt 4, Second Edition" its Chapter 6.
PreferenceDialog::PreferenceDialog(QWidget *parent)
: QDialog(parent)
{
...
listWidget = new QListWidget;
listWidget->addItem(tr("Appearance"));
listWidget->addItem(tr("Web Browser"));
listWidget->addItem(tr("Mail & News"));
listWidget->addItem(tr("Advanced"));
stackedLayout = new QStackedLayout;
stackedLayout->addWidget(appearancePage);
stackedLayout->addWidget(webBrowserPage);
stackedLayout->addWidget(mailAndNewsPage);
stackedLayout->addWidget(advancedPage);
connect(listWidget, SIGNAL(currentRowChanged(int)),
stackedLayout, SLOT(setCurrentIndex(int)));
...
listWidget->setCurrentRow(0);
}
void MainWindow::configurationOptions()
{
PreferenceDialog *optionsDlg = new PreferenceDialog();
optionsDlg->exec();
delete optionsDlg;
}
The problem is that when I start the example I see ugly flicker on a dialog, hence my question how can this be eliminated ? I have try to use resize to make the dialog bigger by default but that didn't help.
I was trying out example about Stacked Layouts from the book "C++ GUI Programming with Qt 4, Second Edition" its Chapter 6.
PreferenceDialog::PreferenceDialog(QWidget *parent)
: QDialog(parent)
{
...
listWidget = new QListWidget;
listWidget->addItem(tr("Appearance"));
listWidget->addItem(tr("Web Browser"));
listWidget->addItem(tr("Mail & News"));
listWidget->addItem(tr("Advanced"));
stackedLayout = new QStackedLayout;
stackedLayout->addWidget(appearancePage);
stackedLayout->addWidget(webBrowserPage);
stackedLayout->addWidget(mailAndNewsPage);
stackedLayout->addWidget(advancedPage);
connect(listWidget, SIGNAL(currentRowChanged(int)),
stackedLayout, SLOT(setCurrentIndex(int)));
...
listWidget->setCurrentRow(0);
}
void MainWindow::configurationOptions()
{
PreferenceDialog *optionsDlg = new PreferenceDialog();
optionsDlg->exec();
delete optionsDlg;
}
The problem is that when I start the example I see ugly flicker on a dialog, hence my question how can this be eliminated ? I have try to use resize to make the dialog bigger by default but that didn't help.