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

Làm cách nào để tạo Menu bật lên trong Tkinter?

Chúng tôi cần các thanh menu trong các ứng dụng cần sự tương tác của người dùng. Có thể tạo menu bằng cách khởi chạy Menu (chính) đối tượng cùng với các mục menu. Trình đơn bật lên có thể được tạo bằng cách khởi chạy tk_popup (x_root, y_root, False) đảm bảo rằng menu hiển thị trên màn hình. Bây giờ, chúng tôi sẽ thêm một sự kiện có thể được kích hoạt thông qua Nút chuột (Nhấp chuột phải). grab_release () phương pháp đặt nút thả chuột để bỏ đặt menu bật lên.

Ví dụ

#Import the required libraries
from tkinter import *
from tkinter import ttk

#Create an instance of Tkinter frame
win = Tk()

#Set the geometry of the Tkinter library
win.geometry("700x350")

label = Label(win, text="Right-click anywhere to display a menu", font= ('Helvetica 18'))
label.pack(pady= 40)

#Add Menu
popup = Menu(win, tearoff=0)

#Adding Menu Items
popup.add_command(label="New")
popup.add_command(label="Edit")
popup.add_separator()
popup.add_command(label="Save")

def menu_popup(event):
   # display the popup menu
   try:
      popup.tk_popup(event.x_root, event.y_root, 0)
   finally:
      #Release the grab
      popup.grab_release()

win.bind("<Button-3>", menu_popup)

button = ttk.Button(win, text="Quit", command=win.destroy)
button.pack()

mainloop()

Đầu ra

Chạy đoạn mã trên sẽ hiển thị một cửa sổ có Nhãn và nút. Khi chúng ta nhấp chuột phải bằng Chuột, một menu bật lên sẽ xuất hiện trong cửa sổ.

Làm cách nào để tạo Menu bật lên trong Tkinter?