gpt4 book ai didi

c++ - 如何在 Qt Widget 中重新定义 Z-Order

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:15:34 27 4
gpt4 key购买 nike

我有两个 Widget 有单独的实现。他们是……
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);

(请参阅 alternative modality modes 的文档)

要将窗口置于最前面,您可以使用:

void QWidget::raise();

关于c++ - 如何在 Qt Widget 中重新定义 Z-Order,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18012344/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com