我有两个具有单独实现的小部件。他们是...
MessageInboxUi
ComposeMessageUi
两者都将以全屏显示。
在主窗口中,我按以下顺序添加两个小部件
ComposeMessageUi* ptrEditor = new ComposeMessageUi(this); // these are inside
MessageInboxUi * ptrInbox = new MessageInboxUi(this); // MainWindow Constructor
因此,当我在显示MessageInboxUi的同时调用ComposeMessageUi的show函数时,它没有显示(因为它显示在MessageInboxUi的后面)。
如何使ComposeMessageUi放在最前面(我的意思是,如何重新定义其z顺序)
如果要让ComposeMessageUi阻止主窗口,请使用以下方式设置模式标志
void setModal(true);
如果您的代码不是从QDialog派生的,则最终需要使用
void setWindowModality(Qt::ApplicationModal);
(请参阅文档以了解替代模式模式)
要将窗口置于最前面,可以使用:
void QWidget::raise();
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句