[英]How to prevent tkinter buttons from moving when label text length change?
我有以下示例:
from tkinter import *
number = 0
window = Tk()
window.title("Program")
window.geometry('350x250')
label = Label(window, text=number)
label.grid(column=0,row=0)
def clicked_up():
global number
number += 1
label.config(text=number)
def clicked_down():
global number
number -= 1
label.config(text=number)
button1 = Button(window, text="Up", command=clicked_up)
button1.grid(column=1, row=1)
button2 = Button(window, text="Down", command=clicked_down)
button2.grid(column=2, row=1)
window.mainloop()
它根據Down
或Up
按下的按鈕增加變量number
(或減少它)。
問題是,當 Label 中的文本(這里是增加/減少變量的結果)改變長度時,按鈕正在移動(例如:一旦長度大於 2,即 10 或 100,或對於負數,-100 也很明顯)
我環顧四周,但認為我沒有找到解決方案,至少基於上面的例子。
有什么辦法可以做到這一點?
Label
可以使用width=number_of_chars
來定義新字符的位置
label = Label(window, text=number, width=10)
或者
Label 應該使用columnspan=3
在網格中使用 3 列。
label.grid(column=0, row=0, columnspan=3)
Eventullay 它可能需要sticky='w'
將其對齊到單元格的west
label.grid(column=0, row=0, columnspan=3, sticky='w')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.