立即学习:https://edu.csdn.net/course/play/19711/343121?utm_source=blogtoedu

1.下拉列表Combobox:与Listbox相比,下拉列表是一次只是显示一项内容,适用于布局紧张的情况下,而Listbox则是将所有的内容铺开来展示

2.关键代码

1)创建下拉列表代码

self.combobox_ = tkinter.ttk.Combobox(self.frame,#设置下拉列表显示的区域values =  self.cities#定义下拉列表的菜单内容项,是一个元组)

2)绑定事件的代码(注意区别,这里的事件命令是ComboboxSelected)

self.combobox_.bind("<<ComboboxSelected>>",self.combobox_handle)#为下拉列表绑定事件

3)获取下拉列表选中的内容代码

self.content.set("您所在的城市是:%s" % self.combobox_.get())  # 获得下拉列表的信息

3.完整代码

import tkinter#导入创建窗体的相关模块
import tkinter.ttk#导入创建窗体的相关模块
import osimage_path = r'C:\Users\jinlin\Desktop\python_further_study\GUI编程\resources'  + os.sep + 'linlianqin.gif'#因为每个平台的分隔符不一样,所以用os.sep可以自动切换到相应平台的分隔符class Mainwindow():#创建窗口类def __init__(self):self.root = tkinter.Tk()#创建主体窗口self.root.title('linlianqin')#定义窗体的名字self.root.geometry('500x500')#定义窗体的初始大小self.root.maxsize(1200,1200)#设置窗口可以显示的最大尺寸self.combobox()self.root.mainloop()#显示窗口,这个代码一定要放在所有窗口设置的后面#-----------------创建一个下拉列表----------------------def combobox(self):self.frame = tkinter.Frame(self.root)self.label = tkinter.Label(self.frame,text = "请选择您所在的城市:")self.cities = ("上海","北京","广州","深圳")#定义下拉列表的菜单项内容self.combobox_ = tkinter.ttk.Combobox(self.frame,#设置下拉列表显示的区域values =  self.cities#定义下拉列表的菜单内容项,是一个元组)self.content = tkinter.StringVar()self.show_label = tkinter.Label(self.root, textvariable=self.content,font = ("微软雅黑",20))self.combobox_.bind("<<ComboboxSelected>>",self.combobox_handle)#为下拉列表绑定事件self.label.grid(row = 0,column = 0,sticky = "w")self.combobox_.grid(row=0,column = 1)self.frame.pack(anchor = "w")self.show_label.pack()def combobox_handle(self,event):self.content.set("您所在的城市是:%s" % self.combobox_.get())  # 获得下拉列表的信息if __name__ == '__main__':Mainwindow()#将窗体类实例化

学习笔记(58):Python实战编程-Combobox相关推荐

  1. 学习笔记(53):Python实战编程-Checkbutton

    立即学习:https://edu.csdn.net/course/play/19711/343116?utm_source=blogtoedu 复选框Checkbutton:与单选框是相对的,一些用法 ...

  2. 学习笔记(57):Python实战编程-Treeview

    立即学习:https://edu.csdn.net/course/play/19711/343120?utm_source=blogtoedu 1.树状结构Treeview:分为树状折叠式列表和列表显 ...

  3. 学习笔记(55):Python实战编程-Scrollbar

    立即学习:https://edu.csdn.net/course/play/19711/343118?utm_source=blogtoedu 1.滚动条ScrollBar: 当列表内容项的内容过多时 ...

  4. 学习笔记(54):Python实战编程-Scale

    立即学习:https://edu.csdn.net/course/play/19711/343117?utm_source=blogtoedu 1.滑块组件Scale: 用于定义一定范围的区间,如音量 ...

  5. 学习笔记(52):Python实战编程-Radiobutton

    立即学习:https://edu.csdn.net/course/play/19711/343115?utm_source=blogtoedu 单选钮:Radiobutton 1)相对于大部分组件而言 ...

  6. 学习笔记(51):Python实战编程-ListBox

    立即学习:https://edu.csdn.net/course/play/19711/343113?utm_source=blogtoedu listbox 知识点: 1)创建listbox: se ...

  7. 学习笔记(49):Python实战编程-place布局

    立即学习:https://edu.csdn.net/course/play/19711/343111?utm_source=blogtoedu 1.place布局: 1)最灵活的布局方式,是根据坐标点 ...

  8. 学习笔记(48):Python实战编程-grid布局

    立即学习:https://edu.csdn.net/course/play/19711/343110?utm_source=blogtoedu grid布局:根据表结构进行的布局,索引为0行0列开始, ...

  9. 学习笔记(47):Python实战编程-pack布局

    立即学习:https://edu.csdn.net/course/play/19711/343109?utm_source=blogtoedu pack布局: 1)最常用的布局,顺序排列布局方法 2) ...

最新文章

  1. 5大典型模型测试单机训练速度超对标框架,飞桨如何做到?
  2. 【 MATLAB 】MATLAB 实现模拟信号采样后的重建(二)零阶保持(ZOH)
  3. Android Studio相见恨晚的操作锦集
  4. 获取Class对象的三种方式
  5. PPT 下载 | 神策数据朱德康:用户中台建设实践解析
  6. 2018-06-22 第四十七天 oracle
  7. 多进程Socket_Server
  8. 前端学习(1731):前端系列javascript之发布窗口布局下
  9. vue3——ref reactive函数
  10. python3程序运行中会跳过注释行_[python] 去除代码源文件中单行注释
  11. java虚拟机jvm_java虚拟机jvm - zhuyuansj的个人空间 - OSCHINA - 中文开源技术交流社区...
  12. 给你一个亿-电视节目总结
  13. 招聘 集群研发工程师
  14. 蓝桥杯 ALGO-92 算法训练 前缀表达式
  15. 隐马尔科夫模型(Hidden Markov Models) 系列之一
  16. TI CCS下载地址
  17. 计算机网络:王道考研
  18. 环保材料“接棒”汽车电子成主业?路畅科技“等到”金主
  19. Mysql查询去空格方法汇总
  20. Rmarkdown教程

热门文章

  1. POJ 1637 Sightseeing tour 混合图欧拉回路存在性判断
  2. eclipse 与 tomcat 的那些路径
  3. paypal之nodejs 框架 Kraken-js 源码分析
  4. js(function(){alert(‘’‘)})
  5. java文件读写操作指定编码格式[转]
  6. 数据库设计(四)概念数据模型
  7. 自定义input[type=file]的兼容样式
  8. java类与对象 —(10)
  9. 数据库系统原理(第四章:SQL与关系数据库基本操作 )
  10. python 正则表达式过滤文本中的html标签 源代码解析