import tkinter
import tkinter.messagebox as messagebox



# 窗口
root = tkinter.Tk()

'''
    x: 相当于是 * ,生活中：500*500  宽度500 高度500
    400x300: 窗口的高度为400，高度为300
    +400: 窗口距离屏幕最左边400，如果是-400的话，说明窗口距离屏幕最右边400
    +300：窗口距离屏幕最上边300，如果是-300的话，说明窗口距离屏幕最下边300
'''
root.geometry("400x300+400+300")


'''
    这个是窗口的标题
'''
root.title("第一个GUI程序")

'''
    得到一个按钮， 光得到按钮不行啊，你得把按钮给放到窗口里，
    所以要调用Button(root)，这就是把按钮给放到窗口里，这样窗口就会显示按钮了
'''
bottom = tkinter.Button(root)

'''
    给按钮添加名称
'''
bottom['text'] = "点击我就送花"

'''
    压缩按钮，如果不调用该方法来压缩按钮的话，那么整个窗口就是一个按钮，这样肯定是不行的
    所以，调用了pack()方法来压缩按钮后，按钮就会变成一个小按钮，而不是跟窗口一样大
'''
bottom.pack()

'''
    给按钮添加事件：送花 
    ps：按钮不需要添加点击事件，点击事件，python自动添加了，就在mainloop()事件循环里
'''
def songhua(e):
    # 按钮被鼠标单机左键 点击后，弹出一个信息窗口：内容是："送你一朵花" 窗口主题是："message"
    messagebox.showinfo("message", "送你一朵花")
    # 当窗口点击了按钮后， 后台就会打印一条 "送花了" 的信息，方便我们后台查看
    print("送花了")

'''
    窗口 绑定事件：这里是绑定了按钮
    <Button-1>  表示的是：按钮会在鼠标左键点击后触发事件
'''
root.bind('<Button-1>', songhua)

root.mainloop()   # 事件循环， 它就是是一个窗口， 窗口里全部都是时间，比如鼠标左键点击按钮会触发事件....

















