网站首页 > 博客文章 正文
前言
本节我们学习使用Qt Designer使用QComboBox。
一、基础知识
1.QCombox简介
QComboBox对象显示一个下拉列表可供选择,是一个集按钮和下拉选项于一体的控件,也称做下拉列表框。此外,QCombox允许用户修改列表的每个项目。
QCombox常用方法如下:
QCombox信号:
二、实例
1. QT Designer设计UI
复制“ pyqt5快速上手基础篇8-菜单栏、工具栏和状态栏“中image文件夹内容和action_tool.ui,并修改action_tool.ui名字为combox.ui,用Qt Designer打开如下所示:
双击波特率combox,如下图所示:
点击上图加号,分别增加机组常用波特率,结果如下图:
同样方式,设置数据位内容:5、6、7、8,校验位内容:无、奇校验、偶校验,停止位内容:1、1.5、2,流控内容:无、CTS/RTS、XON/XOFF,如下图:
同时修改combox名称如下所示:
2 将*.ui转换为ui_combox.py
进入run.py目录,输入如下命令:
pyuic5 -o ui_combox.py combox.ui
3 编写python程序
# encoding=utf-8
import sys
import PyQt5.QtWidgets as qw
import ui_combox
# sys.setrecursionlimit(1000000)
class myForm(qw.QMainWindow, ui_combox.Ui_MainWindow):
def __init__(self):
super().__init__()
self.setupUi(self)
self.statusbar.showMessage("status:ok")
self.comboBox_baud.currentIndexChanged.connect(self.combox_baud_cb)
self.pushButton.clicked.connect(self.btn_test_cb)
def combox_baud_cb(self):
data = self.comboBox_baud.currentText()
qw.QMessageBox.information(self, "提示", "您选择了" + data)
def btn_test_cb(self):
self.comboBox_uart.addItem("COM4")
if __name__ == '__main__':
app = qw.QApplication(sys.argv)
w1 = myForm()
w1.show()
app.exec_()
上述程序为主页面的Combox波特率(combox_baud)的currentIndexChanged信号对应的槽函数,槽函数中显示用户选择的波特率,同时为pushButton增加一个cicked的槽函数btn_test_cb,点击按钮的时候,为Combox串口增加一个Item。
三、运行
进入文件目录,输入python3 run.py,即可弹出上述用QT Designer设计出来的MainWindow页面。
串口波特率选择9600,界面如下所示:
点击发送按钮,串口Combox会增加一个选项“COM4”,界面显示如下所示
四、结语
(1) 注意串口combox是使用函数的方式增加下拉选项,其他combox是使用Qt Designer增加下拉选项。
作者:小驿
寄语:纵使生命对我们不公,我们也要努力活出自己的风采!
猜你喜欢
- 2024-10-24 Qt Examples——QSlider(qt qcompleter)
- 2024-10-24 正点原子I.MX6U嵌入式Qt开发指南:第七章《Qt控件 2》
- 2024-10-24 销售订单管理,Excel表格模板演示
- 2024-10-24 抓大放小,瞅瞅 Qt 的几个基础模块
- 2024-10-24 WPF --- 如何重写WPF原生控件样式?
- 2024-10-24 Python入坑系列-pyside6桌面编程之border边框
- 2024-10-24 1.3 MyFirstWidget代码讲解及实用编程技巧分享
- 2024-10-24 C#知识|.Net控件二次封装之ComboBox下拉框
- 2024-10-24 在WPF 中想要在表格的同一列上显示多个表头
- 2024-10-24 Qt模型视图结构_代理(犀牛缩放视图后看不见模型了)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)