Computer >> Máy Tính >  >> Lập trình >> Python

Làm thế nào để làm cho Cửa sổ Tkinter xuất hiện trên thanh tác vụ?

Ứng dụng Khay Hệ thống luôn được tạo trên thanh tác vụ. Bất cứ khi nào người dùng đóng một ứng dụng, nó sẽ có trạng thái chạy trên thanh tác vụ. Để xác định ứng dụng Khay hệ thống, chúng tôi có thể cung cấp hình ảnh hoặc biểu tượng cho ứng dụng của nó.

Để tạo biểu tượng Khay hệ thống của ứng dụng Tkinter, chúng tôi có thể sử dụng pystray mô-đun bằng Python. Nó có nhiều chức năng và phương pháp có sẵn có thể được sử dụng để định cấu hình biểu tượng Khay hệ thống của ứng dụng.

Để cài đặt pystray trong máy của mình, bạn có thể nhập "pip install pystray" lệnh trong trình bao hoặc dấu nhắc lệnh của bạn.

Để tạo biểu tượng Khay hệ thống, bạn có thể làm theo các bước được cung cấp bên dưới -

  • Nhập các thư viện bắt buộc - Pystray, Python PIL hoặc Gối .

  • Xác định một hàm hide_window () để rút cửa sổ và cung cấp biểu tượng vào khay hệ thống.

  • Thêm và xác định hai mục trình đơn "Hiển thị" "Thoát" .

  • Thêm Lệnh trong các mục trình đơn bằng cách xác định chức năng cho Hiển thị Thoát .

Ví dụ

# Import the required libraries
from tkinter import *
from pystray import MenuItem as item
import pystray
from PIL import Image, ImageTk

# Create an instance of tkinter frame or window
win=Tk()
win.title("System Tray Application")

# Set the size of the window
win.geometry("700x350")

# Define a function for quit the window
def quit_window(icon, item):
   icon.stop()
   win.destroy()

# Define a function to show the window again
def show_window(icon, item):
   icon.stop()
   win.after(0,win.deiconify())

# Hide the window and show on the system taskbar
def hide_window():
   win.withdraw()
   image=Image.open("image.ico")
   menu=(item('Quit', quit_window), item('Show', show_window))
   icon=pystray.Icon("name", image, "title", menu)
   icon.run()

win.protocol('WM_DELETE_WINDOW', hide_window)

win.mainloop()

Đầu ra

Nếu chúng ta chạy đoạn mã trên, nó sẽ hiển thị cửa sổ ứng dụng với một số tiện ích và phần tử trong đó.

Làm thế nào để làm cho Cửa sổ Tkinter xuất hiện trên thanh tác vụ?

Nếu chúng ta đóng cửa sổ, nó sẽ hiển thị biểu tượng cửa sổ trong menu thanh tác vụ.