现在我有一个在图标托盘中运行的小工具应用程序。当我点击图标时,应用程序进入“windowstayontophint”模式。我在这个窗口上添加了一个组合框。但是,当我单击桌面上的其他位置,然后单击组合框时,下拉窗口将转到窗口的后面。这似乎是一个已知的错误,如下所述:
https://bugreports.qt.io/browse/QTBUG-61804
有解决方法吗?我正在使用Qt 5.9.1。
编辑:添加一些代码:
这在MainWindow构造函数中:
Qt::WindowFlags flags = this->windowFlags();
this->setWindowFlags(flags|Qt::WindowStaysOnTopHint);
然后我在主窗口中放置了一个带有预装项目的QComboBox。首次点击,下拉列表正常显示在顶部。然后我点击桌面,然后返回主窗口和组合框。然后下降成为主窗口的后面。点击上面的链接看看我的意思。错误报告还提供了正在发生的事情的屏幕截图。
答案 0 :(得分:0)
没有人想回答,所以我自己回答。
答案:更新到最新的Qt。
它对我不起作用,因为我无法更新(noob here)。基本上发生的是在维护工具上选择“更新”选项不会将SDK从5.9.1更新到5.10.1。它只更新像Qt Creator这样的东西。
我需要选择“添加或删除组件”,然后添加Qt 5.10.1,但只检查MinGW 32bit。 (取消选中所有其他人,否则你需要它们(如android或其他))。
即便如此,您还需要手动下载CMake(从cmake.com获取)并在Qt Creator中的“Manage Kits”中进行设置。