1.代码创建
创建一个MainWindow的qt程序,拖一个pushButton到MainWindow上,其click slot如下
当然在dd->show()之前可以在dialog上添加一个label。即如下
上面1.是手动写代码创建一个dialog,如果想向dialog里面添加控件的话,都需要手动写代码,不方便。
添加一个Qt Designer From,模板选择Dialog with Buttons Right,即可创建一个form即dialog.ui
此时编译一下,在工程目录内会出现一个ui_dialog.h,
再拖一个pushButton到MainWindow上,其click slot如下
ui_dialog.h源码类似如下,
创建一个MainWindow的qt程序,拖一个pushButton到MainWindow上,其click slot如下
void MainWindow::on_pushButton_clicked()
{
QDialog *dd=new QDialog;
dd->show();
}
在点击此pushButton会弹出一个Dialog 对话框,其各个属性都默认。
当然在dd->show()之前可以在dialog上添加一个label。即如下
void MainWindow::on_pushButton_clicked()
{
QDialog *dd=new QDialog;
QLabel *label=new QLabel(dd);//父窗口是dd,需要#include<QLabel>
label->setText("i'm label");
dd->show();
}
2.使用ui,添加Qt Designer From
上面1.是手动写代码创建一个dialog,如果想向dialog里面添加控件的话,都需要手动写代码,不方便。
添加一个Qt Designer From,模板选择Dialog with Buttons Right,即可创建一个form即dialog.ui
此时编译一下,在工程目录内会出现一个ui_dialog.h,
再拖一个pushButton到MainWindow上,其click slot如下
void MainWindow::on_pushButton_2_clicked()
{
QDialog *dd=new QDialog();
Ui_Dialog *ui=new Ui_Dialog;//构造Ui_Dialog对象,需要#include"ui_dialog.h"
ui->setupUi(dd);//为dd指定ui对象
dd->show();
}
说明几点:
ui_dialog.h源码类似如下,
/**************************************