我的代码是:
from tkinter import *
import Pmw
master = Tk()
class GetPassword(Pmw.Dialog):
def body(self, master):
self.title('Enter New Password')
Label(master, text='Old Password:').grid(row=0, sticky=W)
Label(master, text='New Password:').grid(row=1, sticky=W)
Label(master, text='Enter New Password Again:').grid(row=2, sticky=W)
self.oldpw = Entry(master, width = 16, show='*')
self.newpw1 = Entry(master, width = 16, show='*')
self.newpw2 = Entry(master, width = 16, show='*')
self.oldpw.grid(row=0, column=1, sticky=W)
self.newpw1.grid(row=1, column=1, sticky=W)
self.newpw2.grid(row=2, column=1, sticky=W)
a = GetPassword()
a.body(master)
master.mainloop()
结果看起来像这样:
我的问题:
如果你能帮助我,我将感激不尽。
答案 0 :(得分:0)
您需要为master
设置标题。问题中的代码将小部件放在master
(主窗口)中。
master = Tk()
master.title('Enter New Password')
如果您解决了第二个问题,可能不需要这样做。
在对话框body
方法中,您将小部件放入主控。使用Pmw.Dialog.interior()
将小部件置于对话框中:
def body(self, master):
self.title('Enter New Password')
Label(self.interior(), text='Old Password:').grid(row=0, sticky=W)
Label(self.interior(), text='New Password:').grid(row=1, sticky=W)
Label(self.interior(), text='Enter New Password Again:').grid(row=2, sticky=W)
self.oldpw = Entry(self.interior(), width = 16, show='*')
self.newpw1 = Entry(self.interior(), width = 16, show='*')
self.newpw2 = Entry(self.interior(), width = 16, show='*')
self.oldpw.grid(row=0, column=1, sticky=W)
self.newpw1.grid(row=1, column=1, sticky=W)
self.newpw2.grid(row=2, column=1, sticky=W)
使用buttons
option列出按钮名称:
a = GetPassword(buttons=('OK', 'Cancel'))