首页 > 编程知识 正文

qdialog默认最大化显示,qdialog边框加按钮

时间:2023-05-04 13:11:11 阅读:113888 作者:3296

q诊断程序的接受(函数和reject )函数

这两个函数的作用可以分别隐藏QDialog,但返回值不同。 一个是接受,另一个是拒绝

返回值的区别在于区分是用户按下的OK按钮还是Cancel按钮。

f (my1.exec (==q诊断:3360已接受) )。

my1是一个对话框,调用exec方法时,它将弹出并等待用户响应,如果用户可能单击“确定”,exec将返回QDialog:Accepted的值,然后单击“取消” 这句话根据返回值决定用户的响应结果

exec ) )时,默认情况下处于模态。 show ) )中需要设定setmodel(true )时为模态。

2 .删除诊断程序对象时,exec ) )返回q诊断程序:rejected,因此删除诊断程序时要特别小心。 举个例子来说明吧:

a是q构件。 b为q诊断程序,b=newq诊断程序(a )。 int rec=B-exec (; if (! thisdeleted(if ) rec==q诊断:3360 accepted )结束会话);

if (rec==q诊断:3360 rejected ) emit endSession2(;

}

结束会话()和结束会话2 )都是a维成员函数。 如果删除a,b也将被删除。 (因为b得parent是a ),所以此时exec返回QDialog:Rejected。 此时,下一个emit endSession2) )也将继续运行。 此时,发生结束错误。 a先于b删除。 此时,呼叫a的成员。 如果能和A一起调用的话就奇怪了。 因此,在a类中添加了静态变量thisDeleted。 记住在分析语法a时更改了此值,就不会调用emit endSession2()或引起段落错误。

3.exec ) )是循环时间函数,什么时候能返回? 调用accept () (返回QDialog:Accepted )、reject () ) qdialog33603360rejected )、done(intr )、close (关闭) 还有,在删除自己时,q dialog :3360 rejected (destory )也会删除自己)。

4.close ) )要销毁对象啊。 答案仅在设置属性(wa : closeondelelte )时删除,否则与hide )、setvisible、false (设置可见)一样,也将删除更改对象

故障诊断程序(exec ) )时。 后台线程也同样可以操作接口,收到每条消息后,也可以弹出QDialog。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。