从bind传递列表

2024-09-30 08:33:40 发布

您现在位置:Python中文网/ 问答频道 /正文

在学习python的早期阶段,我遇到了一个问题。我正在制作一个骰子游戏。我希望将骰子[0]的值传递给holdDie1函数。我创建的标签准确地显示了dice[0]的正确值,但当我使用bind调用函数将其分配给另一个列表时,我得到一个错误:

第75行,在holdDie1中 保持[0]=骰子[0] TypeError:“事件”对象不支持索引

from tkinter import *
import random

global dice, keep
dice = [1,2,3,4,5]
keep = [-1,-1,-1,-1,-1]

def holdDie1(dice):
    x = die1.cget("bg")
    if x == "white":
        die1.configure(bg="coral")
        keep[0] = dice[0]
    else:
        die1.configure(bg="white")
        keep[0] = -1


window = Tk()
window.title("Dice")
window.configure(background="white")

die1 = Label(window, bg="white", text = dice[0], width=6, borderwidth=1, font="none 12 bold", relief="solid")
die1.grid(row=1, column=0, padx=6)
die1.bind("<Button-1>", holdDie1)

Tags: 函数import游戏bindconfigure标签骰子dice

热门问题