美文网首页
tkinter学习系列(二)之窗口的设置

tkinter学习系列(二)之窗口的设置

作者: 张一根 | 来源:发表于2019-02-03 21:10 被阅读0次

    [TOC]

    目录:

    1.窗体的最小框架

    2.窗体的基本设置

    3.窗体的外形设置

    (一)窗体的最小框架

    1.说明:

    需要导入标准库:
    import tkinter

    2.源代码:

    # 导入模块,并取别名
    import tkinter as tk
    # 实例化一个窗体对象
    win = tk.Tk()
    # 设置窗体的大小(300x300),与出现的位置距离窗体左上角(+150+150)
    win.geometry("300x300+150+150")
    # 进入消息循环,显示窗体
    win.mainloop()
    

    3.实现效果:

    01.png

    (二)窗体的基本设置

    1.说明:

    (1)添加标题:

    # 设置标题
    win.title("标题")
    

    (2)添加图标:

    图标:必须是以 .ico 为后缀的图标文件,放于同目录下。

    # 设置图标,以QQ头为例
    win.iconbitmap("app.ico")
    

    (3)添加背景:

    颜色:可以用英文名,也可以用RGU,十六进制表示的颜色。

    # 设置背景色,以“蓝色”为例
    win["background"] = "blue"
    

    2.完整代码:

    # 导入模块,并去别名
    import tkinter as tk
    # 实例化一个窗体对象
    win = tk.Tk()
    # 设置窗体的大小(300x300),与出现的位置距离窗体左上角(+150+150)
    win.geometry("300x300+150+150")
    # 设置标题
    win.title("标题")
    # 设置图标,以QQ头为例
    win.iconbitmap("app.ico")
    # 设置背景色,以“蓝色”为例
    win["background"] = "blue"
    # 进入消息循环,显示窗体
    win.mainloop()
    

    3.实现效果:

    02.png

    (三)窗体的外形设置

    1.说明:

    (1)设置透明度:

    透明度的值是:0~1 可以是小数点,0:全透明;1:全不透明

    win.attributes("-alpha", 0.6)
    

    (2)设置工具栏样式:

    工具样式:True 只有退出按钮,也没有图标; False 正常的窗体样式

    win.attributes("-toolwindow", True)
    

    透明度与工具栏的效果图:

    03.png

    (3)设置全屏:

    全屏模式:True 全屏;False 正常显示

    win.attributes("-fullscreen", True)
    

    (4)设置窗体置顶

    窗体置顶:True 所有窗口中处于最顶层;False 正常显示

    win.attributes("-topmost", True)
    

    (5)设置成脱离工具栏

    脱离工具栏:True 没有工具栏按钮;False 正常显示

    win.overrideredirect(True)
    

    脱离工具栏的效果图:

    04.png

    2.完整代码:

    # 导入模块,并去别名
    import tkinter as tk
    # 实例化一个窗体对象
    win = tk.Tk()
    # 设置窗体的大小(300x300),与出现的位置距离窗体左上角(+150+150)
    win.geometry("300x300+150+150")
    # 设置标题
    win.title("标题")
    # 设置图标,以QQ头为例
    win.iconbitmap("app.ico")
    # 设置背景色,以“蓝色”为例
    win["background"] = "blue"
    # 设置透明度
    win.attributes("-alpha", 0.6)
    # 设置窗口为工具样式:
    win.attributes("-toolwindow", True)
    # # 设置全屏:
    win.attributes("-fullscreen", False)
    # 设置窗体置顶
    win.attributes("-topmost", True)
    # 设置成脱离工具栏
    win.overrideredirect(False)
    # 进入消息循环,显示窗体
    win.mainloop()
    

    3.实现效果:

    05.png

    (四)窗体的三个方法:

    1.获取屏幕的大小

    (1)语法说明:

    # 获取屏幕的大小;
    screen_height = root.winfo_screenheight()
    screen_width = root.winfo_screenwidth()
    

    (2)源代码:

    import tkinter as tk
    root = tk.Tk()
    # 获取屏幕的大小;
    screen_height = root.winfo_screenheight()
    screen_width = root.winfo_screenwidth()
    print("你电脑的屏幕的高度是:", screen_height)
    print("你电脑的屏幕的宽度度是:", screen_width)
    root.mainloop()
    

    (3)输出结果:

    06.png

    2.获取窗体的大小

    (1)语法说明:

    # 获取屏幕的大小;
    win_height = root.winfo_height()
    win_width = root.winfo_width()
    

    需要注意的是:要用root.update()方法,才能看到更新后的数值

    (2)源代码:

    import tkinter as tk
    root = tk.Tk()
    root.geometry("600x500")
    # 更新窗体
    root.update()
    # 获取屏幕的大小;
    win_height = root.winfo_height()
    win_width = root.winfo_width()
    print("控件的高度是:", win_height)
    print("控件的宽度度是:", win_width)
    root.mainloop()
    

    (3)输出结果:

    07.png

    3.获取窗体的位置

    (1)语法说明:

    # 获取窗体的位置
    win_x = win.winfo_x()
    win_y = win.winfo_y()
    

    (2)源代码:

    import tkinter as tk
    win = tk.Tk()
    win.geometry("600x500")
    
    
    def change(event):
        win.update()
        # 获取窗体的位置
        win_x = win.winfo_x()
        win_y = win.winfo_y()
        print(win_x)
        print(win_y)
    
    
    # 绑定事件,窗体的改变事件
    win.bind("<Configure>", change)
    win.mainloop()
    

    (3)输出结果:

    当我用鼠标拖动窗体时,更新了一系列的位置数值

    08.png

    相关文章

      网友评论

          本文标题:tkinter学习系列(二)之窗口的设置

          本文链接:https://www.haomeiwen.com/subject/rwrusqtx.html