iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Tkinter组件实现Radiobutton的示例
  • 358
分享到

Tkinter组件实现Radiobutton的示例

2024-04-02 19:04:59 358人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

目录何时使用 Radiobutton 组件?用法参数方法Radiobutton(单选按钮)组件用于实现多选一的问题。Radiobutton 组件可以包含文本或图像,每一个按钮都可以与

Radiobutton(单选按钮)组件用于实现多选一的问题。Radiobutton 组件可以包含文本或图像,每一个按钮都可以与一个 python 的函数或方法与之相关联,当按钮被按下时,对应的函数或方法将被自动执行。

Radiobutton 组件仅能显示单一字体的文本,但文本可以跨越多行。另外,还可以为其中的个别字符加上下划线(例如用于表示键盘快捷键)。默认情况下,tab 按键被用于在按钮间切换。

每一组 Radiobutton 组件应该只与一个变量相关联,然后每一个按钮表示该变量的单一值。

何时使用 Radiobutton 组件?

Radiobutton 组件是用于实现多选一的问题,它几乎总是成组地被使用,其中所有成员共用相同的变量。

用法

Radiobutton 组件跟 Checkbutton 组件非常相似,为了实现其“单选”行为,确保一组中的所有按钮的 variable 选项都使用同一个变量,并使用 value 选项来指定每个按钮代表什么值:

import tkinter as tk
 
master = tk.Tk()
 
v = tk.IntVar()
v.set(2)
 
tk.Radiobutton(master, text="One", variable=v, value=1).pack(anchor="w")
tk.Radiobutton(master, text="Two", variable=v, value=2).pack(anchor="w")
tk.Radiobutton(master, text="Three", variable=v, value=3).pack(anchor="w")
 
master.mainloop()

如果按钮(选项)比较多,强烈建议您使用以下方式来初始化 Radiobutton 组件:

import tkinter as tk
 
master = tk.Tk()
 
GIRLS = [
    ("西施", 1),
    ("王昭君", 2),
    ("貂蝉", 3),
    ("杨玉环", 4)]
 
v = tk.IntVar()
 
for girl, num in GIRLS:
    b = tk.Radiobutton(master, text=girl, variable=v, value=num)
    b.pack(anchor="w")
 
master.mainloop()

上图是一个普通的单选按钮样式,如果将它的  indicatoron 选项设置为 False,Radiobutton 的样式就会变成普通按钮的样式了:

b = tk.Radiobutton(master, text=girl, variable=v, value=num, indicatoron=False)
b.pack(fill="x")

参数

Radiobutton(master=None, **options) (class)

master -- 父组件

**options -- 组件选项,下方表格详细列举了各个选项的具体含义和用法:

选项含义
activebackground1. 设置当 Radiobutton 处于活动状态(通过 state 选项设置状态)的背景色
2. 默认值由系统指定
activeforeground1. 设置当 Radiobutton 处于活动状态(通过 state 选项设置状态)的前景色
2. 默认值由系统指定
anchor1. 控制文本(或图像)在 Radiobutton 中显示的位置
2. "n", "ne", "e", "se", "s", "sw", "w", "nw", 或者 "center" 来定位(ewsn 代表东西南北,上北下南左西右东)
3. 默认值是 "center"
background1. 设置背景颜色
2. 默认值由系统指定
bg跟 background 一样
bitmap1. 指定显示到 Radiobutton 上的位图
2. 如果指定了 image 选项,则该选项被忽略
borderwidth1. 指定 Radiobutton 的边框宽度
2. 默认值由系统指定,通常是 1 或 2 像素
bd跟 borderwidth 一样
command1. 指定于该按钮相关联的函数或方法
2. 当按钮被按下时由 Tkinter 自动调用对应的函数或方法
3. 如果不设置此选项,那么该按钮被按下后啥事儿也不会发生
compound1. 控制 Radiobutton 中文本和图像的混合模式
2. 默认情况下,如果有指定位图或图片,则不显示文本
3. 如果该选项设置为 "center",文本显示在图像上(文本重叠图像)
4. 如果该选项设置为 "bottom","left","right" 或 "top",那么图像显示在文本的旁边(如 "bottom",则图像在文本的下方)
5. 默认值是 NONE
cursor1. 指定当鼠标在 Radiobutton 上飘过的时候的鼠标样式
2. 默认值由系统指定
disabledforeground1. 指定当 Radiobutton 不可用的时候前景色的颜色
2. 默认值由系统指定
font1. 指定 Radiobutton 中文本的字体
2. 一个 Radiobutton 只能设置一种字体
3. 默认值由系统指定
foreground1. 设置 Radiobutton 的文本和位图的颜色
2. 默认值由系统指定
fg跟 foreground 一样
height1. 设置 Radiobutton 的高度
2. 如果 Radiobutton 显示的是文本,那么单位是文本单元
3. 如果 Radiobutton 显示的是图像,那么单位是像素(或屏幕单元)
4. 如果设置为 0 或者干脆不设置,那么会自动根据 Radiobutton 的内容计算出高度
highlightbackground1. 指定当 Radiobutton 没有获得焦点的时候高亮边框的颜色
2. 默认值由系统指定,通常是标准背景颜色
highlightcolor1. 指定当 Radiobutton 获得焦点的时候高亮边框的颜色
2. 默认值由系统指定
highlightthickness1. 指定高亮边框的宽度
2. 默认值由系统指定,通常是 1 或 2 像素
image1. 指定 Radiobutton 显示的图片
2. 该值应该是 PhotoImage,Bitmapimage,或者能兼容的对象
3. 该选项优先于 text 和 bitmap 选项
indicatoron1. 指定前边作为选择的小圆圈是否绘制
2. 默认是绘制的
3. 该选项会影响到按钮的样式,如果设置为 False,则点击后该按钮变成 "sunken"(凹陷),再次点击变为 "raised"(凸起)
justify1. 定义如何对齐多行文本
2. 使用 "left","right" 或 "center"
3. 注意,文本的位置取决于 anchor 选项
4. 默认值是 "center"
padx1. 指定 Radiobutton 水平方向上的额外间距(内容和边框间)
2. 默认值是 1
pady1. 指定 Radiobutton 垂直方向上的额外间距(内容和边框间)
2. 默认值是 1
relief1. 指定边框样式
2. 可以设置 "sunken","raised","groove","ridge" 或 "flat"
3. 如果 indicatoron 选项设置为 True,则默认值是 "flat",否则为 "raised"
selectcolor1. 选择框的颜色
2. 默认值由系统指定
selectimage1. 设置当 Radiobutton 为选中状态的时候显示的图片
2. 如果没有指定 image 选项,该选项被忽略
state1. 指定 Radiobutton 的状态
2. 默认值是 "nORMal"
3. 另外你还可以设置 "active" 或 "disabled"
takefocus1. 如果是 True,该组件接受输入焦点(用户可以通过 tab 键将焦点转移上来)
2. 默认值是 False
text1. 指定 Radiobutton 显示的文本
2. 文本可以包含换行符
3. 如果设置了 bitmap 或 image 选项,该选项则被忽略
textvariable1. Radiobutton 显示 Tkinter 变量(通常是一个 StringVar 变量)的内容
2. 如果变量被修改,Radiobutton 的文本会自动更新
underline1. 跟 text 选项一起使用,用于指定哪一个字符画下划线(例如用于表示键盘快捷键)
2. 默认值是 -1
3. 例如设置为 1,则说明在 Radiobutton 的第 2 个字符处画下划线
value1. 标志该单选按钮的值
2. 在同一组中的所有按钮应该拥有各不相同的值
3. 通过将该值与 variable 选项的值对比,即可判断用户选中了哪个按钮
variable1. 与 Radiobutton 组件关联的变量
2. 同一组中的所有按钮的 variable 选项应该都指向同一个变量
3. 通过将该变量与 value 选项的值对比,即可判断用户选中了哪个按钮
width1. 设置 Radiobutton 的宽度
2. 如果 Radiobutton 显示的是文本,那么单位是文本单元
3. 如果 Radiobutton 显示的是图像,那么单位是像素(或屏幕单元)
4. 如果设置为 0 或者干脆不设置,那么会自动根据 Radiobutton 的内容计算出宽度
wraplength1. 决定 Radiobutton 的文本应该被分成多少行
2. 该选项指定每行的长度,单位是屏幕单元
3. 默认值是 0

方法

deselect()
-- 取消该按钮的选中状态。

flash()
-- 刷新 Radiobutton 组件,该方法将重绘 Radiobutton 组件若干次(在"active" 和 "normal" 状态间切换)。
-- 该方法在调试的时候很有用,也可以使用此方法提醒用户激活了该按钮。

invoke()
-- 调用 Radiobutton 中 command 选项指定的函数或方法,并返回函数的返回值。
-- 如果 Radiobutton 的 state(状态)"disabled"是 (不可用)或没有指定 command 选项,则该方法无效。

select()
-- 将 Radiobutton 组件设置为选中状态。

到此这篇关于Tkinter组件实现Radiobutton的示例的文章就介绍到这了,更多相关Tkinter Radiobutton内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Tkinter组件实现Radiobutton的示例

本文链接: https://www.lsjlt.com/news/162156.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Tkinter组件实现Radiobutton的示例
    目录何时使用 Radiobutton 组件?用法参数方法Radiobutton(单选按钮)组件用于实现多选一的问题。Radiobutton 组件可以包含文本或图像,每一个按钮都可以与...
    99+
    2024-04-02
  • C#中RadioButton的实例用法
    本篇内容介绍了“ C#中RadioButton的实例用法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!C# RadioButton是大家经常...
    99+
    2023-06-17
  • Vue.extend实现组件库message组件示例详解
    目录概述Vue.extendmessage 组件配置对象(就是.vue文件)message 生成组件的函数使用方法效果图总结概述 当我们使用组件库的时候,某些组件并不是直接放到模板当...
    99+
    2024-04-02
  • Vue实现组件间通信的示例
    这篇文章主要介绍了Vue实现组件间通信的示例,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1. 父子间通信最常见的就是父子之间的通信,通信是双向的数据传递。1.1 父组件 -...
    99+
    2023-06-15
  • react实现Radio组件的示例代码
    本文旨在用最清楚的结构去实现一些组件的基本功能。希望和大家一起学习,共同进步 效果展示: 测试组件: class Test extends Component { cons...
    99+
    2024-04-02
  • Vue3实现Message消息组件示例
    目录组件设计 定义最终的组件 API 定义组件结构 模板和样式 模板 Template 消息图标 样式 组件脚本 创建组件实例 1、创建包裹容器,并设置外层的 Class 属性 2、...
    99+
    2024-04-02
  • Vue实现固定底部组件的示例
    目录【实现效果】【实现方式】【实现效果】 【实现方式】 <template> <div id="app"> <div class="...
    99+
    2024-04-02
  • python中Tkinter实现分页标签的示例代码
    Tkinter实现UI分页标签显示: Input页,红色部分为当前Frame的位置,下半部分为第一页的子标签;三页标签的显示内容各不相同。实现分页显示的核心组件为Radiobutt...
    99+
    2024-04-02
  • Python实现生命游戏的示例代码(tkinter版)
    目录生命游戏(Game of Life)游戏概述生存定律图形结构代码实现运行界面使用简介后续改进生命游戏(Game of Life) 由剑桥大学约翰·何顿·...
    99+
    2024-04-02
  • reactrenderprops模式实现组件复用示例
    目录一 render props的使用步骤二 组件的复用三 使用children名代替属性一 render props的使用步骤 1 创建要复用的组件,在组件中提供要复用的状态逻辑代...
    99+
    2024-04-02
  • vue3实现H5表单验证组件的示例
    目录效果图描述实现思路与element-ui表单组件差异非uni-app平台的移植效果图 描述 基于vue.js,不依赖其他插件或库实现;基础功能使用保持和 element-ui ...
    99+
    2023-05-16
    vue3 H5表单验证 vue3 表单验证
  • Header组件热门搜索栏的实现示例
    目录1. 基本布局1.1 热门搜索框1.2 热门搜索Title和换一换图标1.3 热门Tag2. 控制展示3. 使用 Ajax 请求获取 Tag 数据3.1 使用 redux-thu...
    99+
    2023-05-18
    Header组件热门搜索栏 Header 搜索栏
  • 手写Vue内置组件component的实现示例
    目录前言内置组件component的使用component组件的原理分析虚拟DOM与原生DOMrender函数的使用尝试手写实现component总结最近在复习Vue的源码,今天带大...
    99+
    2024-04-02
  • Python通过tkinter实现百度搜索的示例代码
    本文主要介绍了Python通过tkinter实现百度搜索的示例代码,分享给大家,具体如下: """ 百度搜索可视化 """ import tkinter import win...
    99+
    2024-04-02
  • Message组件实现发财UI 示例详解
    目录引言支持的功能使用方法实现过程如何实现不同类型的切换?如何实现Message的弹出和消失?如何实现往下排列而非堆叠?如何实现添加和移除.message-active类?如何将隐藏...
    99+
    2022-11-13
    Message组件发财UI Message组件
  • react实现组件状态缓存的示例代码
    目录前言一、安装第三方库二、配置操作总结前言 在移动端中,用户访问了一个列表页,上拉浏览列表页的过程中,随着滚动高度逐渐增加,数据也将采用触底分页加载的形式逐步增加,列表页浏览到某个...
    99+
    2023-02-24
    react 组件状态缓存 react 组件缓存
  • Vue3封装回到顶部组件的实现示例
    我们在网页中应该经常可以看到回到顶部这个功能,这个功能也比较简单。 代码:  <template> <div class="page-content-...
    99+
    2024-04-02
  • AndroidFlutter实现上拉加载组件的示例代码
    前言 在此之前对列表下拉刷新做了调整方案,具体介绍可以阅读下拉刷新组件交互调整。既然列表有下拉刷新外当然还有上拉加载更多操作了,本次就来介绍如何为列表增加上拉加载更多的交互实现。 实...
    99+
    2024-04-02
  • 基于Vue3实现日历组件的示例代码
    以下是一个基于 Vue 3 实现的简单日历组件的代码示例。这个日历组件包含了前一个月、当前月、下一个月的日期,并且可以支持选择日期、切换月份等功能。 <template>...
    99+
    2023-05-17
    Vue3实现日历组件 Vue3日历组件 Vue3日历 Vue 日历
  • React文字展开收起组件的实现示例
    目录前言背景开发1.1 定义组件所需字段1.2 获取截断后的文字1.3 获取展开收起按钮1.4 展开收起逻辑1.5 完整代码1.5.1 逻辑代码1.5.2 样式代码1.6 安装使用组...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作