使用Python进行串口通信软件开发(2)——入门实例
作者:互联网
往期推荐
文章中的所示例软件设计工程,如需下载,请在“我的学习交流小平台 ”公众号内直接回复: SL001 即可获取。
1 前言
前面的所有准备工作基本已经完成了,在串口通信软件设计之前,我们先进行一个简单的软件界面设计任务来入个门。如果您还未完成前面的准备工作,还请尽可能阅读一下上一篇文章,如有需要可以访问:Python语言串口通信软件开发(1),以方便后面工作更好的展开。
2 新建一个工程
2.1 新建一个工程文件夹
来让我们在某个本地磁盘某个文件夹下创建一个工程文件夹,这里以“TestSample”为例进行新建,如图2.1所示。
2.2 启动Pycharm软件
2.3 新建工程项目
注意:新建一个工程有两种方式,如图2.3和2.4所示。
输入文件名之后,然后我们回车,即可在工程目录下创建一个py文件,这里示例的是“mainsample.py”文件,如图2.8所示。
3 软件界面设计
3.1 打开设计工具
3.2 设计目标
!!今天我们先来设计一个计算圆的面积的软件。
-
输入:半径值
-
输出:面积值(其中输出通过一个按钮触发)
3.3 设计准备
软件看起比较复杂,但是不要紧,跟着我,我们一同设计哈!
-
如图3.5所示,首先拖拽控件栏的滚动条,在Display Widgets容器栏找到Label标签控件,拖拽三个这样的控件到中间的软件界面设计的编辑框中;
-
同样,在Input Widgets容器栏中找到Line Edit文本控件,拖拽到中间的编辑框中,用于输入圆的半径值;
-
最后,在Buttons容器栏中找到Push Button按钮控件,拖拽该控件到中间的编辑框中,用于触发计算过程,最终得到如图3.6所示的界面。
3.4 修改样式属性
下面我们将修改拖拽到界面编辑视窗中各控件的属性,来让我们将视角移至右上角对象查看器栏,修改各个控件的对象名。
各控件修改参数如下表所示。
Class(类) | text | objectName |
---|---|---|
QLable | 半径: | radiusLabel |
QLineEdit | raduisLineEdit | |
QLabel | 面积: | areaLabel_1 |
QLabel | areaLabel_2 | |
QPushButton | 计算 | countBtn |
方式一(建议),如图3.7和3.8所示
方式二,如图3.9所示
这里我们需要对areaLabel_2的控件样式修改一下,如图3.10所示操作,我们将areaLabel_2的“frameShape”修改为Panel;将“frameShadow”修改为Sunken,得到的效果如图3.10左侧所示。
3.5 生成py文件
经过上面一系列的操作,然后我们进行文件保存,好的习惯应该是每隔一段时间保存一下文件的,哈哈!
你可以打开双击生成的这个py文件来瞧瞧!!
4主程序编写
4.1 程序语言文本
# @FileName: mainsample.py
# @Software: PyCharm 2020.3.5
# @Author: Zhu C.Q.
# @Date: 2021/04/03
# 该程序需要一定的Python语言基础,以及类相关的知识;
# 如果您没有这方面的基础,可以阅读文章尾部给出的参考资料,或者也可以抄过来尝试一下了~
import sys
import numpy as np
from PyQt5.QtWidgets import QMainWindow, QApplication
from uiFiles.countInterface_ui import Ui_MainWindow
# 采用单继承与界面独立封装方式进行逻辑设计,听不懂也没关系~
class CountWindown(QMainWindow):
def __init__(self, parent = None): # 该函数为构造函数,实例化该类后会自动执行
super().__init__(parent) # 调用父类构造函数,创建QMainWindow窗体,此时self就是一个QMainWindow对象
self.mainUI = Ui_MainWindow() # 实例化一个UI对象
self.mainUI.setupUi(self)
self.InitEvent() # 调用初始化函数
def InitEvent(self):
self.mainUI.countBtn.clicked.connect(self.CountArea) # 声明信号,若发生点击事件,就执行CountArea方法
def CountArea(self):
radius = float(self.mainUI.radiusLineEdit.text()) # 读取输入框的数据,需要转化成浮点数才能进行计算
area = np.pi * radius ** 2 # np.pi 就是 π
self.mainUI.areaLabel_2.setText(str(area)) # 在输出框设置计算好的数值,注意这里必须是字符串
if __name__ == "__main__":
app = QApplication(sys.argv) # 创建app,用QApplication类,这里的argv为命令行变量数组
# 在任何Qt窗口的系统部件被使用之前必须创建QApplication对象,将控制权交于Qt
countinterface = CountWindown()
countinterface.show()
sys.exit(app.exec_()) # 程序进入消息循环,等待可能的输入进行响应
4.2 运行一下
下来让我们运行它吧!
首次运行我们需要安装如图4.1所示进行操作,后面我可以按照图4.2所示进行运行操作。
如图4.3所示是生成的界面,我们输入一个半径值:10,然后点击计算,就会显示出结果。
4.3 修改一下
我们试着修改一下软件的标题,有两种方式,这里比较推荐第一种。
方式一:
方式二:
运行修改后的主程序
到这里示例软件设计基本就结束啦,不知道你是否已经了解了初步的软件设计流程。
5 结束语
好了,今天就到这里了,我已经讲一个入门的软件设计过程展示给大家了,有什么问题,欢迎留言讨论。后面几期我将正式开始串口通信软件的设计,还望大家喜欢!!这个软件也是我后期研究课题可能应用的工具,我会尽力完美的设计~~ 拜拜!^_^
感谢你的阅读,欢迎点赞和分享支持!
更多内容可以关注我的微信公众号:我的学习交流小平台
了解一下我哈:关于我(About Me!)
标签:控件,Python,self,py,修改,通信软件,串口,所示,如图 来源: https://blog.csdn.net/DreamerZC/article/details/115471485