在tkinter的输入小部件中包装文本

时间:2019-01-25 19:33:02

标签: python tkinter

我想在tkinter GUI中创建一个交互式文本框,该文本框应使文本在30个字符的长度后换行到下一行,就像使用wraplength=30属性标签小部件。我正在尝试使用Entry窗口小部件使其工作,这是我的目标(除了wraplength属性需要更改为在Entry窗口小部件中可以使用的东西:
ent = Entry(root, width=30, wraplength=30)

我还需要使Entry小部件的高度高于一行,是否有办法做到这一点,例如使其垂直填充框架(类似于expand=True使其水平填充框架) )。

谢谢!

2 个答案:

答案 0 :(得分:0)

输入小部件不支持换行。如果您希望有多行(即使是一长行被包裹了),则需要使用TextLabelMessage小部件。仅Text小部件支持用户输入,其他两个仅用于显示。

要使输入小部件更高,可以使用几何管理器来实现。例如,您可以使用sticky的{​​{1}}选项或grid的{​​{1}}和fill选项。这将使小部件更高,但是文本仍将仅显示为一行。

答案 1 :(得分:0)

我相信Entry小部件仅是一行,您可能想尝试Text小部件

https://tkdocs.com/tutorial/morewidgets.html#text