trayiconContextMenu = QtGui.QMenu()
trayiconContextMenu.addAction("Exit")
trayicon.setContextMenu(trayiconContextMenu)
pyqt에서 상황에 맞는 메뉴가 시스템 트레이 아이콘에 연결됩니다.
특정 시나리오에서 응용 프로그램 종료는 내부적으로 호출되지만 시스템 트레이 메뉴가 수동으로 팝업되면 응용 프로그램이 종료되지 않습니다.응용 프로그램이 중지되었을 때 qsystemtray 메뉴가 숨겨지지 않습니다.
Esc
키를 누르거나 다른 앱 (예 : 트레이 메뉴가 숨겨져있을 때)에서 마우스를 클릭하면 응용 프로그램 이탈이 오류와 함께 호출됩니다.
trayiconContextMenu.hide()
/*does not work in my above case.*/
trayicon.hide()
/*hides tray icon alone but not the tray menu*/
또한 트레이 메뉴가 표시되지 않는 경우에도 앱 종료가 올바르게 작동합니다.
도움이 많이 부탁드립니다.
어떤 기능을하는 것은 당신이 응용 프로그램을 종료 호출? 예 : 'sys.exit'는 컨텍스트 메뉴를 닫습니다. – reclosedev
QtGui.qApp.exit() –
Win32에서 재현 할 수 없습니다. 'sys.exit'와'QtGui.qApp.exit()'는 상황에 맞는 메뉴가 보이면 즉시 닫습니다. – reclosedev