QDialog或QMessageBox在添加到现有应用程序时显示Qt :: BusyCursor

时间:2014-09-22 20:12:10

标签: c++ qt user-interface

我是qt的新手,我有一个我无法理解的问题。 我创建了自己的QDialog,现在我想将它添加到现有的应用程序中。

在QT创建者中,一切正常,但是当我添加自定义对话甚至是自定义对话时 消息框到现有代码,发生奇怪的事情。

当我将鼠标悬停在对话的主要区域时,对话工作正常 图标变为Qt :: BusyCursor忙等待图标。

起初我认为这必须是一个线程问题,但是然后不是.exec()假设阻止? 当我将鼠标悬停在标题栏或消息框/对话框上时,它似乎很好,即它显示了Qt :: ArrowCursor,在这两种情况下,对话功能也正常。

我试图在两者上设置.setCursor(),它仍然无法正常工作。

任何人都可以给我一些提示,看看我可能会对此进行更多调查。

非常感谢!!!

1 个答案:

答案 0 :(得分:1)

我建议你使用

QApplication::setOverrideCursor(QCursor(Qt::ArrowCursor));

并使用

重置它
QApplication::restoreOverrideCursor();.