| 
 | 
 
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
x
 
- from tkinter import *
 
  
- def check(num):
 
 -     return num.isdigit()
 
  
- root = Tk()
 
  
- frame1 = Frame(root)
 
 - frame1.pack(padx = 10, pady = 10)
 
 - frame2 = Frame(root)
 
 - frame2.pack(padx = 10, pady = 10)
 
  
- v1 = StringVar()
 
 - v2 = StringVar()
 
  
- check_num = root.register(check)
 
 - e1 = Entry(frame1, textvariable = v1, validate = 'key', validatecommand = (check_num, '%P'))
 
 - e1.grid(row = 0, column = 0)
 
 - e2 = Entry(frame1, textvariable = v2)
 
 - e2.grid(row = 0, column = 2)
 
 - e3 = Entry(frame1, state = "readonly")
 
 - e3.grid(row = 0, column = 4)
 
  
- Label(root, text = '+').grid(row = 0, column = 1)
 
 - Label(root, text = '=').grid(row = 0, column = 3)
 
  
- # label1 = Label(root, text = '+')
 
 - # label1.grid(row = 0, column = 1)
 
 - # label2 = Label(root, text = '=')
 
 - # label2.grid(row = 0, column = 3)
 
  
- mainloop()
 
  复制代码 
 
这段代码运行后,出了一个异常,内容如下 
- Traceback (most recent call last):
 
 -   File "F:/Python source file/gui_in_tkinter/calculator/calculator.py", line 28, in <module>
 
 -     Label(root, text = '+').grid(row = 0, column = 1)
 
 -   File "E:\Python\lib\tkinter\__init__.py", line 2220, in grid_configure
 
 -     + self._options(cnf, kw))
 
 - _tkinter.TclError: cannot use geometry manager grid inside . which already has slaves managed by pack
 
  复制代码 
 
我明明用的是grid方法啊,为什么它会说被pack管理了啊 |   
 
 
 
 |