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组件的更多相关文章

  1. python_tkinter组件摆放方式

    1.最小界面组成 # 导入tkinter模块 import tkinter # 创建主窗口对象 root = tkinter.Tk() # 设置窗口大小(最小值:像素) root.minsize(30 ...

  2. ExtJS 4.2 评分组件

    上一文章是扩展ExtJS自带的Date组件.在这里将创建一个评分组件. 目录 1. 介绍 2. 示例 3. 资源下载 1. 介绍 代码参考的是 Sencha Touch 2上的一个RatingStar ...

  3. react组件的生命周期

    写在前面: 阅读了多遍文章之后,自己总结了一个.一遍加强记忆,和日后回顾. 一.实例化(初始化) var Button = React.createClass({ getInitialState: f ...

  4. react-router 组件式配置与对象式配置小区别

    1. react-router 对象式配置 和 组件式配置    组件式配置(Redirect) ----对应---- 对象式配置(onEnter钩子) IndexRedirect -----对应-- ...

  5. Angular2入门系列教程3-多个组件,主从关系

    上一篇 Angular2项目初体验-编写自己的第一个组件 好了,前面简单介绍了Angular2的基本开发,并且写了一个非常简单的组件,这篇文章我们将要学会编写多个组件并且有主从关系 现在,假设我们要做 ...

  6. Angular2入门系列教程2-项目初体验-编写自己的第一个组件

    上一篇 使用Angular-cli搭建Angular2开发环境 Angular2采用组件的编写模式,或者说,Angular2必须使用组件编写,没有组件,你甚至不能将Angular2项目启动起来 紧接着 ...

  7. .NET Core 首例 Office 开源跨平台组件(NPOI Core)

    前言 最近项目中,需要使用到 Excel 导出,找了一圈发现没有适用于 .NET Core的,不依赖Office和操作系统限制的 Office 组件,于是萌生了把 NPOI 适配并移植到 .NET C ...

  8. .NetCore中的日志(1)日志组件解析

    .NetCore中的日志(1)日志组件解析 0x00 问题的产生 日志记录功能在开发中很常用,可以记录程序运行的细节,也可以记录用户的行为.在之前开发时我一般都是用自己写的小工具来记录日志,输出目标包 ...

  9. BootStrap_02之全局样式及组件

    1.BootStrap指定的四种屏幕尺寸: ①超大PC屏幕--lg(large):w>=1200px: ②中等PC屏幕--md(medium):1200px>w>=992px: ③P ...

随机推荐

  1. go语言简单介绍,增强了解

    1. Go语言没有类和继承的概念,所以它和 Java 或 C++ 看起来并不相同.但是它通过接口(interface)的概念来实现多态性.Go语言有一个清晰易懂的轻量级类型系统,在类型之间也没有层级之 ...

  2. layer简单使用

    官方:https://www.layui.com/doc/modules/layer.html 源码:https://github.com/xiaostudy/web_sample 效果 目录结构 代 ...

  3. storm并行度核心概念介绍剖析

    一.Storm的并行介绍 并行意味着多个任务在不同的节点上,且每个节点都可独立运行,并且相互之间没有依赖. 而在storm上,storm提交的jobs(任务)通过nimbus分发到多个supervis ...

  4. Maven仓库介绍以及私服搭建

      1 什么是Maven? 1.1 Maven的概念 Maven主要服务于基于Java平台的项目构建.依赖管理和项目信息开发,它是一个异常强大的构建工具,能够帮助我们自动化构建过程,从清理.编译.测试 ...

  5. SQLite进阶-16.索引

    目录 索引 创建索引 查看索引 删除索引 创建索引的注意项 索引使用(Indexed By) 索引 索引(Index)是一种特殊的查找表,数据库搜索引擎用来加快数据检索.简单地说,索引是一个指向表中数 ...

  6. 【浅析C++11】std::function和std::bind

    目录 std::function可调用对象包装器 std::function基本用法 std::function/std::bind与抽象工厂.工厂方法的一点思考 std::function可调用对象 ...

  7. 织梦DedeCMS给栏目添加缩略图调用的方法

    织梦DedeCMS的栏目调用仅仅只有文字调用,没有栏目缩略图调用,而我们有时候又需要给栏目添加缩略图,并能够在前台调用,就可以试试通过下面的方法,给栏目添加缩略图. 首先要给栏目数据库表添加一个存储缩 ...

  8. 怎样终止HTTP请求

    使用 xhr.abort() var xhr = new XMLHttpRequest(); xhr.open('GET', 'http://www.example.com/page.php', tr ...

  9. Java并发与多线程教程(3)

    Java中的锁 锁像synchronized同步块一样,是一种线程同步机制,但比Java中的synchronized同步块更复杂.因为锁(以及其它更高级的线程同步机制)是由synchronized同步 ...

  10. SQLServer · 最佳实践 · 如何将SQL Server 2012降级到2008 R2-博客-云栖社区-阿里云

    迁移须知 使用SQLSERVER 2012的特性在SQL 2008 R2不支持,比如新的分页方式 此迁移操作手册适用于MSSQL2012到MSSQL2008R2的迁移 迁移使用微软提供的脚本生成和导入 ...