lugl4313820 发表于 2022-7-25 12:38

【米尔MYB-YT507开发板试用体验】tkinter Button学习

<p>在前面Lable学习的基础上学习使用button控件,还控制lable显示的内容:</p>

<p>普通的按钮很容易被创建,仅仅指定按钮的内容(文本、位图、图象)和一个当按钮被按下时的回调函数即可:</p>

<p><strong>b = tk.Button(window, text=&quot;hit me&quot;, command=hit_me)</strong></p>

<p>将原来的工程另存为tk_button.py</p>

<pre>
<code>#!/usr/bin/env python
# _*_ coding:utf-8 _*_
# quthor lugl


import tkinter as tk # 使用Tkinter前需要先导入

# 第1步,实例化object,建立窗口window
window = tk.Tk()

# 第2步,给窗口的可视化起名字
window.title("米尔示例")

# 第3步,设定窗口的大小
window.geometry('500x300')

#第4步,在图形界面上设定标签
var = tk.StringVar() #将lable标签的内容设置为字符型,用var来接收hit_me函数的传出内容用以显示在标签上
lab = tk.Label(window, textvariable=var, bg='green',font=('宋体', 12), width=30, height=2)
# 说明: bg为背景,font为字体,width为长,height为高,这里的长和高是字符的长和高,比如height=2,就是标签有2个字符这么高

# 第5步,放置标签
lab.pack()# Label内容content区域放置位置,自动设节尺寸
# 放置Lable的方法有:1、.pack;2、 place()

# 定义一个函数功能(内容自己自己编写),供点击Button按键时调用,调用命令参数command=函数名
on_hit = None
def hit_me():
    global on_hit
    if on_hit == False:
      on_hit = True
      var.set("你按我单次!")
    else:
      on_hit = False
      var.set("你按我双次!")
# 第6步,在窗口界面设置放置Button按键
b = tk.Button(window, text='按我',font=('宋体', 12), width=10,height=1,command=hit_me)
b.pack()

# 第7步,主窗口循环显示
window.mainloop()
# 注意,loop因为是循环的意思,window.mainloop就会让window不断的刷新,如果没有mainloop,就是一个静态的window,传入进去的值就不会有循环,mainloop就相当于一个很大的while循环,有个while,每点击一次就会更新一次,所以我们必须要有循环
# 所有的窗口文件都必须有类似的mainloop函数,mainloop是窗口文件的关键的关键。</code></pre>

<p>将程序文件拷到开发析上 运行python3 tk_button.py</p>

<p>&nbsp; 按下按键后:</p>

<p>&nbsp;再按:</p>

<p>&nbsp;这样的就实现Button的功能。</p>

wangerxian 发表于 2022-7-25 14:19

<p>这个界面是在开发板上运行的?</p>

lugl4313820 发表于 2022-7-25 15:20

wangerxian 发表于 2022-7-25 14:19
这个界面是在开发板上运行的?

<p>对的,python下面的图形界面开发,跟pyqt、pyside一样的。</p>
页: [1]
查看完整版本: 【米尔MYB-YT507开发板试用体验】tkinter Button学习