面向对象方法创建GUI

# 通过Application组织整个GUI程序,类Application继承了Frame
# 及通过继承拥有了父类的特性。通过构造函数__init__()初始化窗口中的对象,
# 通过createWidgets()方法创建窗口中的对象

# Frame是一个tkinter组件,表示一个矩形的区域
# Frame用于放置其他组件


'''
用面向对象的方式写GUI
'''


from tkinter import *
from tkinter import messagebox

class Application(Frame):  # 继承Frame
    '''对该类的作用进行说明'''

    def __init__(self, master=None):  # 创建构造函数,用于写明变量构造组件对象
        # master初始是设置为空值
        super().__init__(master)  # 调用父类,这里相当于给了Frame
        self.master = master    # 这里的master相当于给自己的这个类
        self.pack()  # 布局管理器,进行放置
        self.creatWidget()  # 实现调用

    def creatWidget(self):  # 通过createWidgets()方法创建窗口中的对象
        '''创建组件'''
        self.btn01 = Button(self)  # self为当前容器组件
        self.btn01['text'] = 'give you floures'
        self.btn01.pack()
        self.btn01['command'] = self.songhua

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

    def songhua(self):
        messagebox.showinfo("送花", "give you 99 floures")


if __name__ == '__main__':

    root = Tk()
    root.geometry('400x400+300+300')
    root.title("面向对象方法的GUI")
    APP = Application(master=root)  # 创建实例化对象,master是参数

    root.mainloop()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值