python_tkinter组件
1.按钮
# 按钮
# bg设置背景色
btn = tkinter.Button(root,text = '按钮',bg = 'red')
btn.pack()
# fg设置前景色(文字颜色)
btn1 = tkinter.Button(root,text = '按钮',fg = 'blue')
btn1.pack()
# font设置字体大小和样式(字体,大小,粗体,斜体等)
btn2 = tkinter.Button(root,text = '按钮',font = ('楷体',20,'italic'))
btn2.pack()
# 设置按钮高度和宽度单位:字符大小(不推荐用)
btn3 = tkinter.Button(root,text = '按钮',height = 4,width = 10)
btn3.pack()
# 设置多行文本的对齐方式right/left
btn4 = tkinter.Button(root,text = '孙悟空大\n闹天宫',justify = 'right')
btn4.pack()
# state 状态 active(激活), disabled(不能点), or normal(正常)
btn5 = tkinter.Button(root,text = '按钮',state = 'disabled')
btn5.pack()
# 边框粗细
btn5 = tkinter.Button(root,text = '按钮',bd = 5)
btn5.pack()
2.复选框
# 设置文本方法1(文本不变)
checkbutton = tkinter.Checkbutton(root,text = '同意此协议')
checkbutton.pack() # 设置文本方法2(可变文本)
# 设置显示内容的tkinter变量
text = tkinter.StringVar()
# 设置内容
text.set('同意嫁给我')
checkbutton1 = tkinter.Checkbutton(root,textvariable = text)
checkbutton1.pack()
# 设置复选框勾选与否的值,当勾选或者不勾选时 result会获取一个值
result = tkinter.IntVar() # 设置操作chenckbutton的方法:根据是否勾选获取值
def func():
print(result.get()) # onvalue = 66,offvalue = 77 勾选时值为66默认为1,不勾选时为77默认为77
checkbutton = tkinter.Checkbutton(root,text = '同意此协议',variable =result,command = func,onvalue = 66,offvalue = 77)
checkbutton.pack()
3.单行文本输入框
# 单行文本输入框
# 创建组件
# 宽度50:表示输入50个字符那么长/设置~背景色,前景色(输入的文字颜色)
username = tkinter.Entry(root,width = 50,bg = 'blue',fg = 'yellow')
username.pack()
# 密码
# show = '*':文本框中的内容显示为*
password = tkinter.Entry(root,show = '*')
password.pack()
# 没办法往里面写东西
test = tkinter.Entry(root,state = 'disabled')
test.pack()
4.Frame布局框架
# 创建框架1
frame1 = tkinter.Frame(root,bg = 'red',width = 500,height = 100)
frame1.pack(side = 'top',)
# 在框架中摆放
btn1 = tkinter.Button(frame1,text = '按钮1')
btn1.pack(side = 'left')
btn2 = tkinter.Button(frame1,text = '按钮2')
btn2.pack(side = 'left')
btn3 = tkinter.Button(frame1,text = '按钮3')
btn3.pack(side = 'left')
# 创建框架2
frame2 = tkinter.Frame(root,bg = 'blue',width = 500,height = 100)
frame2.pack(side = 'top')
# 在框架中摆放
btn1 = tkinter.Button(frame2,text = '按钮1')
btn1.pack(side = 'left',padx = 20)
btn2 = tkinter.Button(frame2,text = '按钮2')
btn2.pack(side = 'left',padx = 20)
btn3 = tkinter.Button(frame2,text = '按钮3')
btn3.pack(side = 'left',padx = 20)
一般配合pack()布局方式使用,一般很少用到。
5.LabelFrame(标签框架)
示例:
# 创建组件
labelframe = tkinter.LabelFrame(root,text = '四大美女')
labelframe.pack(ipadx = 100)
# 将其他组件摆放到labelframe中
btn1 = tkinter.Button(labelframe,text = '王昭君')
btn1.pack()
btn2 = tkinter.Button(labelframe,text = '西施')
btn2.pack()
btn3 = tkinter.Button(labelframe,text = '貂蝉')
btn3.pack()
btn4 = tkinter.Button(labelframe,text = '杨玉环')
btn4.pack()
6.Lable标签
示例:
# 创建组件
label = tkinter.Label(root,text = '这是一个标签!')
label.pack()
7.Listbox列表菜单
示例:
# 设置listbox的内容
names = ['杨玉环','西施','貂蝉','王昭君','潘金莲']
# 将数据转换为tkinter的字符串变量
students = tkinter.StringVar(value=names) # 创建组件
listbox = tkinter.Listbox(root,listvariable = students)
listbox.pack()
8.Menu菜单
示例:
# 1创建主菜单
bigmenu = tkinter.Menu(root) # 2创建子菜单 设置tearoff = 0,让菜单不会飘出窗口
filemenu = tkinter.Menu(bigmenu,tearoff = 0)
# 子菜单可以添加功能
filemenu.add_command(label = '打开文件')
filemenu.add_command(label = '保存文件')
filemenu.add_command(label = '导出文件')
# 横线分割
filemenu.add_separator()
filemenu.add_command(label = '退出')
# 3将子菜单加入主菜单
bigmenu.add_cascade(label = '文件',menu = filemenu) # 2创建子菜单
editmenu = tkinter.Menu(bigmenu)
# 3将子菜单加入主菜单
bigmenu.add_cascade(label = '修改',menu = editmenu) # 4将主餐单加入窗口
root.config(menu = bigmenu)
9.OptionMenu设置菜单
示例:
# 创建变量接受结果
result = tkinter.StringVar()
result.set('请选择一个问题:')
# 创建组件
optionmenu = tkinter.OptionMenu(root,result,'你的初恋是谁?','你的初中老师是谁?','你的高中老师是谁?')
optionmenu.pack()
10.Menubutton菜单按钮
示例:
# 创建组件
menbutton = tkinter.Menubutton(root,text = '选择性别:')
menbutton.pack()
# 添加选项
# 设置变量
sex = tkinter.StringVar()
# tearoff = 0 取消菜单飘出
menu = tkinter.Menu(menbutton,tearoff = 0)
menu.add_radiobutton(label = '男',variable = sex)
menu.add_radiobutton(label = '女',variable = sex) # 将菜单配置到组件
menbutton.config(menu = menu)
11.PanedWindow划分窗口
示例:
# 创建组件 垂直摆放:vertical 水平摆放:horizontal
panedwindow = tkinter.PanedWindow(root,orient = 'horizontal')
# 添加组件
btn1 = tkinter.Button(panedwindow,text = '按钮1123412341234')
btn2 = tkinter.Button(panedwindow,text = '按钮2')
# 摆放组件
panedwindow.add(btn1)
panedwindow.add(btn2)
# 填满整个界面
panedwindow.pack(fill = 'both',expand = 'yes')
12.Radiobutton单选按钮
示例:
# 创建组件
sex = tkinter.StringVar()# 设置变量 radio1 = tkinter.Radiobutton(root,text = '男',variable = sex,value = 'man')
radio1.pack()
radio2 = tkinter.Radiobutton(root,text = '女',variable = sex,value = 'woman')
# 默认选中'女'
radio2.select()
radio2.pack()
13.Scale滑动条
示例:
# 创建组件 默认竖着,设置横向:orient = tkinter.HORIZONTAL 设置数值:from_ = 50,to = 80 设置单位:resolution = 0.5
scale = tkinter.Scale(root,orient = tkinter.HORIZONTAL,from_ = 50,to = 80,resolution = 0.5)
scale.pack()
14.Scrollbar滚动条
示例:
# 创建组件:简单的滚动条效果
scroll = tkinter.Scrollbar(root)
scroll.pack(fill = 'y',side = 'right')
15.Spinbox类型限制输入框(数字)
示例:
# 创建组件 设置范围:from_ = 0,to = 100 设置增加单位:increment = 0.5
spinbox = tkinter.Spinbox(root,from_ = '',to = '',increment = 0.5)
spinbox.pack()
16.Text多行文本输入框
示例:
# 创建组件
text = tkinter.Text(root,width = 50,height = 10)
text.pack()
# 设置值:从第0行第0列开始插入文本
text.insert('0.0','你好啊~小姐姐')
17.Toplevel弹出窗口
示例:
# 函数
def talk():
# 新窗口
newroot = tkinter.Toplevel()
# 创建组件:弹出新窗口 点击按钮执行函数:command = talk
btn = tkinter.Button(root,text = '点击开始对话~',command = talk)
btn.pack()
python_tkinter组件的更多相关文章
- python_tkinter组件摆放方式
1.最小界面组成 # 导入tkinter模块 import tkinter # 创建主窗口对象 root = tkinter.Tk() # 设置窗口大小(最小值:像素) root.minsize(30 ...
- ExtJS 4.2 评分组件
上一文章是扩展ExtJS自带的Date组件.在这里将创建一个评分组件. 目录 1. 介绍 2. 示例 3. 资源下载 1. 介绍 代码参考的是 Sencha Touch 2上的一个RatingStar ...
- react组件的生命周期
写在前面: 阅读了多遍文章之后,自己总结了一个.一遍加强记忆,和日后回顾. 一.实例化(初始化) var Button = React.createClass({ getInitialState: f ...
- react-router 组件式配置与对象式配置小区别
1. react-router 对象式配置 和 组件式配置 组件式配置(Redirect) ----对应---- 对象式配置(onEnter钩子) IndexRedirect -----对应-- ...
- Angular2入门系列教程3-多个组件,主从关系
上一篇 Angular2项目初体验-编写自己的第一个组件 好了,前面简单介绍了Angular2的基本开发,并且写了一个非常简单的组件,这篇文章我们将要学会编写多个组件并且有主从关系 现在,假设我们要做 ...
- Angular2入门系列教程2-项目初体验-编写自己的第一个组件
上一篇 使用Angular-cli搭建Angular2开发环境 Angular2采用组件的编写模式,或者说,Angular2必须使用组件编写,没有组件,你甚至不能将Angular2项目启动起来 紧接着 ...
- .NET Core 首例 Office 开源跨平台组件(NPOI Core)
前言 最近项目中,需要使用到 Excel 导出,找了一圈发现没有适用于 .NET Core的,不依赖Office和操作系统限制的 Office 组件,于是萌生了把 NPOI 适配并移植到 .NET C ...
- .NetCore中的日志(1)日志组件解析
.NetCore中的日志(1)日志组件解析 0x00 问题的产生 日志记录功能在开发中很常用,可以记录程序运行的细节,也可以记录用户的行为.在之前开发时我一般都是用自己写的小工具来记录日志,输出目标包 ...
- BootStrap_02之全局样式及组件
1.BootStrap指定的四种屏幕尺寸: ①超大PC屏幕--lg(large):w>=1200px: ②中等PC屏幕--md(medium):1200px>w>=992px: ③P ...
随机推荐
- Java中的一些关键字:static,final,和abstract,interface,以及访问修饰符说明
1.关键字可以修饰的说明: 关键字 属性(是否可修饰) 方法(是否可修饰) 类(是否可修饰) static 是 是 是 final 是 是 是 abstract 否 是 是 2.关键字的意义: 关键字 ...
- solr的使用
一,下载,安装 https://lucene.apache.org/solr/ 二, mac下使用 下载二进制包后,解压 step 1 进入solr目录: cd solr-8.2.0 step 2 进 ...
- RxJava基本使用
更多文章请点击链接:http://77blogs.com/?p=162 转载请标明出处:https://www.cnblogs.com/tangZH/p/12088300.html,http://77 ...
- 龙芯 飞腾 intel的 OpenBenchMarking数据
1. 今天从openbenchmarking 里面进行了简单的查找. 数据主要为: 机器配置: LS3A3000的数据为: 来源: https://openbenchmarking.org/resul ...
- Intellj IDEA快捷键入门 之 Ctrl+Space(空格)
Intellj IDEA快捷键入门 之 Ctrl+Space(空格) 时间:2019/11/28 系统:Win10系统 背景: Win10系统下,想把ctrl+space(空格)切换输入法取消, 以防 ...
- Kubernetes---Pod phase
⒈Pod phase Pod的status字段是一个PodStatus对象,PodStatus中有一个 phase字段. Pod的相位(phase)是Pod 在其生命周期中的简单宏观概述.该阶段并不是 ...
- c++ vector容器
https://www.runoob.com/w3cnote/cpp-vector-container-analysis.html
- matplotlib 画图中的basemap安装问题
在我用matplotlib画图是会用到,basemap这个库,但是直接安装却会出现问题: 使用这条安装命令就能够安装功能了: conda install -c conda-forge basemap= ...
- ts转js 并压缩
1,在线编译,进入typescript官网http://www.typescriptlang.org/,点击里面的playground就可以直接写代码了. 2,在本地编译运行Typescript需要使 ...
- StorageClass-动态PVC
StorageClass 之前我们部署了PV 和 PVC 的使用方法,但是前面的 PV 都是静态的,什么意思?就是我要使用的一个 PVC 的话就必须手动去创建一个 PV,我们也说过这种方式在很大程度上 ...