_ZNote_Qt_对话框_模态非模态

QDialog(及其子类,以及所有Qt::Dialog类型的类)的对于其 parent 指针都有额外的解释:如果 parent 为 NULL,则该对话框会作为一个顶层窗口,否则则作为其父组件的子对话框(此时,其默认出现的位置是 parent 的中心)。顶层窗口与非顶层窗口的区别在于,顶层窗口在任务栏会有自己的位置,而非顶层窗口则会共享其父组件的位置。

 

对话框 分为模态和非模态两种.区别是:

| -- 非模态对话框,弹出后依旧可以操作父窗口,例如查找对话框

 //非模态
    QDialog *dia = new QDialog;
    dia->show();

 

| -- 模态对话框,就是会阻塞同一应用程序中其它窗口的输入。

    //模态
  QDialog dia;
   dia.exec();

 

Qt有两种级别模态对话框

| - 应用程序级别的模态(默认) : 对话框出现时,必须先与对话框交互,直到关闭,才可访问程序其他窗口.

| - 窗口级别的模态: 仅仅阻塞与对话框关联的窗口,依旧允许用户与程序中其他窗口交互.(用于多窗口模式)

QDialog::exec(); // 实现应用程序级别的模态对话框.
QDialog::open(); //实现窗口级别的模态对话框.
QDialog::show(); //实现非模态对话框.

 

转载于:https://www.cnblogs.com/zpsoe/p/7007460.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值