我有一个QDialog,它有两个lineEdits和一个按钮。当按下按钮时,我希望关闭QDialog,并且我希望lineEdits中的值可供我使用。现在,我有以下几点:
void createDialog()
{
QDialog dialog;
QLineEdit *lineEdit1 = new QLineEdit(&dialog);
QLineEdit *lineEdit2 = new QLineEdit(&dialog);
QPushButton *ok = new QPushButton("OK", &dialog);
QVBoxLayout *vLayout = new QVBoxLayout();
vLayout->addWidget(lineEdit1);
vLayout->addWidget(lineEdit2);
vLayout->addWidget(ok);
dialog.setLayout(vLayout);
connect(ok, SIGNAL(clicked()), this, SLOT(processValues()));
dialog.exec();
}
我想知道如何关闭QDialog并访问processValues()函数中lineEdits的值。 谢谢!
答案 0 :(得分:1)
您应该从QDialog继承并将所有小部件放在那里。 QLineEdits将成为Dialog的成员,它将具有将返回其值的成员函数。
您可以在此处查看示例http://thisthread.blogspot.com/2010/06/qdialog-subclass.html。 在这里http://www.informit.com/articles/article.aspx?p=1405224