第二部分 Python提高—GUI图形用户界面编程(六)

其他组件学习

文章目录

  • OptionMenu 选择项
  • Scale 移动滑块
  • 颜色选择框
  • 文件对话框
  • 简单输入对话框
  • 通用消息框
  • ttk 子模块控件

OptionMenu 选择项

OptionMenu(选择项)用来做多选一,选中的项在顶部显示。显示效果如下:
在这里插入图片描述

from tkinter import *
root = Tk();root.geometry("200x100")
v = StringVar(root)
v.set("菜单")
om = OptionMenu(root, v, "黄闷茄子", "红烧豆腐", "清蒸鲈鱼")
om["width"] = 10
om.pack()
def test1():print("最爱的菜:", v.get())Button(root, text="确定", command=test1).pack()
root.mainloop()

Scale 移动滑块

Scale(移动滑块)用于在指定的数值区间,通过滑块的移动来选择值。

使用Scale(移动滑块)控制字体大小变化
在这里插入图片描述

from tkinter import *
root = Tk();root.geometry("200x100")
def test1(value):print("滑块的值:",value)newFont = ("宋体",value)a.config(font=newFont)
s1 =Scale(root,from_=10,to=50,length=200,tickinterval=5,orient=HORIZONTAL,command=test1)
s1.pack()
a = Label(root,text="字体大小",width=10,height=1,bg="black",fg="white")
a.pack()
root.mainloop()

颜色选择框

颜色选择框可以帮助我们设置背景色、前景色、画笔颜色、字体颜色等等。

示例 颜色选择框基本用法
在这里插入图片描述

from tkinter import *
from tkinter.colorchooser import *
root = Tk();root.geometry("400x150")
def test1():s1 = askcolor(color="red", title="选择背景色")print(s1)# s1 的值是:((0.0, 0.0, 255.99609375), '#0000ff')root.config(bg=s1[1])
Button(root,text="选择背景色",command=test1).pack()
root.mainloop()

文件对话框

文件对话框帮助我们实现可视化的操作目录、操作文件。最后,将文件、目录的信息传入到程序中。文件对话框包含如下一些常用函数:

函数名对话框说明
askopenfilename(**options)文件对话框返回打开的文件名
askopenfilenames(**options)文件对话框返回打开的多个文件名列表
askopenfile(**options)文件对话框返回打开文件对象
askopenfiles(**options)文件对话框返回打开的文件对象的列表
askdirectory(**options)目录对话框返回目录名
asksaveasfile(**options)保存对话框返回保存的文件对象
asksaveasfilename(**options)保存对话框返回保存的文件名

命名参数options 的常见值如下:

参数名说明
defaultextension默认后缀:.xxx,用户没有输入则自动添加
filetypes=[(label1,pattern1),(labe2,pattern2)]文件显示过滤器
initialdir初始目录
initialfile初始文件
parent父窗口,默认根窗口
title窗口标题

示例 文件对话框基本用法

"""文件对话框获取文件"""
from tkinter import *
from tkinter.filedialog import *
root = Tk()
root.geometry("400x100")def test1():f = askopenfilename(title="上传文件",initialdir="f:/file",filetypes=[("视频文件",".mp4")])
#print(f)show["text"]=f
Button(root,text="选择编辑的视频文件",command=test1).pack()
show = Label(root,width=40,height=3,bg="green")
show.pack()
root.mainloop()

示例 打开指定txt 文件,并读出文件内容到窗口


"""文件对话框获取文件"""
from tkinter import *
from tkinter.filedialog import *
root = Tk()
root.geometry("400x100")def test1():with askopenfile(title="上传文件",initialdir="d",filetypes=[("文本文件",".txt")]) as f :
#print(f)show["text"]=f.read()
Button(root,text="选择读取的文本文件",command=test1).pack()
show = Label(root,width=40,height=3,bg="green")
show.pack()
root.mainloop()

简单输入对话框

simpledialog(简单对话框)包含如下常用函数:

函数名说明
askfloat(title,prompt,**kw)输入并返回浮点数
askinteger(title,prompt,**kw)输入并返回整数
askstring(title,prompt,**kw)输入并返回字符串

参数中,title 表示窗口标题;prompt 是提示信息;命名参数kw 为各种选项:initialvalue(初始值)、minvalue(最小值)、maxvalue(最大值)。

"""简单对话框"""
from tkinter.simpledialog import *
root = Tk();root.geometry("400x100")
def test1():a = askinteger(title="输入年龄",prompt="请输入年龄",initialvalue=18,minvalue=1,maxvalue=150)# askstring、askfloat 框使用方式一样show["text"]=a
Button(root,text="朋友你多大了? 请输入",command=test1).pack()
show = Label(root,width=40,height=3,bg="green")
show.pack()
root.mainloop()

通用消息框

messagebox(通用消息框)用于和用户简单的交互,用户点击确定、取消。如下列出了messagebox 的常见函数:

函数名说明
askokcancel(title,message,**options)OK/Cancel 对话框
askquestion(title,message,**options)Yes/No 问题对话框
askretrycancel(title,message,**options)Retry/Cancel 问题对话框
showerror(title,message,**options)错误消息对话框
showinfo(title,message,**options)消息框
showwarning(title,message,**options)警告消息框

通用消息框的基本用法

from tkinter import *
from tkinter.messagebox import *
root = Tk();root.geometry("400x100")
a1 = showinfo(title="一切从头开始",message="好好学习吧 天天向上吧")
print(a1)
root.mainloop()

ttk 子模块控件

我们再前面学的组件是tkinter 模块下的组件,整体风格较老较丑。为了弥补这点不足,推出了ttk 组件。ttk 组件更加美观、功能更加强大。新增了LabeledScale(带标签的Scale)、Notebook(多文档窗口)、Progressbar(进度条)、Treeview(树)等组件。
使用ttk 组件与使用普通的Tkinter 组件并没有多大的区别,只要导入ttk 模块即可。

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

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

相关文章

【机器学习】分类与预测算法评价的方式介绍

一、引言 1、机器学习分类与预测算法的重要性 在数据驱动的时代,机器学习已经成为了处理和分析大规模数据的关键工具。分类与预测作为机器学习的两大核心任务,广泛应用于各个领域,如金融、医疗、电商等。分类算法能够对数据进行有效归类&…

【分治】Leetcode 库存管理 III

题目讲解 LCR 159. 库存管理 III 本题的含义就是让求出最小的k个数 算法讲解 class Solution { public:void my_qsort(vector<int>& nums, int l, int r){if(l > r) return ;int i l, left l-1, right r1;int key nums[rand() % (r - l 1) l];//完成分三…

uni-app项目引入阿里巴巴矢量图标库

uni-app项目引入阿里巴巴矢量图标库 1.下载图标库中的symbol下载至本地 2.解压文件夹并放入项目中 我这里放入的位置是src/static/icon目录下 3.修改文件指向路径为相对路径 即在路径iconfont前面添加斜杠 4.app.vue的style中引入 import static/icon/iconfont.css; 5…

(2022级)成都工业学院数据库原理及应用实验四: SQL简单查询

写在前面 1、基于2022级软件工程/计算机科学与技术实验指导书 2、成品仅提供参考 3、如果成品不满足你的要求&#xff0c;请寻求其他的途径 运行环境 window11家庭版 Navicat Premium 16 Mysql 8.0.36 实验要求 在实验三的基础上完成下列查询&#xff1a; 1、查询所有…

ComfyUI IPAdapter plus安装教程

ComfyUI是一个创新的Stable Diffusion AI绘图工具WebUI&#xff0c;它采用节点流程式设计&#xff0c;将Stable Diffusion的操作流程细分为多个节点&#xff0c;从而实现了更高精度的工作流定制与优秀的可复现性。相较于传统WebUI&#xff0c;ComfyUI不仅操作更为流畅&#xff…

在西非土地上播种希望

在西非这片广阔而充满活力的土地上播种希望&#xff0c;我们可以从多个维度进行解读和行动&#xff1a; 教育援助&#xff1a;投资于当地的教育事业&#xff0c;改善学校设施&#xff0c;提供教育资源&#xff0c;尤其是对女童教育的重视&#xff0c;让更多孩子有机会接受基础…

成都欣丰洪泰文化传媒有限公司打造电商服务新标杆

随着互联网的快速发展&#xff0c;电子商务行业蓬勃兴起&#xff0c;成为推动经济发展的重要力量。在这个大背景下&#xff0c;成都欣丰洪泰文化传媒有限公司凭借其专业的电商服务&#xff0c;在激烈的市场竞争中脱颖而出&#xff0c;成为行业的佼佼者。 一、公司背景与实力 成…

v1.9.2-httpsok快速申请免费SSL证书

v1.9.2-&#x1f525;httpsok快速申请免费SSL证书 介绍 httpsok 是一个便捷的 HTTPS 证书自动续签工具&#xff0c;专为 Nginx 、OpenResty 服务器设计。已服务众多中小企业&#xff0c;稳定、安全、可靠。 一行命令&#xff0c;一分钟轻松搞定SSL证书自动续期 更新日志 V1…

endnote21从安装到使用!文献引用!Mac版

视频学习和资源获取 新建库 选择上方导航栏处的File下的New 软件 软件界面可以分成四个部分 2是个人图书馆 3是对某一分类中文献的展示 最右侧是对具体一篇文献的摘要、编辑以及PDF 有回形针标志意味着这篇有全文&#xff0c;也就是有pdf 如果没有回形针代表它只有引文信…

HCIP的学习(10)

OSPF不规则区域划分 区域划分 非骨干与骨干区域直接相连骨干区域唯一 限制规则&#xff1a; 非骨干区域之间不允许直接相互发布区域间路由信息OSPF区域水平分割&#xff1a;从非骨干区域收到的路由信息&#xff0c;ABR设备能接收到不能使用&#xff08;从某区域传出的路由&…

敢不敢挑战?看完这篇 Python 学习攻略不成大牛就请我退出 IT !

目录 0基础小白怎么学Python&#xff1f; Python基本概念最全图 1.Python 解释器&#xff1a; 2.Python数据结构&#xff1a; 3.变量与运算符&#xff1a; 4.Python 流程控制&#xff1a; 5.Python 文件处理&#xff1a; 6.Python 输入输出&#xff1a; 7.Python 异常…

注意力机制基本思想(一)

​&#x1f308; 个人主页&#xff1a;十二月的猫-CSDN博客&#x1f525; 系列专栏&#xff1a; &#x1f3c0;《深度学习基础知识》 相关专栏&#xff1a; ⚽《机器学习基础知识》 &#x1f3d0;《机器学习项目实战》 &#x1f94e;《深度学习项目实战…

2024年华中杯B题论文发布+数据预处理问题一代码免费分享

【腾讯文档】2024年华中杯B题资料汇总 https://docs.qq.com/doc/DSExMdnNsamxCVUJt 行车轨迹估计交通信号灯周期问题 摘要 在城市化迅速发展的今天&#xff0c;交通管理和优化已成为关键的城市运营问题之一。本文将基于题目给出的数据&#xff0c;对行车轨迹估计交通信号灯…

七月论文审稿GPT第4.5版:通过15K条paper-review数据微调Llama2 70B(含各种坑)

前言 当我们3月下旬微调完Mixtral 8x7B之后(更多详见&#xff1a;七月论文大模型&#xff1a;含论文的审稿、阅读、写作、修订 )&#xff0c;下一个想微调的就是llama2 70B 因为之前积攒了不少微调代码和微调经验&#xff0c;所以3月底apple便通过5K的paper-review数据集成功…

机器视觉【1】-机械臂视觉

文章目录 Eye-to-HandEye-in-Hand基于Eye-in-Hand型机械臂单目视觉定位单目相机标定针孔相机模型畸变标定方法机械臂手眼标定手眼标定求解图像预处理图像灰度化与二值化图像滤波图像特征匹配机械臂单目视觉定位目标物体图像深度信息目标物体中心定位参考文献根据机械臂与相机所…

基于PyAutoGUI图片定位的自动化截图工具--完成了

1、计划 压测完成后需要编写性能测试报告&#xff0c;报告中所需数据截图较多&#xff0c;使用自动化操作方便快捷&#xff0c;就编写一个界面工具以便后续复用。 基于PyAutoGUI图片定位的自动化截图工具–jmeter部分 基于PyAutoGUI图片定位的自动化截图工具–jmeter部分&#…

jenkins从节点配置说明

目的 打包构建时使用从节点&#xff0c;从节点所在服务器配置4C8G5000G&#xff08;服务器2&#xff09; 前提 首先在服务器1上部署jenkins服务&#xff0c;即主节点&#xff0c;默认节点名称为master 步骤 1&#xff09;登录进入jenkins平台&#xff0c;在系统设置中&…

AJAX 入门到实战 第1天 2024 笔记

1.1-AJAX入门与axios使用 1.2-认识URL 1.3-查询参数 1.4-案例_地区查询 <script src"https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script><script>/*获取地区列表: http://hmajax.itheima.net/api/area查询参数:pname: 省份或直辖市…

李沐53_语言模型——自学笔记

语言模型 1.预测文本序列出现的概率 2.应用在做预训练模型 3.生成文本&#xff0c;给定前面几个词&#xff0c;不断生成后续文本 4.判断多个序列中哪个更常见 真实数据集的统计 《时光机器》数据集构建词表&#xff0c; 并打印前10个最常用的&#xff08;频率最高的&…

C语言 | 动态内存管理

目录&#xff1a; 1. 为什么要有动态内存分配 2. malloc和free 3. calloc和realloc 4. 常见的动态内存的错误 5. 动态内存经典笔试题分析 6. 柔性数组 1. 为什么要有动态内存分配 我们已经掌握的内存开辟方式有&#xff1a; int val 20; //在栈空间上开辟四个字节 cha…