簡體   English   中英

我在使用tkinter時遇到此屬性錯誤

[英]I'm getting this attribute error working with tkinter

from tkinter import *
import tkinter.font

class App:

    def __init__(self, master):
        self.master = master
        self.frame = Frame(master)
        self.frame.grid()

        labell = Label(self.frame, text="min: ")
        labell.grid()

        self.min = Scale(self.frame, from_=1, to=10, orient=HORIZONTAL,
                     command=self.updateMax)
        self.min.grid(row=0, column=1, columnspan=2)

這就是錯誤所在的地方:

    def updateMax(self,value):
        self.max.config(from_=int(value)+1)
        self.max.config(to=int(value)+11)

    def compute(self):
        lower = self.min.get()
        upper = self.max.get()+1
        self.list.delete(0,END)
        for x in range(lower,upper):
            str = "{0:2d} {1:3d} {2:4d}".format(x,x*x,x*x*x)
            self.list.insert(END,str)

root = Tk()
app = App(root)
root.mainloop()

錯誤!!

AttributeError: 'App' object has no attribute 'max'

我在這做錯了什么? 請盡快回答。 謝謝。

如果這是所有代碼,那么問題很簡單:你從未定義過self.max但是你試着在這里使用它:

def updateMax(self,value):
    self.max.config(from_=int(value)+1)
    self.max.config(to=int(value)+11)

也許您打算使用self.min ,您確實定義了:

def updateMax(self,value):
    self.min.config(from_=int(value)+1)
    self.min.config(to=int(value)+11)

如果沒有,那么使用之前需要定義self.max

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM