首页 > 解决方案 > 通过选项菜单的白线

问题描述

我通过选项菜单得到一条奇怪的线,我不知道为什么。有小费吗?只是测试代码,但我不知道那行来自哪里。我试过改变菜单的大小来修复它并试图找到错误但我找不到它。这不是“破坏游戏”,但我无法摆脱它仍然有点烦人。

from tkinter import * 

root = Tk()
root.state("zoomed")
root.title("XP-dot GUI")
root.configure(background='black')

mainframe = Frame(root, width=50)
mainframe.grid(row=0, column=0, sticky=(N,W,E,S))
mainframe.columnconfigure(0, weight = 1)
mainframe.rowconfigure(0, weight = 1)

buttonframe = Frame(root)
buttonframe.grid(row=3, column=0, sticky=(N,W))
buttonframe.configure(background='blue')

tkvar = StringVar(root)
tkvar.set('1 row')
choices = ['1 row','2 rows','Still frame','Animation', 'diy']
r=0
c=0

theLabel = Label(root, text="")
theLabel.grid(row=r,column=c)

dropDown = OptionMenu(mainframe, tkvar, *choices)
Label(mainframe, text="Options").grid(row=r, column=c)
dropDown.grid(row=r, column=c+1, sticky=(W,E))
dropDown.config(width=14)

def preview():
    print ("value is", tkvar.get())
button = Button(buttonframe, text="Preview", command=preview)
button.grid(row=5,column=0)

def random():
    print ("value is", tkvar.get())
button = Button(buttonframe, text="Randomize", command=random)
button.grid(row=5,column=1)

def update():
    print ("value is", tkvar.get())
button = Button(buttonframe, text="Update", command=update)
button.grid(row=5,column=2)

root.mainloop()

标签: pythontkinterdrop-down-menu

解决方案


那条“线”是theLabel。它mainframe都被放在根窗口的第 0 行第 0 列。

如果您提供theLabel一些文字,您可以更清楚地看到这一点。因为它没有任何文本,所以它显示为一个相当小的矩形。因为它是在mainframe添加到 root 之后添加的,所以它出现在mainframe.


推荐阅读