Tkinter (11) 選單按鈕部件 Menubutton

Jason990420 發表於 2020-08-01

選單按鈕部件的建立及其選項

import tkinter as tk
parent = tk.Tk()
menu_widget = tk.Menubutton(parent, option, ...)
選項 說明
activebackground active 時的背景色
activeforeground active 時的前景色
anchor 部件定位點,內定為 CENTER
bg or background 背景色
bitmap 點陣圖
bd or borderwidth 框的寛度,內定為 2 圖素
compound 圖與文字共用時,圖相對於文字的位置.
cursor 當滑鼠移到部件時,所顯示的滑鼠圖示
direction 選單相對於按鈕置, LEFT/RIGHT/‘above’
disabledforeground disabled 時的前景色
fg or foreground 前景色
font 文字字型
height 行數
highlightbackground 非聚焦時的聚焦顏色
highlightcolor 聚焦時的聚焦顏色
highlightthickness 聚焦厚度,內定 1, 0 則無
image 圖片
justify 多行文字的對齊方式,LEFT/RIGHT/CENTER
menu 選單對像
padx 內部水平點素間隔, 內定為 1 圖素
pady 內部垂直點素間隔, 內定為 1 圖素
relief 花邊樣式,內定為 RAISED
state NORMAL, DISABLED
takefocus TAB 鍵在部件是否會迴圈焦點 0/1
text 部件字串
textvariable 文字字串變數
underline 設定下底線的位置,內定 -1 為無
width 文字寛度
wraplength 文字分行寛度,單位為點素

範例視窗及程式碼

Tkinter (11) 選單按鈕部件 Menubutton

import tkinter as tk

root = tk.Tk()
root.wm_title("Menubutton Demo")

font = ('Courier New', 20, 'bold')
menu_button = tk.Menubutton(root, text='Menubutton', font=font, relief=tk.RAISED)
menu_button.grid(row=0, column=0)
label = tk.Label(root, text='', width=20, height=5)
label.grid(row=1, column=0)

menu = tk.Menu(menu_button, font=font, tearoff=0)
menu_button['menu'] = menu

var1 = tk.IntVar()
var2 = tk.IntVar()

menu.add_checkbutton(label='Menu_1', variable=var1)
menu.add_checkbutton(label='Menu_2', variable=var2)

root.mainloop()
本作品採用《CC 協議》,轉載必須註明作者和本文連結

Jason Yang