示例#1
0
YesNoDialog::YesNoDialog(QWidget *parent, const QString &caption, const QString &text) :
        QDialog(parent)
{
    setModal(true);
    setAttribute(Qt::WA_DeleteOnClose);
    setWindowTitle(caption);

    QBoxLayout *vb = new QVBoxLayout(this);
    vb->setMargin(11);
    vb->setSpacing(6);
	QLabel *lblQuestion = new QLabel(text, this);
	vb->addWidget(lblQuestion);
    QHBoxLayout *hb = new QHBoxLayout(this);
    hb->setSpacing(6);
	QSpacerItem *spacer1 = new QSpacerItem(1, 1, QSizePolicy::Expanding, 
					       QSizePolicy::Minimum );
	hb->addItem(spacer1);
	pbYes = new QPushButton(tr("&Yes"), this);
	hb->addWidget(pbYes);
	pbNo = new QPushButton(tr("&No"), this);
	hb->addWidget(pbNo);
	QSpacerItem *spacer2 = new QSpacerItem(1, 1, QSizePolicy::Expanding, 
					       QSizePolicy::Minimum );
	hb->addItem(spacer2);
	vb->addLayout(hb);
	
	connect(pbYes, SIGNAL(clicked()), this, SLOT(actionYes()));
	connect(pbNo, SIGNAL(clicked()), this, SLOT(actionNo()));
}
示例#2
0
YesNoDialog::YesNoDialog(QWidget *parent, const QString &caption, const QString &text) :
		QDialog(parent, NULL, true, Qt::WDestructiveClose)
{
	setCaption(caption);
	QBoxLayout *vb = new QVBoxLayout(this, 11, 6);
	QLabel *lblQuestion = new QLabel(text, this);
	vb->addWidget(lblQuestion);
	QHBoxLayout *hb = new QHBoxLayout(NULL, 0, 6);
	QSpacerItem *spacer1 = new QSpacerItem(1, 1, QSizePolicy::Expanding, 
					       QSizePolicy::Minimum );
	hb->addItem(spacer1);
	pbYes = new QPushButton(tr("&Yes"), this);
	hb->addWidget(pbYes);
	pbNo = new QPushButton(tr("&No"), this);
	hb->addWidget(pbNo);
	QSpacerItem *spacer2 = new QSpacerItem(1, 1, QSizePolicy::Expanding, 
					       QSizePolicy::Minimum );
	hb->addItem(spacer2);
	vb->addLayout(hb);
	
	connect(pbYes, SIGNAL(clicked()), this, SLOT(actionYes()));
	connect(pbNo, SIGNAL(clicked()), this, SLOT(actionNo()));
}