【发布时间】:2018-07-28 01:00:52
【问题描述】:
Python 3
我正在使用 Tkinter 并且得到了意想不到的结果。我想做的是拥有 不同的标签、按钮和输入框,以更好地练习我鲜为人知的 Tkinter 技能。
这是我的代码:
from tkinter import *
def display_music(event):
music = favoriteMusician.get()
outputEntry.delete(0, 'end')
outputEntry.insert(0, 'Your favorite musician is %s' % music)
def divide(event):
answer = str(int(num1Entry.get())/int(num2Entry.get()))
divideEntry.delete(0, 'end')
divideEntry.insert(0, answer)
root = Tk()
Label(root, text='Who is your favorite musician?').grid(row=0, column=0, sticky=W)
favoriteMusician = Entry(root)
favoriteMusician.grid(row=0, column=2, sticky=W)
b1 = Button(root, text='Output:')
b1.bind('<Button-1>', display_music)
b1.grid(row=1, column=0, sticky=W)
outputEntry = Entry(root)
outputEntry.grid(row=1, column=1, columnspan=2, sticky=W)
num1Entry = Entry(root)
num1Entry.grid(row=2, column=0, sticky=W)
Label(root, text='/').grid(row=2, column=1, sticky=W)
num2Entry = Entry(root)
num2Entry.grid(row=2, column=2, sticky=W)
b2 = Button(root, text='=')
b2.bind('<Button-1>', divide)
b2.grid(row=2, column=3, sticky=W)
divideEntry = Entry(root)
divideEntry.grid(row=2, column=4, sticky=W)
root.mainloop()
但是当我运行代码时。存在布局问题,我希望一切都对齐,但并非一切都对齐,而且我不知道如何摆脱大空间。以下是它目前的样子:
我知道这与 Tkinter 根据现有单元格的大小决定单元格大小(对于grid())有关。我做了研究,但找不到答案。
除了答案之外,我很乐意提供有关如何编写更好代码的反馈,以及一些免费学习 python 的资源。
【问题讨论】:
标签: python python-3.x tkinter