• Python图形编程探索系列-05-用控制变量构建对话程序


    跳转到自己的博客


    控制变量

    变量 符号 意义 默认值
    1 var = tk.BooleanVar() 布尔型 0
    2 var = tk.StringVar() 字符串控制变量 空字符串
    3 var = tk.IntVar() 整数控制变量 0
    4 var = tk.DoubleVar() 小数控制变量 0.0

    创建控制变量

    var = StringVar()

    设置控制变量的值

    var.set("set a value.")

    获得控制变量的值

    var.get("get a value from the control parameter.")

    控制变量使用实例

    ``` import tkinter as tk

    root = tk.Tk()

    创建一个label标签,在上面存放位图或者文字

    labelx = tk.Label(root, bitmap='questhead', compound=tk.LEFT)
    var = tk.StringVar()
    var.set("This is a dialogue.")
    labelx.config(textvariable=var)
    labelx.config(bg='cyan')
    labelx.config(font=('Times New Roman', 20, 'bold'))
    labelx.config(relief=tk.FLAT)
    labelx.config(bd=5)

    点击问题按钮后,反应的函数

    def askvar():
    var.set("How are you?")

    点击回答按钮后,反应的函数

    def responsevar():
    var.set("I'm fine. Thank you for your asking.")

    按钮1创建

    button1 = tk.Button(root, text="问题", command=askvar)
    button1.config(bg='yellow')
    button1.config(font=('楷书', 20, 'italic'))
    button1.config(relief=tk.GROOVE)

    按钮2创建

    button2 = tk.Button(root, text="回答", command=responsevar)
    button2.config(bg='red')
    button2.config(font=('楷书', 20, 'italic'))
    button2.config(relief=tk.RIDGE)

    对创建的组件进行排兵布阵

    labelx.pack(side=tk.TOP)
    button1.pack(side=tk.LEFT)
    button2.pack(side=tk.RIGHT)

    root.mainloop()

    **初始运行状态**
    
    ![](https://img2018.cnblogs.com/blog/1372901/201810/1372901-20181020154911480-1785193472.jpg)
    
    
    **点击问题后的反应**
    
    ![](https://img2018.cnblogs.com/blog/1372901/201810/1372901-20181020154916039-555176921.jpg)
    
    
    **点击回答后的反应**
    
    ![](https://img2018.cnblogs.com/blog/1372901/201810/1372901-20181020154923787-124371659.jpg)
    
    
    <h1 style="background:green;">总结</h1>
    程序有了变数才有了心动的地方,blue sky是我们向往的地方,但是雾霾Hazel挡住了我们的视野,今天又是阴天,但我有了改变。
  • 相关阅读:
    玩转oracle学习第五天
    硅谷科技巨头最刁钻面试题集锦
    Python模拟登录wap版百度贴吧+自己主动回贴
    Flask 源代码阅读笔记
    Spark1.0.0 生态圈一览
    listView.getChildAt(i)时java.lang.NullPointerException
    选择排序
    JNI 系统钩子
    MySQL Cluster2个数据节点压力测试--mysqlslap工具压400W写
    VVDocumenter
  • 原文地址:https://www.cnblogs.com/brightyuxl/p/9822009.html
Copyright © 2020-2023  润新知