python 托盘图标应用程序使用PyGTK

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 托盘图标应用程序使用PyGTK相关的知识,希望对你有一定的参考价值。

#!/usr/bin/env python

# found on <http://files.majorsilence.com/rubbish/pygtk-book/pygtk-notebook-html/pygtk-notebook-latest.html#SECTION00430000000000000000>
# simple example of a tray icon application using PyGTK

import gtk
 
def message(data=None):
  "Function to display messages to the user."
  
  msg=gtk.MessageDialog(None, gtk.DIALOG_MODAL,
    gtk.MESSAGE_INFO, gtk.BUTTONS_OK, data)
  msg.run()
  msg.destroy()
 
def open_app(data=None):
  message(data)
 
def close_app(data=None):
  message(data)
  gtk.main_quit()
 
def make_menu(event_button, event_time, data=None):
  menu = gtk.Menu()
  open_item = gtk.MenuItem("Open App")
  close_item = gtk.MenuItem("Close App")
  
  #Append the menu items  
  menu.append(open_item)
  menu.append(close_item)
  #add callbacks
  open_item.connect_object("activate", open_app, "Open App")
  close_item.connect_object("activate", close_app, "Close App")
  #Show the menu items
  open_item.show()
  close_item.show()
  
  #Popup the menu
  menu.popup(None, None, None, event_button, event_time)
 
def on_right_click(data, event_button, event_time):
  make_menu(event_button, event_time)
 
def on_left_click(event):
  message("Status Icon Left Clicked")
 
if __name__ == '__main__':
  icon = gtk.status_icon_new_from_stock(gtk.STOCK_ABOUT)
  icon.connect('popup-menu', on_right_click)
  icon.connect('activate', on_left_click)
  gtk.main()

以上是关于python 托盘图标应用程序使用PyGTK的主要内容,如果未能解决你的问题,请参考以下文章

PyQt5托盘图标消失

Qt设置系统托盘图标和程序图标

在Windows 10中使用TrayItem时有多个托盘图标

如何把程序最小化到托盘图标

WPF 在关闭程序了之后,托盘图标依然存在,请问怎么解决?

delphi 给程序加托盘图标