python tkinter网格定位
我是Python的新手,正在尝试我的第一个网格布局。 我真正需要的是这种布局: 我的名单是:python tkinter网格定位,python,tkinter,grid,Python,Tkinter,Grid,我是Python的新手,正在尝试我的第一个网格布局。 我真正需要的是这种布局: 我的名单是: 1. root=Tk() 2. root.geometry("640x480") 3. root.title("Skroutz Parser") #entryText=StringVar(root) 4. topFrame=Frame(root, bg='cyan', width = 640, height=80) 5. middleFrame=Frame(root,bg='gray2', widt
1. root=Tk()
2. root.geometry("640x480")
3. root.title("Skroutz Parser")
#entryText=StringVar(root)
4. topFrame=Frame(root, bg='cyan', width = 640, height=80)
5. middleFrame=Frame(root,bg='gray2', width=640, height=400)
6. bottomFrame=Frame(root, bg='yellow', width = 640, height=50)
# layout all of the main containers
7. root.grid_rowconfigure(1, weight=1)
8. root.grid_columnconfigure(0, weight=1)
9. topFrame.grid(row=0)
10.middleFrame.grid(row=1)
11.bottomFrame.grid(row=2)
# layout middle container
12.middleFrame.grid_rowconfigure(0, weight=1)
13.middleFrame.grid_columnconfigure(0, weight=1)
14.leftFrame=Frame(middleFrame, bg='green', width = 125, height=400)
15.rightFrame=Frame(middleFrame, bg='white', width = 515, height=400)
16.leftFrame.grid(row=0,column=0,sticky="n")
17.rightFrame.grid(row=0, column=1)
18.buttonFeatured=Button(leftFrame, text=' Recommended ', pady=5, .command=showRecommendedProductsResults)
19.buttonSkroutz=Button(leftFrame, text='Skroutz Products', pady=5, command=printSkroutzProducts)
20.buttonFeatured.grid(row=0, column=0, sticky="n")
21.buttonSkroutz.grid(row=1, column=0)
22.entryText=StringVar()
23.entryMain=Entry(rightFrame,textvariable=entryText, bg="white")
24.entryMain.grid(row=0,column=0,rowspan=2,columnspan=5,sticky="w")
25.root.mainloop()
如果我对第18-24行进行注释,则或多或少会得到所需的布局: 如果我取消对第18-21行的注释(保留注释的第22-24行),那么我会得到以下结果(左框上奇怪的黑色): 如果我取消对其余行的注释…我会弄得一团糟 我已经挣扎了两天了,但是运气不好。。。。
任何帮助都将不胜感激!谢谢 检查下面的代码,我做了多次更改,但我忘记了:
from tkinter import *
root=Tk()
root.geometry("640x480")
root.title("Skroutz Parser")
#entryText=StringVar(root)
topFrame=Frame(root, bg='cyan', width = 640, height=80)
middleFrame=Frame(root,bg='gray2', width=640, height=400)
bottomFrame=Frame(root, bg='yellow', width = 640, height=50)
# layout all of the main containers
root.grid_rowconfigure(1, weight=1)
root.grid_columnconfigure(0, weight=1)
topFrame.grid(row=0, column=0, sticky='ew')
middleFrame.grid(row=1, column=0, sticky='nsew')
bottomFrame.grid(row=2, column=0, sticky='ew')
# layout middle container
middleFrame.grid_rowconfigure(0, weight=1)
middleFrame.grid_columnconfigure(1, weight=1)
leftFrame=Frame(middleFrame, bg='green', width = 125, height=400)
rightFrame=Frame(middleFrame, bg='white', width = 515, height=400)
leftFrame.grid(row=0,column=0,sticky="nsew")
rightFrame.grid(row=0, column=1, sticky='nsew')
leftFrame.grid_columnconfigure(0, weight=1)
rightFrame.grid_rowconfigure(0, weight=1)
rightFrame.grid_columnconfigure(0, weight=1)
buttonFeatured=Button(leftFrame, text=' Recommended ', pady=5)
buttonSkroutz=Button(leftFrame, text='Skroutz Products', pady=5)
buttonFeatured.grid(row=0, column=0, sticky="new")
buttonSkroutz.grid(row=1, column=0, sticky='new')
entryText=StringVar()
entryMain=Entry(rightFrame,textvariable=entryText, bg="white")
entryMain.grid(row=0,column=0,sticky="new")
root.mainloop()
现在,如果您想要更大的文本区域,可以增加字体大小,也可以使用多行输入,text
,您可以配置文本的大小
你真的应该检查一下。你想要多行或单行文本小部件吗?请按原样提供你的代码有多余的部分。你必须更好地构造你的代码,否则事情可能会像这样失控。OOP方法确实使您更容易组织这样的脚本。