QComboBox

是一个集按钮和下拉选项于一体的控件,也称做下拉列表框

方法
addItem()

添加一个下拉选项

addItems()

从列表中添加下拉选项

Clear()

删除下拉选项集合中的所有选项

count()

返回下拉选项集合中的数目

currentText()

返回选中选项的文本

itemText(i)

获取索引为i的item的选项文本

currentIndex()

返回选中项的索引

setItemText(int index,text)

改变序列号为index的文本

信号
Activated

当用户选中一个下拉选项时发射该信号

currentIndexChanged

当下拉选项的索引发生改变时发射该信号

highlighted

当选中一个已经选中的下拉选项时,发射该信号

 baudrate_label = QLabel(' 波  特  率  ')
bytesize_label = QLabel(' 数 据 位' )
parity_label = QLabel(' 校 验 位 ')
stopbit_label = QLabel(' 停 止 位 ') self.serialPort_combox = QComboBox()
port_serial = mylib.getPort()
i = 0
for i in range(len(port_serial)):
self.serialPort_combox.addItem(str(port_serial[i]))#一个个添加
self.serialPort_combox.setCurrentIndex(len(port_serial)-1)#设置默认值为最后一个
self.baudrate_combox = QComboBox()
self.baudrate_combox.addItems(myconst.baudrate_list)#直接添加一个list
self.baudrate_combox.setCurrentText(myconst.baudrate_list[4])#设置默认选择
#for item in myconst.baudrate_list:
#baudrate_combox.addItem(str(item)) self.bytesize_combox = QComboBox()
self.bytesize_combox.addItems(myconst.bytesizes)
self.bytesize_combox.setCurrentText(myconst.bytesizes[3])#设置默认选择
self.parity_combox = QComboBox()
self.parity_combox.addItems(myconst.parity_list)
self.stopbit_combox = QComboBox()
self.stopbit_combox.addItems(myconst.stop_bits)
self.stopbit_combox.setCurrentIndex(0)
#将以上控件添加到formlayout布局中
flayout_1.addRow(serialPort_label, self.serialPort_combox)
flayout_1.addRow(baudrate_label, self.baudrate_combox)
flayout_1.addRow(bytesize_label, self.bytesize_combox)
flayout_1.addRow(parity_label, self.parity_combox)
flayout_1.addRow(stopbit_label, self.stopbit_combox)
#将布局添加到paraConf_combox (QGroupBox) 中
self.portSetting_groupbox.setLayout(flayout_1)
 import sys
from PyQt5.QtCore import *
from PyQt5.QtWidgets import *
from PyQt5.QtCore import * class ComboxDemo(QWidget):
def __init__(self,parent=None):
super(ComboxDemo, self).__init__(parent)
#设置标题
self.setWindowTitle('ComBox例子')
#设置初始界面大小
self.resize(300,90) #垂直布局
layout=QVBoxLayout()
#创建标签,默认空白
self.btn1=QLabel('') #实例化QComBox对象
self.cb=QComboBox()
#单个添加条目
self.cb.addItem('C')
self.cb.addItem('C++')
self.cb.addItem('Python')
#多个添加条目
self.cb.addItems(['Java','C#','PHP'])
#当下拉索引发生改变时发射信号触发绑定的事件
self.cb.currentIndexChanged.connect(self.selectionchange) #控件添加到布局中,设置布局
layout.addWidget(self.cb)
layout.addWidget(self.btn1)
self.setLayout(layout) def selectionchange(self,i):
#标签用来显示选中的文本
#currentText():返回选中选项的文本
self.btn1.setText(self.cb.currentText())
print('Items in the list are:')
#输出选项集合中每个选项的索引与对应的内容
#count():返回选项集合中的数目
for count in range(self.cb.count()):
print('Item'+str(count)+'='+self.cb.itemText(count))
print('current index',i,'selection changed',self.cb.currentText()) if __name__ == '__main__':
app=QApplication(sys.argv)
comboxDemo=ComboxDemo()
comboxDemo.show()
sys.exit(app.exec_())

Pyqt5_QComboBox的更多相关文章

随机推荐

  1. 【linux三剑客】sed命令

    sed - stream editor for filtering and transforming text sed 流编辑器 strem edition,实现对文件的增删改替换查是Linux中第二 ...

  2. 图论--SCC缩点--Tarjan

    // Tarjan算法求有向图强连通分量并缩点 /*强连通缩点与双连通缩点大同小异,也就是说将强连通分支缩成一个点之后,没有强连通,成为有向无环图,在对图进行题目的操作.*/ #include< ...

  3. 有向图强连通分量SCC(全网最好理解)

    定义: 在有向图中,如果一些顶点中任意两个顶点都能互相到达(间接或直接),那么这些顶点就构成了一个强连通分量,如果一个顶点没有出度,即它不能到达其他任何顶点,那么该顶点自己就是一个强连通分量. 做题的 ...

  4. python(random 模块)

     一.Random 模块 注意:random() 是不能直接访问的,需要导入 random 模块,然后通过 random 静态对象调用该方法. 1.random.random() 返回随机生成的一个 ...

  5. python selenium(常用关键字)

    1.文本按钮操作相关: send_keys()输入文本 from selenium import webdriver import time dr = webdriver.Chrome() dr.ge ...

  6. jenkins 安装成功之后配置

    一.基础配置介绍 jenkins安装成功之后如果某些东西配置的话,可能部署的时候一堆的问题,所以单独总结一下,让大家少走弯路 二.准备工作 1.需要准备一台服务器,大家可以在网上买,个人学习的话还是建 ...

  7. POJ3255(次最短路)

    描述 求1到n的次最短路 开个\(dis[maxn][2]\)的储存距离的二维数组,0储存最短路,1储存次短路 初始化全为正无穷,\(dis[1][0]=0;\) 然后遍历更新时,先尝试更新最短路和次 ...

  8. Spring Cloud 学习 之 Spring Cloud Eureka(概述)

    Spring Boot版本:2.1.4.RELEASE Spring Cloud版本:Greenwich.SR1 前述: ​ 服务治理可以说是微服务架构中最为核心和基础的模块,它主要用来实现各个微服务 ...

  9. ubuntu上lib-ace库安装编译

    描述下本人电脑情况: 虚拟机版本:VMware-workstation-full-v7.1.4: ACE版本:ACE6.0.0 虚拟机[Linux](http://lib.csdn.net/base/ ...

  10. 附018.K3S-ETCD高可用部署

    一 K3S概述 1.1 K3S介绍 K3S是一个轻量级Kubernetes发行版.易于安装,内存消耗低,所有二进制文件不到40mb. 适用于: 边缘计算-Edge 物联网-IoT CI ARM 1.2 ...