xibu001 发表于 2023-3-20 10:08:04

这个程序怎么实现不了。


from tkinter import *
from tkinter import messagebox
class Application(Frame):
    """"一个经典的GUI程序类的写法"""
    def __int__(self,master=None):
      super().__init__(master)
      self.master=master
      self.pack()
      self.createWidget()
    def createWidget(self):
      """"创建组件"""
      self.btn01=Button(self)
      self.btn01["text"]="点击送花"
      self.btn01.pack()
      self.btn01["commmand"] = self.songhua
      #创建一个退出按钮
      self.btnQuit=Button(self, text="退出", command=root.destroy)
      self.btnQuit.pack()
    def songhua(self):
      messagebox("送花","送你999朵玫瑰花")
if __name__ == '__main__':
    root=Tk()
    root.geometry("400x130+200+300")
    root.title="一个经典GUI程序的测试"
    app=Application(master=root)
    root.mainloop()

isdkz 发表于 2023-3-20 10:16:02

程序中有三个错误:

1、构造函数名错误:将 def __int__(self,master=None): 改为 def __init__(self, master=None):。(init 少了一个 i)

2、self.btn01["commmand"] 拼写错误,应该是 self.btn01["command"]。 (command多了一个m)

3、songhua函数中的messagebox("送花","送你999朵玫瑰花")错了,messagebox是一个模块,不可调用,应该是 messagebox.showinfo("送花", "送你999朵玫瑰花") 才对

修复后的代码如下:

from tkinter import *
from tkinter import messagebox

class Application(Frame):
    """一个经典的GUI程序类的写法"""
    def __init__(self, master=None):
      super().__init__(master)
      self.master = master
      self.pack()
      self.createWidget()

    def createWidget(self):
      """创建组件"""
      self.btn01 = Button(self)
      self.btn01["text"] = "点击送花"
      self.btn01.pack()
      self.btn01["command"] = self.songhua

      # 创建一个退出按钮
      self.btnQuit = Button(self, text="退出", command=root.destroy)
      self.btnQuit.pack()

    def songhua(self):
      messagebox.showinfo("送花", "送你999朵玫瑰花")

if __name__ == '__main__':
    root = Tk()
    root.geometry("400x130+200+300")
    root.title("一个经典GUI程序的测试")
    app = Application(master=root)
    root.mainloop()

xibu001 发表于 2023-3-20 10:57:28

非常感谢,刚开始学习。承蒙指出错误之处。

当初约定 发表于 2023-3-21 10:09:10

xibu001 发表于 2023-3-20 10:57
非常感谢,刚开始学习。承蒙指出错误之处。

如果感谢的话给二楼设置最佳答案并且结贴吧{:10_256:}

xibu001 发表于 2023-3-21 13:41:12

给二楼设置了最佳答案。
页: [1]
查看完整版本: 这个程序怎么实现不了。