Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Tkinter Python删除垂直空格_Python_User Interface_Text_Tkinter - Fatal编程技术网

Tkinter Python删除垂直空格

Tkinter Python删除垂直空格,python,user-interface,text,tkinter,Python,User Interface,Text,Tkinter,我试图使用Tkinter在Python中构建GUI,但插入的文本标签“在下面输入值并单击搜索。\n”占据了大约6个空白行。请帮我把它取下来。我当前使用上面代码的结果是左边的,我想得到右边的图像 创建文本小部件时,指定要显示的行数,例如: label=tk.Text(root,background=“yellow”,height=3) 如果未指定,则表示默认值为24,因此在程序中它如此大。创建文本小部件时,请指定希望它显示的行数,例如: label=tk.Text(root,background=

我试图使用Tkinter在Python中构建GUI,但插入的文本标签“在下面输入值并单击搜索。\n”占据了大约6个空白行。请帮我把它取下来。我当前使用上面代码的结果是左边的,我想得到右边的图像


创建文本小部件时,指定要显示的行数,例如:

label=tk.Text(root,background=“yellow”,height=3)


如果未指定,则表示默认值为24,因此在程序中它如此大。

创建文本小部件时,请指定希望它显示的行数,例如:

label=tk.Text(root,background=“yellow”,height=3)

未能指定表示它将默认为24,因此它在程序中如此大。

忽略代码中的
grid()
错误

您可以通过提供权重和起始几何体大小来纠正大小问题

更新:

如果为适当的行和列提供权重,则为文本小部件指定默认高度(例如3),并将文本小部件上的
grid()
告知
sticky=“nsew”
,您可以让程序以所需的大小启动,并且如果需要,可以均匀调整大小

请看下面的代码:

import tkinter as tk

root = tk.Tk()

buttonOK = tk.Button(root, text='B1')
MCC = tk.Button(root, text='B2')
TID = tk.Button(root, text='B3')
CURRENCY = tk.Button(root, text='B4')
COUNTRY = tk.Button(root, text='B5')
RESPONSE = tk.Button(root, text='B6')


B1.grid(row=3, column=0, sticky=tk.E+tk.W)
B2.grid(row=3, column=1, sticky=tk.E+tk.W)
B3.grid(row=3, column=2, sticky=tk.E+tk.W)
B4.grid(row=4, column=0, sticky=tk.E+tk.W)
B5.grid(row=4, column=1, sticky=tk.E+tk.W)
B6.grid(row=4, column=2, sticky=tk.E+tk.W)

label1 = tk.Entry(root, bd =8)
label1.grid(row=2, column=0, rowspan=1, columnspan=3, sticky=tk.E+tk.W)

label=tk.Text(root,background="yellow")
label.insert(index=0.0, chars="Enter values below\nand click search.\n") 
label.grid(row=0, column=0,rowspan=1, columnspan=3, sticky=tk.E+tk.W)

root.mainloop()
忽略代码中的
grid()
错误

您可以通过提供权重和起始几何体大小来纠正大小问题

更新:

如果为适当的行和列提供权重,则为文本小部件指定默认高度(例如3),并将文本小部件上的
grid()
告知
sticky=“nsew”
,您可以让程序以所需的大小启动,并且如果需要,可以均匀调整大小

请看下面的代码:

import tkinter as tk

root = tk.Tk()

buttonOK = tk.Button(root, text='B1')
MCC = tk.Button(root, text='B2')
TID = tk.Button(root, text='B3')
CURRENCY = tk.Button(root, text='B4')
COUNTRY = tk.Button(root, text='B5')
RESPONSE = tk.Button(root, text='B6')


B1.grid(row=3, column=0, sticky=tk.E+tk.W)
B2.grid(row=3, column=1, sticky=tk.E+tk.W)
B3.grid(row=3, column=2, sticky=tk.E+tk.W)
B4.grid(row=4, column=0, sticky=tk.E+tk.W)
B5.grid(row=4, column=1, sticky=tk.E+tk.W)
B6.grid(row=4, column=2, sticky=tk.E+tk.W)

label1 = tk.Entry(root, bd =8)
label1.grid(row=2, column=0, rowspan=1, columnspan=3, sticky=tk.E+tk.W)

label=tk.Text(root,background="yellow")
label.insert(index=0.0, chars="Enter values below\nand click search.\n") 
label.grid(row=0, column=0,rowspan=1, columnspan=3, sticky=tk.E+tk.W)

root.mainloop()


您不需要使用
sticky=tk.E+tk.W
,只需使用
sticky=“EW”
。顺便说一句,您正试图将
B1
-
B6
设置为网格,但尚未定义任何具有这些名称的小部件。我假设您正在尝试将网格管理器应用于代码中先前列出的按钮。如果是这样,您需要更正网格分配。您不需要使用
sticky=tk.E+tk.W
,只需使用
sticky=“EW”
。顺便说一句,您正在尝试将
B1
-
B6
设置为网格,但尚未定义任何具有这些名称的小部件。我假设您正在尝试将网格管理器应用于代码中先前列出的按钮。如果是这样,您需要更正网格分配。谢谢!成功了。思想默认值总是设置为1。不用担心。如果您在此主题上不再需要帮助,请将答案标记为已接受:)谢谢!成功了。思想默认值总是设置为1。不用担心。如果您不再需要此主题的帮助,请将答案标记为已接受:)此解决方案的问题在于您正在猜测窗口的高度。如果此代码在具有不同分辨率或不同字体的系统上运行,则大小可能不合适。@BryanOakley我可能会重写它以测量起始窗口大小,并将最小/最大宽度设置为该大小。在不知道具体高度的必要性的情况下,我认为这是OP的一个良好开端。我将在我当前项目结束一分钟后回顾我的答案。是的,你可以。这太麻烦了,因为真正需要做的只是将文本小部件的高度设置为三行,然后让tkinter为您完成所有计算。@BryanOakley我可能也应该在列上加一个权重,这样调整大小就不会是视觉上的问题。这将消除对最大/最小大小的需要。是的,如果使用网格,则应始终为至少一行和一列指定正权重。此解决方案的问题是,您正在猜测窗口的高度。如果此代码在具有不同分辨率或不同字体的系统上运行,则大小可能不合适。@BryanOakley我可能会重写它以测量起始窗口大小,并将最小/最大宽度设置为该大小。在不知道具体高度的必要性的情况下,我认为这是OP的一个良好开端。我将在我当前项目结束一分钟后回顾我的答案。是的,你可以。这太麻烦了,因为真正需要做的只是将文本小部件的高度设置为三行,然后让tkinter为您完成所有计算。@BryanOakley我可能也应该在列上加一个权重,这样调整大小就不会是视觉上的问题。这将消除对最大/最小大小的需要。是的,如果使用网格,则应始终为至少一行和一列指定正权重。