2017-02-18 502 views
0

我有一個關於Tkinter按鈕的問題: 我嘗試設置三個不同的按鈕,使用不同的字體大小,但所有按鈕的創建都具有相同的字體大小 - 最後一個按鈕的大小我放置。Tkinter多個按鈕 - 不同的字體大小

我該如何解決這個問題?多個按鈕,不同的字體大小? 顯然,所有的按鈕不僅具有相同的字體大小,而且同一字體家族...

tk = Tk() 
tk.wm_title("Knowledge") 
frame = Frame(width=768, height=576, bg="", colormap="new") 
frame.pack_propagate(0) 
frame.pack() 



b = Button(frame, text = "Text", compound="left", command=callback, highlightthickness=0, font = Font(family='Helvetica', size=20, weight='bold'), bd=0, bg ="white") 
b.pack() 
b.place(x=100, y=100) 
a = Button(frame, text = "my", compound="left", command=callback, highlightthickness=0, font = Font(family='arial', size=24, weight='bold'), bd=0, bg ="white") 
a.pack() 
a.place(x=100, y=140) 
c = Button(frame, text = "Know", compound="left", command=callback, highlightthickness=0, font = Font(family='Helvetica', size=18, weight='bold'), bd=0, bg ="white") 
c.pack() 
c.place(x=100, y=180) 


tk.mainloop() 

回答

1

的字體越來越被垃圾回收銷燬。在使用它們之前將字體保存到變量中。

f1 = Font(family='Helvetica', size=20, weight='bold') 
f2 = Font(family='arial', size=24, weight='bold') 
f3 = Font(family='Helvetica', size=18, weight='bold') 

b = Button(..., font = f1, ...) 
a = Button(..., font = f2, ...) 
c = Button(..., font = f3, ...) 

此外,調用pack是毫無意義的,因爲你立刻之後調用place。您只需撥打一個或另一個,而不是兩個。當您調用兩個或更多幾何體管理器時,只有您爲每個小部件調用的最後一個纔會起作用。

相關問題