【Tkinter系列07/15】小部件Message、下拉菜单、移动窗

17. 小部件Message

此小部件类似于小部件 (请参见第 12 节 “标签小部件”),但它适用于 在多行上显示消息。所有文本将 以相同的字体显示;如果需要显示文本 使用多种字体,请参见第 24 节 “文本小部件”。Label

创建新构件作为子小部件 名为 的根窗口或框架:Messageparent

    w = tk.Message(parent, option, ...)

此构造函数返回新小部件。选项可以是以下任何一种:Message

表 26.消息小部件选项

aspect使用此选项指定宽度与 身高百分比。例如,会给你一条短信 适合正方形;跟 文本区域的宽度将是高度的两倍。这 默认值为 150,即文本将适合 放入一个比高宽 50% 的盒子中。aspect=100aspect=200
bgbackground文本后面的背景颜色;请参见第 5.3 节 “颜色”。
bdborderwidth小部件周围边框的宽度;请参见第 5.1 节 “尺寸”。默认值为 <> 像素。仅当此选项不是 时,此选项才可见。relieftk.FLAT
cursor指定鼠标 在小部件上;请参见第 5.8 节 “游标”。
font指定用于在 控件;请参见第 5.4 节 “键入字体”。
fgforeground指定文本颜色;请参见第 5.3 节 “颜色”。
highlightbackground焦点的颜色 当小组件没有焦点时突出显示。请参见第 53 节 “焦点:路由键盘输入”。
highlightcolor颜色显示在 当小组件具有焦点时,焦点突出显示。
highlightthickness焦点突出显示的厚度。
justify使用此选项可以指定多行 文本对齐。用于获得笔直的左边距; 使每条线居中;并直截了当 右边距。justify=tk.LEFTjustify=tk.CENTERjustify=tk.RIGHT
padx使用此选项可在 文本左侧和右侧的小部件。这 值以像素为单位。
pady使用此选项可在 文本上方和下方的小部件。值在 像素。
relief此选项指定边框的外观 在小部件的外部周围;请参见第 5.6 节 “浮雕样式”。默认样式为 。tk.FLAT
takefocus通常,小部件不会 获取焦点(请参见第 53 节 “焦点:路由键盘输入”)。用于将微件添加到 焦点遍历列表。Messagetakefocus=True
text此选项的值是要包含的文本 显示在小部件内。
textvariable如果您希望能够更改消息 在程序控制下,将此选项与实例关联(请参见第 52 节 “控制变量:小部件后面的值”)。这个的价值 变量是要显示的文本。如果你 同时指定 和 选项,则忽略该选项。StringVartexttextvariabletext
width使用此选项可指定文本的宽度 微件中的区域(以像素为单位)。默认宽度 取决于显示的文本和选项的值。aspect

18. 小部件OptionMenu

此小部件的目的是提供一组固定的 下拉菜单中的用户选项。

上图显示了两种状态。左侧示例显示了 它的初始形式。右侧示例显示了它如何 当鼠标单击它并向下拖动到 选择。OptionMenu'boat'

创建新小部件作为 名为 的根窗口或框架的子窗口或框架的子项:OptionMenuparent

    w = tk.OptionMenu(parent, variable, choice1, choice2, ...)

此构造函数返回新小部件。这是一个实例(请参见第 52 节 “控制变量:小部件背后的值”),它与 小部件,其余参数是要选择的 在小组件中显示为字符串。OptionMenuvariableStringVar

上图是使用以下代码片段创建的:

    optionList = ('train', 'plane', 'boat')self.v = tk.StringVar()self.v.set(optionList[0])self.om = tk.OptionMenu(self, self.v, *optionList)

要找出当前在小部件中选择了哪个选项,关联控制变量上的方法将返回该 选择为字符串。OptionMenu.get()

19. 小部件PanedWindow

小部件的目的是 让应用程序的用户对空间大小进行一些控制 在应用程序中划分。PanedWindow

A有点像a:它是孩子的容器 小部件。每个小部件都包含一个水平或垂直的子堆栈 部件。使用鼠标,用户可以拖动边界 在子小部件之间来回切换。PanedWindowFramePanedWindow

  • 您可以选择在小组件中显示控点。句柄是 用户可以用鼠标拖动的小方块。

  • 您可以选择使窗框可见。腰带是放置在孩子之间的条形 部件。

  • 窗格是占用的区域 一个子小部件。

创建新小部件作为 名为 的根窗口或框架的子窗口或框架的子项:PanedWindowparent

   w = tk.PanedWindow(parent, option, ...)

此构造函数返回新小部件。以下是选项:PanedWindow

表 27.窗格窗口小部件选项

bgbackground显示在子项后面的背景色 部件;请参见第 5.3 节 “颜色”。
bdborderwidth外部边框的宽度 控件;请参见第 5.1 节 “尺寸”。这 默认值为两个像素。
cursor鼠标悬停时要显示的光标 小部件;请参见第 5.8 节 “游标”。
handlepad使用此选项可指定 手柄和腰带的末端。对于 ,这是距离 在窗扇的左端和手柄之间; 对于 ,它是 窗扇顶部与 处理。默认值为 5 像素;为 其他值,请参见第 1.<> 节 “维度”。orient=tk.VERTICALorient=tk.HORIZONTAL
handlesize使用此选项可指定句柄的大小, 它总是一个正方形;请参见第 5.1 节 “尺寸”。默认值为 八个像素。
height指定小部件的高度;请参见第 5.1 节 “尺寸”。如果未指定此项 选项,高度由高度决定 子小组件。
opaqueresize此选项控制调整大小操作的方式 工程。对于默认值,调整大小已完成 随着腰带的拖拽而连续。如果这个 选项设置为 、窗扇 (和相邻的子小部件)保持原位,直到 用户释放鼠标按钮,然后它跳跃 到新位置。opaqueresize=TrueFalse
orient要并排放置堆叠子构件,请使用 。将它们堆叠在顶部 底部,使用 .orient=tk.HORIZONTALorient=tk.VERTICAL
relief选择边框周围浮雕样式 控件;请参见第 5.6 节 “浮雕样式”。默认 是。tk.FLAT
sashpad使用此选项可在任一上分配额外空间 每条腰带的侧面。默认值为零;对于其他 值,请参见第 5.1 节 “维度”。
sashrelief此选项指定用于 渲染窗框;请参见第 5.6 节 “浮雕样式”。 默认样式为 。tk.FLAT
sashwidth指定窗扇的宽度;请参见第 5.1 节 “尺寸”。默认宽度为 <> 像素。
showhandle用于显示 处理。对于默认值,用户仍可以使用鼠标移动 窗扇。手柄只是一个视觉提示。showhandle=TrueFalse
width小部件的宽度;请参见第 5.1 节 “尺寸”。如果未指定值,则宽度将 由子小组件的大小决定。

要将子小部件添加到 , 将子构件创建为父小部件的子小部件,但不要使用该方法注册它们,而是使用 .PanedWindowPanedWindow.grid().add()PanedWindow

以下是小部件上的方法。PanedWindow

.add(child[, option=value] ...)

使用此方法将给定的小部件添加为下一个 这个孩子.第一 使用 作为其父小组件创建小组件,但不要调用该方法来注册它。然后打电话,孩子将出现在下一个可用位置。childPanedWindowchildPanedWindow.grid().add(child)PanedWindow

与每个子项关联的是一组配置 控制其位置和外观的选项。 请参见第 19.1 节 “PanedWindow 子配置 选项”。您可以提供 这些配置选项作为关键字参数 方法。您还可以设置 或随时使用该方法更改其值,或检索 使用该方法的任何这些选项的当前值;这些方法是 如下所述。.add().paneconfig().panecget()

.forget(child)

删除子小组件。

.identify(xy

对于窗口坐标中的给定位置,此方法返回 描述该位置的要素的值。(xy)

  • 如果功能是子窗口,则方法 返回一个空字符串。

  • 如果特征是分扇,则该方法返回 元组,其中第一个为 0 腰带,1 表示第二个,依此类推。(n, 'sash')n

  • 如果特征是句柄,则该方法返回 元组,其中第一个为 0 句柄,1 表示第二个,依此类推。(n, 'handle')n

.panecget(childoption)

此方法检索子小部件的值 配置选项,其中 是子小部件,是选项的名称作为 字符串。对于子小部件配置的列表 选项,请参见第 19.1 节 “PanedWindow 子配置 选项”。childoption

.paneconfig(childoption=value, ...)

使用此方法为子项配置选项 部件。第 19.1 节 “PanedWindow 子配置 ”中描述了这些选项。 选项”。

.panes()

此方法返回子小部件的列表,在 从左到右(对于)或从上到下(对于)的顺序。orient=tk.HORIZONTALorient=tk.VERTICAL

.remove(child)

删除给定的 ;这是相同的 操作作为方法。child.forget()

.sash_coord(index)

此方法返回窗扇的位置。参数选择腰带:0 表示 前两个孩子,一个为第二个之间的腰带 和第三个孩子,等等。结果是一个包含坐标的元组 腰带的左上角。index(xy)

.sash_place(indexxy)

使用此方法重新定位由 (0 对于第一个腰带,依此类推)。和坐标 指定左上角所需的新位置 腰带的一角。特金特忽略坐标 与微件的方向正交:使用值 以重新定位 的窗扇,并使用坐标 移动窗扇选项。indexxyxorient=tk.HORIZONTALyorient=tk.VERTICAL

9.1. 子配置 选项PanedWindow

        a 的每个子项都有一组 控制其位置和 外观。当孩子时,可以提供这些选项 与方法一起添加,或设置 使用方法,或查询 使用所描述的方法 以上。PanedWindow.add().paneconfig().panecget()

表 28.PanedWindow 子小部件选项

after通常,当你一个新的 子到一个,新的 子组件将添加到任何现有子小组件之后。 您可以改用该选项插入 新小部件位于现有小部件之后的位置 子小部件 ..add()PanedWindowafter=ww
before在调用方法时用作选项时,将新小部件放在 现有子小部件之前的位置。before=w.add()w
height此选项指定所需的高度 子小部件;请参见第 5.1 节 “尺寸”。
minsize使用此选项可指定 子构件在 的方向上。对于 ,这是最小值 宽度;对于 ,它是 最小高度。有关允许的值,请参见第 5.1 节 “尺寸”。PanedWindoworient=tk.HORIZONTALorient=tk.VERTICAL
padx要添加到左侧的额外空间量 和子小部件的右侧;请参见第 5.1 节 “尺寸”。
pady上面要添加的额外空间量和 在子小部件下方;请参见第 5.1 节 “尺寸”。
sticky此选项的功能类似于方法的参数;请参见第 4.1 节 “.grid() 方法”。它指定如何定位子小部件 如果窗格大于微件。为 示例,将位置 左上角的小部件 窗格的(“西北”)角。sticky.grid()sticky=tk.NW
width子小部件的所需宽度;请参见第 5.1 节 “尺寸”。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/60174.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux安装Portainer(简洁版)

项目简介Docker安装 1.安装命令&#xff1a;curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun2.启动&#xff1a;systemctl start docker3.停止&#xff1a;systemctl stop docker4.重启&#xff1a;systemctl restart docker5.开机启动&#xff1a;system…

25.CSS自定义形状按钮与悬停效果

效果 源码 <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><title>CSS Custom Shape Button</title><link rel="stylesheet" href="style.css"> </head> <body&…

新型安卓恶意软件使用Protobuf协议窃取用户数据

近日有研究人员发现&#xff0c;MMRat新型安卓银行恶意软件利用protobuf 数据序列化这种罕见的通信方法入侵设备窃取数据。 趋势科技最早是在2023年6月底首次发现了MMRat&#xff0c;它主要针对东南亚用户&#xff0c;在VirusTotal等反病毒扫描服务中一直未被发现。 虽然研究…

【高性能计算】opencl语法及相关概念(三)事件,内存

opencl中的事件概念 当谈到OpenCL中的事件时&#xff0c;它们代表了执行的各个阶段或操作的状态信息。通过使用事件&#xff0c;您可以跟踪和管理内核执行以及内存操作的进度和顺序。以下是与OpenCL事件相关的关键概念&#xff1a; 创建事件&#xff1a;您可以使用clCreateUse…

【MATLAB第70期】基于MATLAB的LightGbm(LGBM)梯度增强决策树多输入单输出分类预测模型(全网首发,敬请期待)

【MATLAB第70期】基于MATLAB的LightGbm(LGBM)梯度增强决策树多输入单输出分类预测模型&#xff08;全网首发&#xff0c;敬请期待&#xff09; (LGBM)是一种基于梯度增强决策树(GBDT)算法。 基于MATLAB的LightGbm即将研究测试上线。 下一个研究对象&#xff1a; ABCBOOST模型 一…

【AI】数学基础——数理统计(概念参数估计)

概率论 文章目录 3.6 数理统计概念与定理3.6.1 概率论与数理统计区别3.6.2 基本定理大数定理马尔科夫不等式切比雪夫不等式中心极限定理 3.6.3 统计推断的基本问题 3.7 参数估计3.7.1 频率派点估计法矩阵估计法极大似然估计点估计量的评估 区间估计 3.7.2 贝叶斯派贝叶斯定理条…

云安全攻防(十三)之 使用minikube安装搭建 K8s 集群

使用minikube安装搭建 K8s 集群 Kubernetes 是一个可移植的、可扩展的开源平台&#xff0c;用于管理容器化的工作负载和服务&#xff0c;可促进声明式配置和自动化,一般来说K8s安装有三种方式&#xff0c;分别是Minikube装搭建 K8s 集群&#xff0c;特点是只有一个节点的集群&…

Linux系统文件权限修改:permission denied

最近遇到文件夹权限的问题 通过命令发现www缺少写和执行的权限 然后赋予所有权限 下面是一些详解&#xff1a; 要赋予文件或目录写入权限&#xff0c;可以使用 chmod 命令。 命令的基本语法是&#xff1a; chmod <permissions> <file or directory>其中 <…

对称加密 非对称加密 AC认证 https原理

文章目录 对称加密及漏洞非对称加密及漏洞什么是数据摘要&#xff08;也称数据指纹&#xff09;什么是CA认证CA证书签发过程https通信方案 对称加密及漏洞 对称加密是一种加密算法&#xff0c;使用相同的密钥&#xff08;也称为对称密钥&#xff09;用于加密和解密数据。在对称…

从Gamma空间改为Linear空间会导致性能下降吗

1&#xff09;从Gamma空间改为Linear空间会导致性能下降吗 2&#xff09;如何处理没有使用Unity Ads却收到了GooglePlay平台的警告 3&#xff09;C#端如何处理xLua在执行DoString时候死循环 4&#xff09;Texture2DArray相关 这是第350篇UWA技术知识分享的推送&#xff0c;精选…

金仓数据库KingbaseES Windows版本启动时报错的问题

服务启动提示&#xff1a; 原因是使用的授权版本不对&#xff0c;导致服务总是启动不了 先卸载&#xff0c;重启&#xff0c;重新安装&#xff0c;选择下面这个授权文件 再启动开发工具&#xff0c;成功

学习pytorch7 神经网络的基本骨架--nn,module的使用

神经网络的基本骨架--nn,module的使用 官网Module介绍Python父类子类继承关系前向神经网络pycharm快捷键重写类方法codedebug B站小土堆视频学习笔记 官网Module介绍 https://pytorch.org/docs/stable/generated/torch.nn.Module.html#torch.nn.Module Python父类子类继承关系…

前端调用电脑摄像头

项目中需要前端调用&#xff0c;所以做了如下操作 先看一下效果吧 主要是基于vue3&#xff0c;通过canvas把画面转成base64的形式&#xff0c;然后是把base64转成 file文件&#xff0c;最后调用了一下上传接口 以下是代码 进入页面先调用一下摄像头 navigator.mediaDevices.ge…

人脸识别平台批量导入绑定设备的一种方法

因为原先平台绑定设备是通过一个界面进行人工选择绑定或一个人一个人绑定设备。如下&#xff1a; 但有时候需要在几千个里选择出几百个&#xff0c;那这种方式就不大现实了&#xff0c;需要另外一种方法。 目前相到可以通过导入批量数据进行绑定的方式。 一、前端 主要是显示…

42、Flink 的table api与sql之Hive Catalog

Flink 系列文章 1、Flink 部署、概念介绍、source、transformation、sink使用示例、四大基石介绍和示例等系列综合文章链接 13、Flink 的table api与sql的基本概念、通用api介绍及入门示例 14、Flink 的table api与sql之数据类型: 内置数据类型以及它们的属性 15、Flink 的ta…

Redis初始以及安装

"梦却了无影踪&#xff0c;梦仍不曾改动" 初始Redis (1) Redis是什么&#xff1f; 要认识、学习一个软件&#xff0c;最重要的途径无一是去该软件的官方文档里瞅瞅、转悠转悠。 从官方文档的介绍中得知&#xff0c;Redis是一种工作于内存&#xff0c;…

juicefs源码format命令阅读

之前博文中介绍过在windows下安装GO和vscode windows下安装go环境 和vscode中go扩展调试 1、获取源码 git clone https://github.com/juicedata/juicefs.git 首先观察代码架构 上图是我已经编译过得代码&#xff0c;可能和刚git下来的有些出入。 2、编译 我是在windows上进…

Linux禅道上修改Apache 和 MySQL 默认端口号

1. 修改Apache默认端口号 80 cd /opt/zbox/etc/apachevim httpd.conf :wq 保存 2. 修改MySQL默认端口号 3306 cd /opt/zbox/etc/mysql vim my.cnf :wq 保存 3. 重启服务 ./zbox restart

GPT能否辅助数学学习

GPT4.0的数学能力怎么样&#xff1f;我们使用镜像站进行实验&#xff0c;通过不同水平的数学看看GPT4.0的数学能力得到进步没有。镜像站的地址我们放在了最后&#xff0c;各位读者也可以自行去测试。 笔者在ChatGPT镜像站进行测试&#xff0c;我们的实验是让GPT4.0自行出数学题…