Lesson5 How to open a new window from a pushbutton

1. 右击项目,选择add new->QT->QT Designer Form class,然后template选择Dialog without buttons,将类命名为SecDialog


2.然后在主窗口里面拖一个pushbutton,双击修改它的标题为Open Second Win,右击添加clicked slot


3.由于要在Mainwindow.cpp里面引用它,所以要包含它的头文件 


#include "secdialog.h"


4.在slog函数里面写入如下语句

void MainWindow::on_pushButton_3_clicked()
{
    SecDialog secDialog(this);
    secDialog.setModal(true);
    secDialog.exec();
}



这样就得到了一个model dialog


6.下面我们建一个modeless dialog


我们拖动一个pushbutton, 建立clicked() slot,然后添加如下语句

 由于是非模态的,所以我们最好创建一个成员变量指针,而不是像model dialog一样用临时变量来存


所以我们在mainwindow.h头文件里面引用secdialog.h

#include "secdialog.h"


然后创建一个指针变量

SecDialgo* m_pSecDialog;


最后我们在clicked slot函数里面写入如下语句:

void MainWindow::on_pushButton_4_clicked()
{
    m_pSecDialog = new SecDialog(this);
    m_pSecDialog->show();
}


注意观察,现在main window在底下是可以被选中的




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值