我在QSystemTrayIcon中有一個QMenu。兩者都是QMainWindow對象的成員。QT:觸發器上的上下文菜單
當我點擊QSystemTrayIcon的QMenu時,右鍵單擊(即,理解QSystemTrayIcon :: Context)和單擊左鍵單擊(即原因QSystemTrayIcon :: Trigger)時的行爲完全相同。
默認情況下右鍵單擊行爲的行爲就像我想要的那樣。然而,我無法弄清楚如何使左鍵單擊完全像右鍵單擊。我的努力,到目前爲止,導致我:
void MainWindow::iconActivated(QSystemTrayIcon::ActivationReason reason)
{
if(reason==QSystemTrayIcon::Trigger) trayIcon->contextMenu()->popup(QCursor::pos());
}
然而,當它失去焦點而帶來了點擊右鍵文本菜單不讓它消失丟失焦點時菜單不消失。
有沒有讓觸發器像上下文那樣操作?也許一種方式來拋出一個模擬信號或什麼?
你的理解是正確的。在閱讀你的例子時,它看起來應該起作用,出於某種原因,我的代碼中沒有觸發eventFilter。 – moesef 2013-05-08 22:04:23
對於第二種方法安裝在菜單 – Trompa 2013-05-09 05:30:50
並prolly,也在第二個方法,其QEvent :: MouseMove。我會改變代碼 – Trompa 2013-05-09 08:34:50