假设已经利用QT设计师设计了gotocelldialog.ui,将要生成的头文件名称为ui_hello.h(规则的头文件应该命名为ui_gotocelldialog.h,这里截图中是乱写的)
然后再在开始菜单中找到“Qt4.8.7 Command Prompt”,按照下图进行输入即可:
虚析构函数没有显式声明。在Dialog头文件中添加:
virtual Dialog::~Dialog()
试试。
我不确定产生这个错误的具体原因。
不懂你说的自己做dialog是什么意思。但是要完成你说的功能,用QDialog就行。比如你的get()函数中(大致方法)
MyWidget::get()
{
QDialog *temp_dialog = new QDialog(this) //get()函数中的临时dialog,get函数结束时释放内存
QLineEdit *context = new QLineEdit(temp_dialog)
QPushButton *ok_button = new QPushButton("OK",temp_dialog)
QPushButton *cancel_button = new QPushButton("Cancel",temp_dialog)
///排版
QHBoxLayout *layout= new QHBoxLayout
……
temp_dialog->setLayout(layout)
////按钮事件
connect(ok_button, SIGNAL(clicked()), temp_dialog, SLOT(accept()))
connect(cancel_button, SIGNAL(clicked()), temp_dialog, SLOT(reject()))
//然后执行temp_dialog,界面上就是你自己排版的临时dialog了
if(temp_dialog->exec() == QDialog::Accepted) //确定。响应Enter和ok_button
{
//这里可以取得dialog中各控件的属性,比如QLineEdit:
QString str = context->text() //如果希望str能用于其他函数中,就定义str是成员变量。
}
if(temp_dialog->exec() == QDialog::Rejected) //取消。响应Esc和cancel_button
{……return}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)