我正在使用QtRuby在OSX上编写一个时间记录应用程序。很重要的一点是它需要定期提醒用户(我的团队)记录时间,最好通过出现在前台(必要时取消最小化)。这不太符合Mac的设计风格,因此我可以接受一个弹跳的任务托盘图标。但我无法使它们中的任何一个工作。
无论如何,我已经尝试了以下方法:
所有这些命令似乎在最小化或后台时都被忽略了。当尝试弹出消息框时,我通过发出信号解决了“无法为处于不同线程的父级创建子项”的错误,但在用户激活窗口之前,事件似乎不会被处理。
有人知道如何在QTRuby甚至是在OSX上使用QT和C++弹出最小化的窗口吗?
谢谢 卢克
无论如何,我已经尝试了以下方法:
self.show()
self.showNormal()
self.raise()
self.activateWindow()
self.maximize()
self.setWindowState(Qt::WindowActive)
self.setWindowState(Qt::WindowMaximized)
# Must execute this with GUI thread
msgbox = Qt::MessageBox.new()
msgbox.setText('LOG YOUR TIME!')
msgbox.exec()
所有这些命令似乎在最小化或后台时都被忽略了。当尝试弹出消息框时,我通过发出信号解决了“无法为处于不同线程的父级创建子项”的错误,但在用户激活窗口之前,事件似乎不会被处理。
有人知道如何在QTRuby甚至是在OSX上使用QT和C++弹出最小化的窗口吗?
谢谢 卢克