【问题标题】:Text and entry width not the same tkinter文本和条目宽度不相同 tkinter
【发布时间】:2019-04-28 15:03:26
【问题描述】:

我开始学习 Tkinter 库,但我遇到了一个问题...... 我使用网格以我想要的方式设置我的窗口,但我不知道如何将条目小部件的宽度设置为与文本小部件相同。 当我输入相同的数字时,我无论如何都没有相同的宽度......

这是我的代码:

    from tkinter import *

def click():
    try:
        output.delete(0.0,END)
        entered_text=entry.get()
        output.insert(END, entered_text)
    except:
        output.insert(END, "")

def reset():
    output.delete(0.0,END)
    entry.delete(0,END)

if __name__ == '__main__':

    window = Tk()
    window.title("TEST")
    window.geometry("500x500")

    Label (window, text="Nombre de palettes :").grid(row=0,  sticky=W)
    Label (window, text="Prix :").grid(row=1, sticky=W)

    entry = Entry (window)
    entry.grid(row=0, column=2)

    output = Text(window, width=8, heigh=1,  wrap=WORD)
    output.grid(row=1, column=2)

    accepter=Button(window, text="Accepter",  width=6, command=click)
    accepter.grid(row=2, column=0)
    restart = Button(window, text="Reset", width=6,command=reset)
    restart.grid(row=2, column=1)
    fin = Button(window, text="Quitter", width=6,command=window.destroy)
    fin.grid(row=2, column=2)


    window.grid_columnconfigure(4, minsize=100)
    window.mainloop()

提前谢谢你。

【问题讨论】:

    标签: python user-interface tkinter


    【解决方案1】:

    一种方法是扩展小部件以填充单元格:

    entry = Entry(window)
    entry.grid(row=0, column=2, sticky=E+W, padx=10)
    
    output = Text(window, width=8, heigh=1,  wrap=WORD)
    output.grid(row=1, column=2, sticky=E+W, padx=10)
    

    sticky=E+W 在哪里水平填充单元格,然后我添加一些填充 padx=10 以获得与单元格限制的距离。

    如果其中一个小部件总是较大,您可以让该小部件确定单元格宽度,然后展开另一个小部件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-07-12
      • 1970-01-01
      • 2016-02-08
      • 1970-01-01
      • 2015-02-17
      • 1970-01-01
      • 2020-08-30
      相关资源
      最近更新 更多