在高通410c开发板使用PyQt开发电动窗帘Demo(五)

使用PyCharm开发功能模块

1. UI文件转成Python文件

打开PyCharm,创建工程目录,默认目录为C:\Users\Administrator\PycharmProjects\ElectricCurtain,在该目录下创建libs文件夹,将Qt Designer保存的UI文件拷贝到工程目录中,这里默认的文件名为ElectricCurtainUI.ui

右键选择ElectricCurtainUI.ui 找到External Tool 选择PyUIC,之后会在文件的同级目录下生成ElectricCurtainUI.py文件

在高通410c开发板使用PyQt开发电动窗帘Demo(五)_第1张图片

同样将Qt Designer中引用的APPResources.qrc文件以及images文件夹以及拷贝到libs中,右键APPResources.qrc文件选择ExternalTools下的PYRCC按钮,之后会在libs文件夹中生成APPResources_rc.py文件。

双击打开ElectricCurtainUI.py文件,修改最下方的import APPResources_rc代码为import libs.APPResources_rc

2. Main.py文件创建及UI加载

Project窗口中右键New一个Python脚本,取名为Main,作为Demo的主程序入口。

在高通410c开发板使用PyQt开发电动窗帘Demo(五)_第2张图片

Main.py文件中首先通过from libs.ElectricCurtainUI import Ui_MainWindow引入上文生成的ui模块,之后定义了MyApp类,该类继承了QtGui.QMainWindow, Ui_MainWindow,在MyApp__init__方法中分别实现了QMainWindow以及Ui_MainWindow的初始化工作。

之后在Main.py文件中添加了如下代码作为Demo的程序入口。

在高通410c开发板使用PyQt开发电动窗帘Demo(五)_第3张图片

通过windowcmd程序 输入python 加上Main.py的文件路径即可运行程序,在Debian系统终端中输入python3加上Main.py的文件路径运行程序。

Main.py中定义了UI相关的事件逻辑,包括窗帘滑块、四个按钮以及提示框的事件处理。

在高通410c开发板使用PyQt开发电动窗帘Demo(五)_第4张图片

3. Curtain模块

PyCharm中创建CurtainManager.py文件,文件中定义Curtain类,实现了窗帘移动相关的方法逻辑,包括窗帘的重置、打开、关闭以及停止移动四个动作。定义了四个动作的相关回调方法,在Main.py文件中,通过import libs.CurtainManager引入了Curtain类,并在MyApp类中实现了窗帘四个动作的回调方法,并在__init__方法定义了Curtain对象,并注册了回调方法。

在高通410c开发板使用PyQt开发电动窗帘Demo(五)_第5张图片

4. IO模块

由于Demo客户端是通过在系统文件中通过读写数值的方式操作窗帘执行动作,因此创建了IOManager.py文件作为DemoIO管理,在文件中定义了IOMgr,提供了写入和读取两个方法。

Main.py中定义了ioMgr变量保存了IO管理类实例, self._ioMgr = libs.IOManager.IOMgr(),在Curtain类中使用了_ioMgr变量来实现操作窗帘的功能。

在高通410c开发板使用PyQt开发电动窗帘Demo(五)_第6张图片

5. Time模块

Demo中需要监听系统的运行时间,因此创建TimeManager.py文件,定义TimeMgr类,提供获取系统时间以及时间戳的方法。

6. AppData模块

创建AppDataManager.py文件用来保存Demo程序中的数据,包括UI文字、提示文字以及窗帘相关的数据。




你可能感兴趣的:(在高通410c开发板使用PyQt开发电动窗帘Demo(五))