jianghongz 发表于 2025-3-15 09:24:43

开始学习GUI 01

import tkinter as tk
from tkinter import messagebox
root = tk.Tk()
root.title("乌托邦")
def flower1(e):
   messagebox.showinfo("礼物盒子","送你一朵小红花")
def flower2():
   messagebox.showinfo("礼物盒子","送你一朵小黄花")
b1=tk.Button(root,text="点我试试啊",bg="red")
b1.pack()
b1.bind("<Button-1>",flower1)
b2=tk.Button(root,text="点我试试啊",
             bg="yellow",command=flower2)
b2.pack()
root.mainloop()

FishC 发表于 2025-3-15 09:24:55

你的代码有几个问题需要修正:

1. `b1.bind("", flower1)` 这里的 `""` 需要替换为正确的事件类型,比如 `"<Button-1>"`(鼠标左键点击)。
2. 代码缺少 `root.geometry()`,可以添加窗口大小设置。

修正后的代码如下:

python
import tkinter as tk
from tkinter import messagebox

root = tk.Tk()
root.title("乌托邦")
root.geometry("300x200")# 设置窗口大小

def flower1(e):
    messagebox.showinfo("礼物盒子", "送你一朵小红花")

def flower2():
    messagebox.showinfo("礼物盒子", "送你一朵小黄花")

b1 = tk.Button(root, text="点我试试啊", bg="red")
b1.pack()
b1.bind("<Button-1>", flower1)# 绑定鼠标左键点击事件

b2 = tk.Button(root, text="点我试试啊", bg="yellow", command=flower2)
b2.pack()

root.mainloop()


这样,点击红色按钮时会触发 `flower1`,点击黄色按钮时会触发 `flower2

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页: [1]
查看完整版本: 开始学习GUI 01