0

だから私はこれを再現しようとしています:

    self.button1 = tkinter.Button(self.user_frame, image = self.image1, state = 'disabled', command = self.press1)
    self.button1.pack(side = 'left')
    self.buttonList.append(self.button1)

    self.button2 = tkinter.Button(self.user_frame, image = self.image2, state = 'disabled', command = self.press2)
    self.button2.pack(side = 'left')
    self.buttonList.append(self.button2)

    self.button3 = tkinter.Button(self.user_frame, image = self.image3, state = 'disabled', command = self.press3)
    self.button3.pack(side = 'left')
    self.buttonList.append(self.button3)

など。self.button10まで。

これとともに:

for x in range [1, 11]:
        self.button(x)=tkinter.Button(self.user_frame, image=self.image(x), state = 'disabled', command = self.press(x))
        self.button(x).pack(side='left')
        self.buttonList.append(self.button(x))

構文エラーが発生します:関数呼び出しに割り当てることができません。ボタンの命名方法と関係があることは知っていますが、理解できません。任意のヒント?

4

1 に答える 1

0

大量の構文エラーがあります。ではありませrange [1, 11]range(1, 11)。-に代入することはできません。これは、引数self.button(x)で関数を呼び出そうとします。self.buttonx

ボタンのリストを使用しないのはなぜですか? それははるかに簡単です。

いずれにせよ、次のようなものを使用してくださいself.__setattr__("button" + str(x), <the new button>)

于 2012-12-11T02:38:25.610 に答える