tkinter常用组件

tkinter说明和基本使用

  • 导入tkinter包
  • 初始化
  • 窗口
  • 组件部分
    • Button
    • Text
      • 如何加载文本
      • 如何获取文本框的值
      • 如何删除文本框的内容
    • Frame
    • Combobox (下拉框)
      • 设置选中
      • 绑定回调
      • 获取选中的值
    • Checkbutton(多选框)
      • 全选程序
      • 全取消程序

导入tkinter包

from tkinter import *
import tkinter as tk

初始化

简单运行tkinter程序

init_window = Tk()  # 实例化出一个父窗口
init_window.mainloop() # 父窗口进入循环

tkinter常用组件_第1张图片

窗口

init_window_name.title("title")  # 窗口名
self.init_window_name.geometry('800x600+10+10') # 设置窗口大小,窗口初始位置

以上是部分窗口属性设置,更多的查阅其他资料

组件部分

说明:
组件对象创建后,要记得,需要进行pack或者grid调用,否则是不会展示在窗口上。
PS:

  1. 同一个父控件,要统一用pack 或者 grid ,不能混合使用。控件1父控件是父窗口,控件2父控件是Frame,则可以不一样
  2. pack介绍: tkinter-pack布局详解
  3. grid介绍:《tkinter实用教程四》tkinter 布局管理 Grid

Button

Button(master=init_window_name, text="确认", bg="lightblue", width=100, command=self.addTitle)

参数介绍:
master:绑定到某个父控件(父窗口或者Frame)
text:展示的控件文本
bg:控件的颜色
width:宽度,单位是px
command:回调函数
height:高度

Text

可输入可复制的文本框

Text(init_window,width = 100, height=1,font=14).pack()

参数介绍
font:文本大小

如何加载文本

oText.insert("insert", sDesc)

如何获取文本框的值

oText.get(1.0,END).strip() # 返回一个字符串

如何删除文本框的内容

oText.delete(0,END)

Frame

存放控件使用的容器

Frame(init_window_name,width = 200,height = 100)

Combobox (下拉框)

ttk.Combobox( # 第几节
            master=m_fInput,  # 父容器
            height=10,  # 高度,下拉显示的条目数量
            width=10,  # 宽度
            state="readonly",  # 设置状态 normal(可选可输入)、readonly(只可选)、 disabled
            cursor="arrow",  # 鼠标移动时样式 arrow, circle, cross, plus...
            font=("", 10),  # 字体
            textvariable=value,  # 通过StringVar设置可改变的值
            values=[ i for i in range(1,13)],  # 设置下拉框的选项
        )

设置选中

oCombobox.current(0)

绑定回调

oCombobox.bind("<>", lambda event: choose(self.oCombobox.get(),"ClassNo"))

获取选中的值

oCombobox.get()

Checkbutton(多选框)

for i in range(1,6):
            # BoolVar = BooleanVar()
            BoolVar = StringVar(value=str(i))
            text = str(i)
            checkBtn = Checkbutton(m_NewFrame,text=text,variable = BoolVar, offvalue='',command=self.CheckBoxUpdate)
            self.checkList.append(checkBtn)
            self.tCheckBoxVar.append(BoolVar)
            checkBtn.grid(row=0, column=i, pady=0, padx=0)
        self.tCheckBoxVar.append(StringVar())

全选程序

v = self.tCheckBoxVar
        if v[-1].get():
            for index in range(0,5):
                v[index].set(item)

全取消程序

v = self.tCheckBoxVar
        if v[-1].get():
            for index in range(0,5):
                v[index].set("")

本资料不全,内容有限供参考

你可能感兴趣的:(Python,python)