c++可视化界面设计_专栏 | Python+Pycharm+PyQT5可视化程序设计入门

作者介绍

a129eba2d6dac5001dd6b953cb00cb1a.png

mishaw

高级工程师

擅长领域: 轮胎建模与仿真,模态轮胎生成,虚拟路谱的整车路躁仿真,CAE NVH前后处理程序开发,结构优化 ,整车建模,仿真精度提升 ,NVH问题解决。 本文由作者首发于公众号:误入CAE的程序员 文末有作者《轮胎建模仿真与模态轮胎的生成》以及150元优惠券。 一个优秀的程序必须要有友好的可视化交互界面GUI。Python有很多GUI开发的框架,像我之前常用的是自带的Tkinter,对于一些小功能不复杂的程序是绰绰有余的,但对于功能稍微复杂,还是希望找到更简便快捷的GUI设计框架。PyQt是QT的Python版本,现在最新的版本已经是PyQt5,是Python的GUI设计之中应用较为广泛的开发框架。本文将基于广泛应用的Pycharm,搭建PyQT5的开发环境。 使用的软件版本:
  • Python 3.6
  • PyCharm Community Edition 2019.3.1 x64
1.安装PyQt模块

首先需要安装模块PyQt5

pip install pyqt5

PyQt5不再提供QtDesigner等工具,需要再安装模块pyqt5-tools

pip install pyqt5-tools
2. 在Pycharm中配置PyQt5的开发环境 需要在Pycharm中配置PyQt5的开发环境,采用的是添加外部工具的方法来实现,需要添加两个外部工具,一个是QtDesinger,用于界面设计,另一个是PyUIC,用于编译UI文件编程py文件。 打开Pycharm——File——Settings——Tools——External Tools,点击+号,按照如下设置外部工具: 2.1 配置QtDesinger d0e81af98acaaafbd2b0e1248b8ffbff.png

需要填写的说明:

Name:QtDesinger Program:C:\Program Files\Python36\Lib\site-packages\PyQt5-tools\designer\designer.exe Working directory:$ProjectFileDir$ 意思是该外部工具定义名称为QtDesinger,外部工具的地址需要自己手动选择,一般为在Python的安装路径中,最后的Working directory设置为当前项目工作目录即可,即创建的UI文件会存储在目录下。 2.2 配置PyUIC 890c93320b1106ed41c1a148eaececa1.png Name:PyUIC Program:C:\Program Files\Python36\Scripts\pyuic5.exe Arguments:$FileName$ -o $FileNameWithoutExtension$.py Working directory:$ProjectFileDir$ 意思是该外部工具定义名称为PyUIC,外部工具的地址需要自己手动选择,一般为在Python的安装路径中,Arguments的意思是会把UI文件转成同名的py文件,最后的Working directory设置为当前项目工作目录即可。

配置完成后,在Pycharm的Tools——External Tools,可以看到刚才配置菜单:

acaad5d761664a0577108e24e4631503.png 打开QtDesinger,即能看到GUI设计界面: 407753d269063046cd15e32d82436c2d.png 3. 基本使用

使用QtDesinger,设计一个计算器界面,最后保存该文件名为PyQT_Form,此时该文件应该是xml的通用格式,文件名后缀为ui。

5412e3852acc3dc00ffe3f7a9e3ae6b7.png

返回Pycharm界面,右键PyQT_Form.ui,弹出的菜单中选择External Tools——PyUIC,PyQT_Form.ui即编译成PyQT_Form.py。

1492888ac6f03282b344551bfbe46a93.png

但此时该界面py文件还不能运行,本着界面设计类和逻辑实现类代码分离的原则,需要写一个主运行的py文件,命名为main_run.py,可以参考如下:

#!/usr/bin/env python3# -*- coding: UTF-8 -*-import sysfrom PyQt5.QtWidgets import QApplication, QMainWindowfrom PyQT_Form import Ui_MainWindowclass MyWindow(QMainWindow, Ui_MainWindow):    def __init__(self, parent=None):        super(MyWindow, self).__init__(parent)        self.setupUi(self)if __name__ == '__main__':    app = QApplication(sys.argv)    myWin = MyWindow()    myWin.show()    sys.exit(app.exec_())

main_run.py中继承了PyQT_Form.py的Ui_MainWindow类,同时又可以添加一些逻辑实现的代码,真正实现界面和逻辑实现的代码分析,后续修改界面,也不影响主程序的运行。

优质课程

轮胎建模仿真与模态轮胎的生成

77d2f616d10fa7ecb4f74421517ba675.png

本课程将完整的培训从轮胎CAD数据到轮胎模态仿真,包括自由模态仿真,刚度仿真,印痕仿真,接地静止的模态仿真,接地滚动模态仿真,三种在状态:自由,接地静止和接地滚动的传涵仿真,以及最后模态轮胎的生成和验证。以实际操作为主,适当的介绍一些基本的理论,让学员零基础也能完成整个轮胎的建模与仿真。

参加本课程,可以掌握模态轮胎的生成的一般过程,并完全掌握轮胎的建模与仿真方法。 课程目录如下: 0. 序章-整车路躁仿真与模态轮胎建模 1. 轮胎简介与仿真概述   1.1 轮胎结构介绍   1.2 轮胎仿真流程说明   1.3 本次课程demo模型介绍   1.4 仿真环境介绍 2. 轮胎建模前处理   2.1 轮胎截面有限元网格划分   2.2 轮胎接触面的建立   2.3 模型单元和节点set设置   2.4 橡胶类部件的材料属性赋予   2.5 加强材部件的材料属性赋予   2.6 空气和轮辋的材料属性赋予   2.7 嵌入和接触对连接设置 3. 2D截面轮胎过盈充气仿真   3.1 过盈和充气仿真   3.2 计算提交与结果查看 4. 3D轮胎生成与轮荷加载仿真    4.1 3D旋转   4.2 刚性路面生成与接触对的建立   4.3 轮辋属性的定义   4.4 3D模型过盈充气仿真   4.5 轮荷加载仿真   4.6 计算提交与结果查看 5. 轮胎轮荷下的模态提取   5.1 轮荷下的模态提取   5.2 计算提交与结果查看 6. 轮胎自由模态仿真   6.1 自由模态的提取   6.2 计算提交与结果查看 7. 模态轮胎的生成   7.1 模态轮胎的生成与校核 8. 高阶课程介绍 9.滚动轮胎模态仿真    9.1 滚动轮胎仿真方法概述   9.2 freeroll仿真(step3)   9.3 滚动轮胎模态提取(step4)    9.4 计算提交与结果查看 10. 有限元轮胎的频响分析    10.1 自由轮胎的频响分析   10.2 接地静止轮胎的频响分析   10.3 接地滚动轮胎的频响分析 11. 模态轮胎(rolling)的生成   11.1 模态轮胎(滚动)生成与校核 12. 应用案例:基于模态轮胎的路躁仿真与诊断

限时优惠

扫码联系客服获取该课程150元课程优惠券只限前10名领取哦!

d72dd19be9eb7a330e84362c13ec1cbe.png

cbcfaa4a0470525a78d7628dd74899ee.png 点击阅读原文,试看轮胎模态课!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值