Tkinter规模小部件标签

时间:2019-08-24 15:28:52

标签: python tkinter

我是Tkinter的新手,并尝试制作一个小的密码生成器。对于密码的长度,我想实现一个Scale小部件。 我在显示小部件的标签时遇到了一个奇怪的问题,我不明白为什么要得到两种不同的设计。

所以这是我的主程序的一个片段

root = Tk()
root.geometry("460x100")
root.resizable(0,0)
root.title("Password Generator")

pw_label = Label(root, text="Password").grid(row=0, column=0, pady=4, padx = 4)
length_label = Label(root, text="Length").grid(row=2, column=0, pady=4, padx = 4)
pw_input = Entry(root, width=50)
length_input = Scale(root, from_=8, to=50, orient=HORIZONTAL, length= 300)
length_input.set(30)
pw_input.grid(row = 0, column = 1, pady=4, padx = 4)
length_input.grid(row = 2, column = 1, pady=4, padx = 4)
Button(root, text='Quit', command=root.quit).grid(row=3, column=2, sticky=W, pady=4)
Button(root, text='Generate', command=rand_pw).grid(row=2, column=2, sticky=W, pady=4)
Button(root, text='Copy', command=copy).grid(row=0, column=2, sticky=W, pady=4)

root.mainloop()

Gui 1

如您所见,我有一个蓝色滑块,并且在“标尺”下没有标尺。

这是另一个最小的滑块示例

from tkinter import *

root = Tk()
root.geometry("500x100")
length_label = Label(root, text="Length").grid(row=0, column=0, pady=4, padx = 4)
w2 = Scale(root, from_=0, to=50, tickinterval= 50, orient=HORIZONTAL, length=400)
w2.set(23)
w2.grid(row=0, column=1)


mainloop()

GUI 2

有人可以向我解释为什么我在那里得到两种不同的样式吗?这两个程序都位于PyCharm的同一项目文件夹中。另外,我在相同的环境中开始了两个示例。

我认为我只是犯了一个愚蠢的错误,但我找不到它。

1 个答案:

答案 0 :(得分:0)

参考@Bryan Oakley的答案,我删除了 updateIn(state, ['someData', 'data'], val => val.filter(x => x.id !== action.id), ); return state; ,然后得到了第二张屏幕截图所示的设计。

尽管这是工作片段,但只需删除这一行即可。

from tkinter.ttk import *