0

我使用 QSystemTrayIcon 类来显示 TrayIconMenu,并且在单击 TrayIconMenu 时会显示弹出菜单。

如果应用程序正忙于处理其他任务,则单击 TrayIcon,弹出菜单不显示,但菜单边框可见一会。相同的代码适用于 Mac。

我试图通过以下方式显示菜单:

    QMenu *myMenu();
    QSystemTrayIcon myTrayIcon;
    myTrayIcon.mytMenu()->show();
4

1 回答 1

0

可能问题出在一些广泛的计算块或大而慢的循环上。如果您知道这个瓶颈在哪里,您可以让事件循环处理排队事件,只需插入

QApplication::processEvents();

在计算循环内的某个点。

此外,尝试将大而昂贵的任务拆分为小而快的任务,您可以让事件循环处理介于两者之间的事件。

于 2012-05-16T17:44:45.273 回答