import sys
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import *
################################################
items_list=["C","C++","Java","Python","JavaScript","C#","Swift","go","Ruby","Lua","PHP"]
datas_list=[1972,1983,1995,1991,1992,2000,2014,2009,1995,1993,1995] class Widget(QWidget):
def __init__(self, *args, **kwargs):
super(Widget, self).__init__(*args, **kwargs)
layout = QVBoxLayout(self)
self.combobox1 = QComboBox(self, minimumWidth=200)
self.combobox2 = QComboBox(self, minimumWidth=200)
self.combobox3 = QComboBox(self, minimumWidth=200)
self.combobox4 = QComboBox(self, minimumWidth=200) layout.addWidget(QLabel("增加单项,不带数据", self))
layout.addWidget(self.combobox1)
layout.addItem(QSpacerItem(20, 20, QSizePolicy.Expanding, QSizePolicy.Minimum))

layout.addWidget(QLabel("增加单项,附带数据", self))
layout.addWidget(self.combobox2)
layout.addItem(QSpacerItem(20, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)) layout.addWidget(QLabel("增加多项,不带数据", self))
layout.addWidget(self.combobox3)
layout.addItem(QSpacerItem(20, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)) layout.addWidget(QLabel("设置模型,不带数据", self))
layout.addWidget(self.combobox4) #初始化combobox
self.init_combobox1()
self.init_combobox2()
self.init_combobox3()
self.init_combobox4() #增加选中事件
self.combobox1.activated.connect(self.on_combobox1_Activate)
self.combobox2.activated.connect(self.on_combobox2_Activate)
self.combobox3.activated.connect(self.on_combobox3_Activate)
self.combobox4.activated.connect(self.on_combobox4_Activate) ####### addItem() 增加单项元素,不带数据 #########
def init_combobox1(self):
for i in range(len(items_list)):
self.combobox1.addItem(items_list[i])
self.combobox1.setCurrentIndex(-1) def on_combobox1_Activate(self, index):
print(self.combobox1.count())  #返回列表框下拉项数目
print(self.combobox1.currentIndex())  #返回选中项索引
print(self.combobox1.currentText())  #返回选中项的文本内容
print(self.combobox1.currentData())  #返回当前数据
print(self.combobox1.itemData(self.combobox1.currentIndex()))
print(self.combobox1.itemText(self.combobox1.currentIndex()))
print(self.combobox1.itemText(index)) ####### addItem() 增加单项元素,附带数据 #########
def init_combobox2(self):
for i in range(len(items_list)):
self.combobox2.addItem(items_list[i],datas_list[i])
self.combobox2.setCurrentIndex(-1) def on_combobox2_Activate(self, index):
print(self.combobox2.count())
print(self.combobox2.currentIndex())  
print(self.combobox2.currentText())
print(self.combobox2.currentData())
print(self.combobox2.itemData(self.combobox2.currentIndex()))
print(self.combobox2.itemText(self.combobox2.currentIndex()))
print(self.combobox2.itemText(index)) ####### addItems() 增加多项元素,不带数据 #########
def init_combobox3(self):
self.combobox3.addItems(items_list)
self.combobox3.setCurrentIndex(-1) def on_combobox3_Activate(self, index):
print(self.combobox3.count())
print(self.combobox3.currentIndex())
print(self.combobox3.currentText())
print(self.combobox3.currentData())
print(self.combobox3.itemData(self.combobox3.currentIndex()))
print(self.combobox3.itemText(self.combobox3.currentIndex()))
print(self.combobox3.itemText(index)) ####### setModel() 设置数据模型,不带数据 #########
def init_combobox4(self):
self.tablemodel = QStringListModel(items_list)
self.combobox4.setModel(self.tablemodel)
self.combobox4.setCurrentIndex(-1) def on_combobox4_Activate(self, index):
print(self.combobox4.count())
print(self.combobox4.currentIndex())
print(self.combobox4.currentText())
print(self.combobox4.currentData())
print(self.combobox4.itemData(self.combobox4.currentIndex()))
print(self.combobox4.itemText(self.combobox4.currentIndex()))
print(self.combobox4.itemText(index)) if __name__ == "__main__":
app = QApplication(sys.argv)
w = Widget()
w.show()
sys.exit(app.exec_())

【PyQt5-Qt Designer】QComboBox(下拉列表框) 使用模板的更多相关文章

  1. PyQt5 & Qt Designer使用小结

    开始在知乎写文章的原因,主要还是想整理平时的经验,方便自己以后查看,有机会的话大家也可以交流吧. 11月中旬由于项目需要,和另一名实习生负责使用Python开发一个数据分析的小软件. 虽然才开始接触Q ...

  2. PyCharm+PyQt5+Qt Designer配置

    配置前提 因为本机已经配置完毕了,本次使用的是虚拟机中的Win7系统,Win10系统操作步骤完全一样,无任何区别 PyCharm (这个不多说,官网下载安装,我是用的是2019.3版本) Python ...

  3. 痞子衡嵌入式:超级好用的可视化PyQt GUI构建工具(Qt Designer)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是PyQt GUI构建工具Qt Designer. 痞子衡开博客至今已有好几年,一直以嵌入式开发相关主题的文章为主线,偶尔穿插一些其他技术 ...

  4. PyCharm+Qt Designer+PyUIC安装配置教程

    Qt Designer用于像VC++的MFC一样拖放.设计控件 PyUIC用于将Qt Designer生成的.ui文件转换成.py文件 Qt Designer和PyUIC都包含在PyQt5中,所以我们 ...

  5. pyqt5 在qt designer后以弹窗的方式连接多个UI图形界面

    当我们通过pyqt开发时,eric6为我们提供了一个方便的工具:图形化的绘制UI工具--qt designer. 我们可以通过它开发多个UI,然后利用信号-槽工具,将功能代码附着在上面.也可以将多个界 ...

  6. PyQt5(1)——Qt Designer初探

    相关环境配置我们就不介绍了(网上有很多教程) Qt Designer 是一款十分强大的GUI工具,生成的文件为 .UI文件  可以通过命令转化为Py文件,简单来说我们可以通过拖拽方式生成界面,在通过简 ...

  7. Win10安装PyQt5与Qt Designer【转】

    https://blog.csdn.net/u011342224/article/details/78879633 1.直接在cmd中通过pip安装PyQt5 1 pip install pyqt5 ...

  8. Win10安装PyQt5与Qt Designer

    1.直接在cmd中通过pip安装PyQt5 1 pip install pyqt5 会自动下载PyQt5以及sip并安装,因为PyQt5不再提供Qt Designer等工具,所以需要再安装pyqt5- ...

  9. pyqt5对用qt designer设计的窗体实现弹出子窗口的示例

    pyqt5对用qt designer设计的窗体实现弹出子窗口的示例 脚本专栏 python 1. 用qt designer编写主窗体,窗体类型是MainWindow,空白窗口上一个按钮.并转换成mai ...

随机推荐

  1. ActiveX 控件导入程序

    ActiveX 控件导入程序将 ActiveX 控件的 COM 类型库中的类型定义转换为 Windows 窗体控件. http://msdn.microsoft.com/zh-cn/library/8 ...

  2. 【RF库Collections测试】Remove Duplicates

    Name:Remove DuplicatesSource:Collections <test library>Arguments:[ list_ ]Returns a list witho ...

  3. Splash images_enabled 属性

    images_enabled属性用于设置加载页面时是否加载图片,如下,禁止之后,返回的页面截图就不会带有任何图片,加载速度也会快很多 function main(splash, args) splas ...

  4. 脚本控制animation的事件

    由于动作设计经常修改动作,所以每次改完都要再添加一次animation的事件,所以就直接写了个脚本,当然以后可以做成表格,然后用脚本从表格中读取,然后生成对应的animation事件.在Assets/ ...

  5. mysql的存储过程与事务入门

    存储过程是:通过一系列的SQL语句, 根据传入的参数(也可以没有), 通过简单的调用, 完成比单个SQL语句更复杂的功能, 存储在数据库服务器端,只需要编译过一次之后再次使用都不需要再进行编译.主要对 ...

  6. Swift - 3.0 去掉 C 风格循环

    Swift 3.0 版本去掉了沿用已久的 C 风格循环语法, 又是向现代开发语言的一次迈进, 咱们就来看看没了 C 风格循环我们还有什么选择 C 风格循环 关于 C 风格循环, 不我们过多介绍了, 就 ...

  7. PHP 二叉树 二叉排序树实现

    <?php /** * PHP 二叉树 * @author : xiaojiang 2014-01-01 * */ class Tree { protected $k = null; prote ...

  8. 【大数据系列】windows环境下搭建hadoop开发环境使用api进行基本操作

    前言 搭建完hadoop集群之后在windows环境下搭建java项目进行测试 操作hdfs中的文件 版本一 package com.slp.hadoop274.hdfs; import java.i ...

  9. |和||、&&和&

    |和||.&&和& | : 会检查每一个 条件的真伪,再做“或”运算 ||: 按照条件写的顺序,直到一个为true时,后面的条件则不再检查,直接进入条件 & : 会检查 ...

  10. Android org.apache.http.*找不到

    https://blog.csdn.net/u012005313/article/details/51499892 直接把 org.apache.http.legacy.jar 报拷贝出来,放到Ecl ...