Provides systray integration
pystray Package Documentation
This library allows you to create a system tray icon.
Creating a system tray icon
In order to create a system tray icon, the class pystray.Icon is used:
import pystray icon = pystray.Icon('test name')
In order for the icon to be displayed, we must provide an icon. This icon must be specified as a PIL.Image.Image:
from PIL import Image, ImageDraw # Generate an image image = Image.new('RGB', (width, height), color1) dc = ImageDraw.Draw(image) dc.rectangle((width // 2, 0, width, height // 2), fill=color2) dc.rectangle((0, height // 2, width // 2, height), fill=color2) icon.image = image
To ensure that your application runs on all platforms, you must then run the following code to show the icon:
def setup(icon): icon.visible = True icon.run(setup)
The call to pystray.Icon.run() is blocking, and it must be performed from the main thread of the application. The reason for this is that the system tray icon implementation for OSX must be run from the main thread, and it requires the application runloop to be running. pystray.Icon.run() will start the runloop.
The code in setup() will be run in a separate thread once the system tray icon is ready. The icon does not wait for it to complete, so you may put any code that would follow the call to pystray.Icon.run() in it.
pystray.Icon.run() will not complete until ~pystray.Icon.stop() is called.
If you do not wish to support OSX, the above code can be replaced with the following:
icon.visible = True
v0.2 - Initial Release
- Support for adding a system tray icon on Linux, Mac OSX and Windows.
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, Size & Hash SHA256 Hash Help||File Type||Python Version||Upload Date|
(231.5 kB) Copy SHA256 Hash SHA256
|Wheel||2.7||Mar 27, 2016|
(25.0 kB) Copy SHA256 Hash SHA256
|Egg||3.5||Apr 19, 2016|