Python Tkinter控件之Combobox下拉框如何选中内容并使用

2023-11-15

Tk控件之Combobox

​ 首先要明白Combobox — 下拉框是Tk窗口的控件之一,所以一定需要绑定一个窗口;其次,明白下拉框的代码格式;最后,明白如何选中下拉框某一项并且使用其进行后续操作;

1. 绑定窗口
root = Tk.tk()
root.title("")
root.geometry("")
# ... 对窗口进行一些格式的设定

text = tk.StringVar()
Comb = ttk.Combobox(root, textvariable = text)

注:这个text一定放上去,这样后面才能够获取到选中内容

2. 设置下拉框内容
Comb['value'] = ('A', 'B', 'C') #......
# Comb.pack()
Comb.grid(row=1, column=1)
root.mainloop() #mainloop才能使窗口稳定展示

这里的 .pack()方法和.grid()方法都可以使内容展示到窗口上,但是.grid()方法可以调整控件的位置;

而且经过实践,.grid()方法应该只能设置控件的相对位置:

# 如果只有一个控件的时候,无论如何设置,控件的位置都位于左上角
Comb.grid(row=1, column=1)
Comb.grid(row=1, column=2)
Comb.grid(row=1, column=3)
Comb.grid(row=2, column=3)
# 在加入一个Label控件后,控件位置就能随row, column的改变而相应改变了,不过要注意也是相对的
label = tk.Label(root, text='123')
label.grid(row=1,column=2)
Comb.grid(row=2, column=3)
3. 通过Button控件获取下拉框相应值
button = tk.Button(master=root, text='确认', command=get) #command=xxx 这个xxx就是跳转的函数
button.grid(row=3,column=3)
# 函数部分
def get():
    print(text.get()) 

注意:函数种一定要使用.get()方法,不然得到的会是Tk的一种数据类型,无法正常使用

同时,若想直接作为参数传入函数之中,还可以用到lambda表达式:

#主函数部分
button = tk.Button(master=root, text='确认', command=lambda: getlamb(text.get()))

# 函数部分
def getlamb(t):
    print(t)
  • 其实text绑定的不是下拉框选中内容,而是文本框里的内容,所以即使你自己输入字符串到文本框中,其也会正常显示出来
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python Tkinter控件之Combobox下拉框如何选中内容并使用 的相关文章

随机推荐

  • 深度学习——权重的初始值

    权重的初始值 权重的初始值十分重要 关系到神经网络的学习是否成功 可以将权重初始值设置为0吗 为了抑制过拟合 提高泛化能力 采用权值衰减的方法 它是一种以减小权重参数的值为目的进行学习的方法 在误差反向传播法中 所有的权重值都会进行相同的更
  • truss 命令

    truss 命令用途跟踪进程的系统调用 动态装入的用户级函数调用 接收的信号和造成的机器故障 语法truss f c a l d D e i t x Syscall s Signal m Fault r w FileDescriptor u
  • gitlab 搭建与使用

    gitlab 搭建与使用 参考博客链接 https blog csdn net weixin 38912024 article details 82383312 https blog csdn net hao5335156 article
  • JasperReport6.x 提示:No markuo processor factory specified for ““ markup

    Jaspersoft Studio 提示如下错误信息 No markuo processor factory specified for markup 解决方法 jrxml 切换至源码模式 查询makeup 属性字段标签 将内容编辑为 no
  • ssh: connect to host port 22: No route to host问题

    笔记本没电自动关机 但是虚拟机是开启状态 开机之后发现连接不上其中一个虚拟机 出现了ssh connect to host port 22 No route to host问题提示 后来检查防火墙和网都没有问题 使用ifconfig命令后发
  • ie 使用window.open页面报错

    window open url 打开新页面是如果要通过地址栏来传参要注意 var qt qt teachMaterialDealInfo bookids selectBooks qt teachMaterialDealInfo writer
  • vba文字型的值转换成数值类型

    今天在做表的时候 发现数组中提取出来的是文字类型 需要转换成数值类型 网上搜索到了字符转换的方法 超级实用 记录下来 如果用mid函数提取的字符范围增加 可参照VBA中的帮助 类型转换函数 CBool expression CByte ex
  • 正则表达式匹配数字、字母和汉字等各类汇总

    最近在开发中遇到一个需求是只匹配字母和汉字 于是在网上找了一个比较全的记录一下 日后再用 正则表达式来匹配规范一段文本中的特定种类字符 下面是对常用的正则匹配做了一个归纳整理 1 匹配中文 u4e00 u9fa5 2 英文字母 a zA Z
  • unity code-动作系统Animator

    AnimatorOverrideController是运行时版本 可以运行时更改controller AnimatorController是编辑器版本 不能运行时修改 所以运行时只能通过用AnimatorOverrideController
  • 自动化测试框架之RobotFramework进行接口测试

    首先在进行接口测试前分析一下如何进行接口请求的发送或进行接口请求发送包含哪些内容 那么就需要对http请求包含的内容 请求行 协议版本 URL 请求方法 请求头 host content Type Accept等 请求体 发送请求需要带的参
  • 关于SSM框架体会和小结

    前言 使用SSM spring SpringMVC和Mybatis 已经有三个多月了 项目在技术上已经没有什么难点了 基于现有的技术就可以实现想要的功能 当然肯定有很多可以改进的地方 之前没有记录SSM整合的过程 只写了个搭建Maven过程
  • 2021-02-08

    学习目标 综合练习题 10道经典题目 天池龙珠计划SQL训练营 学习内容 10道sql练习题 学习产出 1 说实话自己写不全 还是翻看了答案才知道 2 自己装了sql建库建表 导入数据特别慢 电脑配置不够
  • 【Vue学习笔记】- 事件的基本使用

    总结 1 使用 v on xxx 或 xxx 绑定事件 其中xxx是事件名 2 事件的回调需要配置在methods对象中 最终会在vm上 3 methods中配置的函数 不要用箭头函数 否则this就不是vm了 4 methods中配置的函
  • 【软件测试】自动化测试战零基础教程——Python自动化从入门到实战(二)

    软件测试知识持续更新中 第二章 python webdriver 环境搭建 第一节 环境搭建 准备工具如下 windows 环境安装 linux 环境安装 第二节 使用 IDLE 来编写 python 有效地使用 IDLE 第三节 第一个自
  • map 遍历时 删除元素

    import java io File import java io IOException import java util HashMap import java util Iterator import java util Map i
  • JMeter与Selenium WebDriver集成的价值

    JMeter作为性能或接口测试工具 用在UI测试上多少属于不伦不类 而Selenium WebDriver作为如今最主流的UI开源测试工具 得到许多人的认可 那么为什么有人要把JMeter与Selenium WebDriver进行结合呢 我
  • Android SwipeRefreshLayout 嵌套NestedScrollView 偶尔无法在下拉刷新的问题

    第一次接触谷歌的下拉刷新不太会用导致的问题 问题是在下拉刷新的时候长按不松开继续往下滑导致下拉刷新呗关闭 简单来说就是在下拉刷新的时候继续往上滑动触发ScrollView的滑动事件后关闭下拉刷新 如果是下拉刷新在运行中被关闭setEnabl
  • Android中BLE连接出现“BluetoothGatt status 133”的解决方法

    http www loverobots cn android ble connection solution bluetoothgatt status 133 html 前 言 最近的工作方向一直在低功耗蓝牙方面 也就是BLE Blueto
  • 《Python程序设计与算法基础教程(第二版)》第八章 函数与函数式编程 上机实践

    python实验四 上机实践 2 3 4 5 2 编写程序 定义一个求阶乘的函数fact n 并编写测试代码 要求输入整数n n gt 0 请分别使用递归和非递归方式实现 递归方式 def fact n if n 0 or n 1 retu
  • Python Tkinter控件之Combobox下拉框如何选中内容并使用

    Tk控件之Combobox 首先要明白Combobox 下拉框是Tk窗口的控件之一 所以一定需要绑定一个窗口 其次 明白下拉框的代码格式 最后 明白如何选中下拉框某一项并且使用其进行后续操作 1 绑定窗口 root Tk tk root t