0

所以我正在做一个简单的程序,基本上在屏幕上制作一个比例/滑动条。当我运行应用程序时,比例会显示并工作,但它不会将值打印到控制台(终端)。相反,它会打印错误消息

import Tkinter
class App:
    def __init__(self,parent):
        self.scale = Tkinter.Scale(parent,from_ = 0, to = 100, command = self.getVal)
        self.scale.pack()
    def getVal(self):
        amount = self.scale.get()
        print str(amount)
root = Tkinter.Tk()

app = App(root)
root.mainloop()

这是错误消息:

Exception in Tkinter callback
Traceback (most recent call last):
  File "/System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/lib-tk/Tkinter.py", line 1403, in __call__
    return self.func(*args)
TypeError: getVal() takes exactly 1 argument (2 given)

我在 Tkinter 很新,所以我有点迷茫。

编辑:Python 2.5 的家伙。对不起。

4

1 回答 1

2

回调接收一个新的command比例值作为参数。将定义更改getVal为:

def getVal(self, newscale):
    print newscale
于 2013-06-19T03:25:13.800 回答