Python基础 - tkinter 窗口

tkinter 是python 自带的可编辑的GUI界面

标签和按钮

定义 window 窗口 和 window的一些属性, 然后书写窗口内容, 最后执行window.mainloop让窗口活起来。

import Tkinter as tk
window = tk.Tk()
window.title(‘my window’)
window.geometry(‘200x100’)
window.mainloop()

建立一个用来描述的标签 tk.Label, 比如

l = tk.Label(window, 
    text='OMG! this is TK!',    # 标签的文字
    bg='green',     # 背景颜色
    font=('Arial', 12),     # 字体和字体大小
    width=15, height=2  # 标签长宽
    )
l.pack()    # 固定窗口位置

引入按钮 tk.Button 的概念, 每点一次按钮, 标签变化一次. 用以下内容替换上面的标签. 并把需要变化的文字存成变量 var

var = tk.StringVar()    # 这时文字变量储存器
l = tk.Label(window, 
    textvariable=var,   # 使用 textvariable 替换 text, 因为这个可以变化
    bg='green', font=('Arial', 12), width=15, height=2)
l.pack() 

接着我们来做 按钮 tk.Button:

b = tk.Button(window, 
    text='hit me',      # 显示在按钮上的文字
    width=15, height=2, 
    command=hit_me)     # 点击按钮式执行的命令
b.pack()    # 按钮位置

点击是的命令用 if else 语句来判断. 用 on_hit 来判断当前状态。

on_hit = False  # 默认初始状态为 False
var = tk.StringVar()    # 这时文字变量储存器
def hit_me():
    global on_hit
    if on_hit == False:     # 从 False 状态变成 True 状态
           on_hit = True
        var.set('you hit me')   # 设置标签的文字为 'you hit me'
    else:       # 从 True 状态变成 False 状态
        on_hit = False
        var.set('') # 设置 文字为空

完整代码:

import Tkinter as tk
window = tk.Tk()
window.title('my window')
window.geometry('200x100')

on_hit = False  # 默认初始状态为 False
var = tk.StringVar()    # 这时文字变量储存器
def hit_me():
    global on_hit
    if on_hit == False:     # 从 False 状态变成 True 状态
        on_hit = True
        var.set('you hit me')   # 设置标签的文字为 'you hit me'
    else:       # 从 True 状态变成 False 状态
        on_hit = False
        var.set('') # 设置 文字为空

l = tk.Label(window, 
    textvariable=var,   # 使用 textvariable 替换 text, 因为这个可以变化
    bg='green', font=('Arial', 12), width=15, height=2)
l.pack() 
b = tk.Button(window, 
    text='hit me',      # 显示在按钮上的文字
    width=15, height=2, 
    command=hit_me)     # 点击按钮式执行的命令
b.pack()    # 按钮位置
window.mainloop()

Entry & Text

实例

插入文本测试
import Tkinter as tk
window = tk.Tk()
window.title(‘my window’)
window.geometry(‘500x500’)
#因为Python的执行顺序是从上往下,所以函数

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值