前言

在写完程序之后想让程序看起来更加可视化一点,所以想看看在上面加个ui界面,记录下发生过的问题以及解决方法。
      如果发现文章哪里有问题,欢迎指正。

为什么选择pyside2呢?

在选择库的时候看到了很多对比pyside2和pyqt5的文章。我看完总结下来就是,pyqt5更加的成熟,资料也相对更多,但是如果在你的程序里面使用了pyqt5,那你的程序必须开源,而pyside2的话就没有这个规定。(但我后来才发现如果使用动态加载ui的话好像没有影响)

使用QT disigner

QT disigner是一个可视化开发ui的一个工具,在pyqt5和pyside2的包里面都有这个工具,在这里我们可以拖动左边的各种控件来布局我们的ui

加载ui

在完成ui设计之后我们只是实现了界面,但还需要再加上控件相应的功能。我们可以将ui文件转换成python程序(网上有很多教程),再将这个程序里面生成的类导入我们的程序进行控件功能的处理,好处就是更加稳定,并且如果打包程序的话会方便点。
      还有一种就是直接在程序中动态加载ui,这样使用的好处是便于修改界面以及添加功能,可以直接利用qt设计师修改ui文件,再对相应添加的控件进行功能添加就可以了。如果使用第一种的话每次修改ui文件后都需要转换成python程序,比较麻烦。

ui界面未响应或卡死

在添加功能之后会出现这样一种情况,就是执行一段程序的时候需要花费大量的时间,无法进行其它功能的检测以及操作。ui界面会未响应或者直接卡死。
      比如我是进行目标检测,在加载权重的时候无法进行按钮点击或者其它操作。解决方法就是使用python中threading库里面的Thread创建一个新的线程,让它来进行加载模型的操作,这样我们的主线程依旧可以进行我们的其它功能的操作。

在新线程中无法实时更新ui界面

我们在进行多线程操作的时候,因为它是在与界面显示不同的线程中进行操作的,所以我们没有办法直接将数据更新到我们的ui界面中。这时候我们需要使用PySide2.QtCore里的Signal,QObject类。我们要先定义一个信号源的类。
      在创建好之后我们需要在界面的初始化函数里面实例化这个类,并写一个函数与这个信号连接。
      这样我们就定义好了这个信号,在下面我们就可以利用emit来调用了。

      这样就可以达到实时更新ui界面的效果了。

记录——python的ui界面实现相关推荐

  1. python制作界面_详解python做UI界面的方法

    详解python做UI界面的方法 更新时间:2019年02月27日 14:44:34 投稿:laozhang 在本文里我们给大家整理了关于python做UI界面的方法和具体步骤,对此有需要的朋友们可以 ...

  2. python做ui界面_从零开始创建UI

    这篇教程会详细介绍如何创建自己的第一个UI界面(包含文本框和按钮)以及按钮相关的逻辑绑定.将按照以下步骤来进行介绍: 1.如何根据自己的需要来写UI界面json内容(包含一个文本框和一个按钮) 2.如 ...

  3. python做ui界面_用python编写简单ui界面窗口

    新用户新地理处理,最常见的方法是使用工具对话框执行地理处理操作.当必须执行一次只有一个工具,这个工具对话框确实是一个好方法去经营.地理处理工具易于使用和显示警告图标或错误图标及相关消息旁边不当使用参数 ...

  4. python视频解析UI界面

    目录 前言: 一.准备工作 二.程序 三.总结 前言: 利用python的pyside2创建的一个视频解析的UI界面,原理就是利用视频接口(网上找的接口),可以观看VIP电视剧,电影,动漫等. 一.准 ...

  5. python画界面的插件_ImagePy——UI界面支持开放插件的Python开源图像处理框架

    雷锋网 AI 科技评论按,ImagePy 是一款 python 开源图像处理框架,其 UI 界面支持开放插件.在 github:https://github.com/Image-Py/imagepy ...

  6. 基于深度学习的人脸识别与管理系统(UI界面增强版,Python代码)

    摘要:人脸检测与识别是机器视觉领域最热门的研究方向之一,本文详细介绍博主自主设计的一款基于深度学习的人脸识别与管理系统.博文给出人脸识别实现原理的同时,给出Python的人脸识别实现代码以及PyQt设 ...

  7. 基于深度学习的人脸性别识别系统(含UI界面,Python代码)

    摘要:人脸性别识别是人脸识别领域的一个热门方向,本文详细介绍基于深度学习的人脸性别识别系统,在介绍算法原理的同时,给出Python的实现代码以及PyQt的UI界面.在界面中可以选择人脸图片.视频进行检 ...

  8. 基于深度学习的鸟类检测识别系统(含UI界面,Python代码)

    摘要:鸟类识别是深度学习和机器视觉领域的一个热门应用,本文详细介绍基于YOLOv5的鸟类检测识别系统,在介绍算法原理的同时,给出Python的实现代码以及PyQt的UI界面.在界面中可以选择各种鸟类图 ...

  9. 基于深度学习的中文车牌识别与管理系统(含UI界面,Python代码)

    摘要:本文详细介绍基于深度学习的中文车牌识别与管理系统,在介绍算法原理的同时,给出Python的实现代码以及PyQt的UI界面.在界面中既可以选择需要识别的车牌视频.图片文件.批量图片进行检测识别,也 ...

最新文章

  1. 数组之间的计算matlab,MATLAB软件数组的运算
  2. IDEA svn 更换项目,拉新项目的时候 提示 No appropriate protocol
  3. 【ArcGIS遇上Python】ArcGIS Python实现批量化矢量和栅格数据重命名
  4. 数据结构与算法一篇帮助你吃下KMP算法
  5. java 捆绑_java – 如何在jar文件中捆绑图像
  6. AduSkin - UI 追求极致,永臻完美
  7. android 放大镜动画,Android在图片上进行放大镜效果(放大镜形状)
  8. scrapy_redis项目配置
  9. 【莫队算法】【权值分块】bzoj3585 mex
  10. Failure to find com.rongpd:rpd:pom:1.0 in xxx was cached in the local repository, resolution will no
  11. python文件目录操作-2
  12. 实验一: 网络侦查与网络扫描
  13. c++ 按行读取txt文件并赋值_C 语言入门 19 读取txt文件中的数字,消除其中连续重复的数字...
  14. 计算机老显示错误内存不足,电脑老是显示内存不足怎么办
  15. 使用新浪API生成短连接
  16. 使用json报错java.lang.NoClassDefFoundError: nu/xom/ParentNode
  17. chm打开,显示“已取消到该网站的导航”
  18. 企业微信开发之获取media_id的值
  19. 【diannaoxitong】高手分享:最新版Office2013的全面介绍
  20. 解决浏览器下载文件时中文文件名乱码的问题

热门文章

  1. 利用python爬取微博热搜并进行数据分析
  2. Git命令行操作详解
  3. 2021 ICPC Southeastern Europe Regional Contest 树上dfs+思维
  4. shell mysql并发_shell脚本中的多进程并发处理
  5. 【JDK源码剖析】Queue--队列 PriorityQueue--优先队列
  6. matlab命令(应该很全了,欢迎补充!)
  7. 用 pc 抓取 vlan tag 的数据包
  8. Java程序员校招蚂蚁金服,中科创达java面试题
  9. 安装双系统后,将windows设置为默认启动选项的方法
  10. 用户登录、注册(基于MyBatis+CSS+HTML+Selvet)