1.背景
- 本人系统, 网络, 内核驱动, 嵌入式开发, 之前项目没机会接触UI图形程序开发, 测试用例都是终端文字提示 OK/NG, scuuess/fail, 高级一点终端文字加
高亮颜色
- 也曾幻想自己开发一款 软件工具/APP, 让上百万人使用, 然后被 被阿里/腾讯/…收购, 最后躺平
- 虽然做了程序员, 成了被压榨的牛马, 但还是有心中的一点火
2.需求
- iperf3 客户端, 服务端, 说明页面 分页实现
- 客户端支持选项
- ip 地址配置
- port 端口: 默认5201
- time测试时间
- proto测试协议, 默认tcp
- bandwith 带宽, 默认无
- num 测试线程数量
- start/stop 开始停止
- 输出框: 显示结果
3.实现方案
开发语言: python + pyqt5 + qt_designer(QT UI设计)
安装pyqt5
pip3 install pyqt5
安装qt工具: designer
pip3 install pyqt5-tools
Linux 安装中文字体 --> windows不需要执行
sudo apt install -y ttf-wqy-zenhei ttf-wqy-microhei
一步一步实现
- pyqt5_按钮button
- pyqt5_设置中文字体
- pyqt5_文本输入框
- pyqt5_下拉框_combo_box
- pyqt5_输出框_TextEdit
- pyqt5_多标签_布局显示
- qt_designer ui设计布局示例 继承模式, 组合模式
实现上面的pyqt5 示例, 就可以自己尝试相关的功能
iperf3代码实现:
main_iperf3_继承模式.py
使用方法:
总结
- 终于完成自己开发图形程序的小心愿
- 后面有想法可以开发自己的图像小工具, 提高开发效率