因最近正在学习pyqt的一些功能,在学习过程中遇到了通过下拉框的不同选项触发不同事件的要求,上网查了一下并没有找到太合适的方法,解决之后稍微总结了一下,希望能帮到同样是刚开始学习pyqt的人。代码如下:
# -*- coding:utf8 -*-
import sys
from start_test import Ui_Dialog
from PyQt5.QtWidgets import QApplication, QDialog
class Ui_Window(QDialog):
def __init__(self):
QDialog.__init__(self)
self.main_ui = Ui_Dialog() # 给主窗口定义一个对象
self.main_ui.setupUi(self)
self.register()
def register(self):
self.main_ui.start_test.clicked.connect(self.func)
def func(self):
a_text = self.main_ui.choose.currentText()
a_text = a_text.encode("utf-8")
if a_text == "多线激光雷达":
self.multi_lidar()
elif a_text == "前单线激光雷达":
self.before_single_lidar()
elif a_text == "后单线激光雷达":
self.behind_single_lidar()
else:
print "未选择"
def multi_lidar(self):
print "1"
def before_single_lidar(self):
print "2"
def behind_single_lidar(self):
print "3"
if __name__ == '__main__':
"""
运行入口
"""
app = QApplication(sys.argv) # 创建应用
window = Ui_Window() # 给主窗口定义对象
window.show() # 展示主界面
sys.exit(app.exec_())
UI窗体链接如下:
https://blog.csdn.net/weixin_54062353/article/details/124315328