python - 如何更改 tkinter 输入字段的宽度或高度
问题描述
我一直在制作一个检查语法的脚本。现在我已经使用 Tkinter 将其更新为 gui。问题是我试图指出语法错误的行,当我使用输入字段输入文本时,所有内容都在一行中。
我的问题是如何扩展输入字段?
这是我的代码:
import re
from tkinter import *
window = Tk()
window.minsize(width=300, height= 20)
wr = []
def work():
x = e1.get()
print(x)
BigLetterSearcher = re.compile(r'\. .|\n')
mo = BigLetterSearcher.findall(e1.get())
x = 1
y = 0
v = 0
z = ""
wr = []
for i in mo:
if i == '\n':
x += 1
elif i != i.upper():
v = 1
if x != y:
z = "Row", x
wr.append(z)
wr.append(i)
y = x
if v == 0:
wr.append ("Congratulations none of your grammar was wrong!")
l1.configure(text=wr)
l1 = Label(window, text="example")
e1 = Entry(window, text="Enter text here: ")
b1 = Button(window, text="Work", command=work)
leb = [l1, e1, b1]
for all in leb:
all.pack()
window.mainloop()
解决方案
条目小部件无法垂直扩展。这是因为已经有一个为此设计的小部件,称为Text()
. 为了将文本添加到我们可以使用的文本小部件insert()
,您可以使用 2 部分索引指定位置。第一部分是行,第二部分是列。对于行/行,它从数字 1 开始,对于该行的索引,它从零开始。
例如,如果你想在第一行/列插入一些东西,你可以这样做insert("1.0", "some data here")
。
这是您使用的代码Text()
。
import re
from tkinter import *
window = Tk()
window.minsize(width=300, height= 20)
wr = []
def work():
x = e1.get("1.0", "end-1c")
print(x)
BigLetterSearcher = re.compile(r'\. .|\n')
mo = BigLetterSearcher.findall(x)
x = 1
y = 0
v = 0
z = ""
wr = []
for i in mo:
if i == '\n':
x += 1
elif i != i.upper():
v = 1
if x != y:
z = "Row", x
wr.append(z)
wr.append(i)
y = x
if v == 0:
wr.append ("Congratulations none of your grammar was wrong!")
l1.configure(text=wr)
l1 = Label(window, text="example")
e1 = Text(window, width=20, height=3)
e1.insert("end", "Enter text here: ")
b1 = Button(window, text="Work", command=work)
leb = [l1, e1, b1]
for all in leb:
all.pack()
window.mainloop()
推荐阅读
- azure - Microsoft Azure:高级管理门户链接已禁用
- php - 在类别页面 Wordpress 中显示帖子列表
- react-native - Facebook 登录错误:不支持的请求
- javascript - 动态添加列到表的右侧,但需要添加为合并列
- raspberry-pi - 红外线 LED 通讯
- mysql - 如何使用带有额外参数的 Windows 命令行启动 MySQL Workbench?
- python - 如何列出大型文档usign PyMongo的最外层字段?
- c++ - 了解模板函数声明
- python - OSMnx 无向图和 (u, v, k) 顺序
- raspberry-pi - -bash:raspistill:找不到命令