QGIS插件式开发(一)---PyQt5+python3.6+Pychram2017.3开发环境配置

2023-11-20

1、PyQt简介
PyQt是用来创建GUI应用程序的工具包,它把python和Qt成功地绑定在一起,Qt库是目前最强大的库之一,PyQt是由Phil Thompson开发。
PyQt实现了一个Python模块集。它有超过300个类,将近6000个函数和方法。它是一个多平台的工具包,可以运行在所有主要操作系统上,包括UNIX、Windows和Mac。
2、PyQt主要构成
 因为可用的类很多,故将其分成几个模块,如下图所示,其中QtCore模块包含核心的非GUI功能,例如时间、文件、目录、各种数据类型、流、网址、MIME类型、线程和进程。QtGui模块包含与图形有关的类,例如按钮、窗体、状态栏、工具栏、滚动条、位图、颜色、字体等。QtNetwork模块包含网络编程相关的类,这些类允许编写TCP/IP和UDP的客户端和服务器,使网络编程更简单。QtOpenGL模块使用OpenGL库渲染3D和2D图形,能够无缝集成Qt的GUI库和OpenGL库。QtXml模块包含使用XML文件的类,这个模块提供了SAX和DOM API的实现。QtSvg模块提供显示SVG文件的类。可缩放矢量图形(SVG)是一种用于描述二维图形和图形应用程序的XML语言。QtSql模块包含与数据库有关的类。

3、PyQt的下载
首先根据自己电脑上的Python和Qt的版本,如果不明确,见图一,我电脑上Python3.61,Qt2.14,下载的PyQt为:PyQt5-5.9.2-5.9.3-cp35.cp36.cp37-none-win_amd64.whl

4、PyQt5的安装
第一步:将下载的PyQt挪到Python的安装文件夹中,为了方便,我把它放在了python的主目录下,即:D:\work\AZWJ\python3.6。
第二步:cmd进入命令行界面,使用CD进入上面PyQt的存放目录,执行pip install PyQt5-5.9.2-5.9.3-cp35.cp36.cp37-none-win_amd64.whl。安装成功界面如下:
注意:如果提示Could not find a version that satisfies the requirement sip>=4.19 (from pyqt5) (from versions: ) No matching distribution found for sip>=4.19 (from pyqt5),建议卸载python3.7,安装3.6

5、PyQt5-tools安装
由于PyQt5 wheels不提供包含在旧的二进制安装程序中的工具,如:Qt Designer,但是,有时仍然需要这些工具,故提供了PyQt5-tools来满足我们的需求,首先下载pyqt5_tools-5.8.2.1.0-cp36-none-win_amd64.whl,然后安装。方法同上。结果如下:

6、在Pycharm中配置PyQt5
第一步:打开Pycharm->File->Setting,或者用快捷键Ctrl + Alt + S ,弹出Setting对话框,如下图:

第二步:点击绿色的“+”号,

第三步:以同样的方式,添加Pyuic,Pyrcc,这里也是可以根据自己的喜好命名,其中,Pyuic和Pyrcc在python3.6->scripts下,Pyuic的作用是将Qt的界面转换成py代码,Pyrcc主要用于将资源文件即Qt中的qrc文件装换成py文件。注意Pyuic,和Pyrcc的参数设置:



第四步:测试
可以发现,Tools下面多了一个External Tools,打开,里面有我们添加的工具,点击Qtdesigner,结果如下:



保存退出,在Pycharm主界面,选择刚才保存的.ui文件,选择Tools->External-Tools点击Pyuic5或者选中文件后右击也行,将其转化为.py文件,结果如下图:
注意:如果你用的是汉化版的Pychram,File->Setting或者用快捷键Ctrl + Alt + S会出现点击之后没有反应,个人认为是汉化过程中的问题,这个问题最简单的方法就是换成英文的,立马就解决了。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

QGIS插件式开发(一)---PyQt5+python3.6+Pychram2017.3开发环境配置 的相关文章

  • task_5 - 副本

    Task01 Task06树模型与集成学习笔记整理 1 Task01 信息论基础 决策树分类思想 用树的节点代表样本集合 通过某些判定条件来对节点内的样本进行分配 将它们划分到当前节点下的子节点 这样决策树希望各个子节点中类别的纯度之和应高
  • 内存文件系统提升磁盘性能瓶颈

    author skate time 2011 08 22 提升磁盘性能瓶颈 linux的内存文件系统 ramdisk ramfs tmpfs ramdisk 是块设备 在使用它们之前必须用选择文件系统将其格式化 并且调整文件系统大小比较麻烦
  • 【廖雪峰python进阶笔记】模块

    1 导入模块 要使用一个模块 我们必须首先导入该模块 Python使用import语句导入一个模块 例如 导入系统自带的模块 math import math 你可以认为math就是一个指向已导入模块的变量 通过该变量 我们可以访问math
  • Python Pandas导出Hbase数据到dataframe

    Python导出Hbase数据的思路 使用happybase连接Hbase 使用table scan 扫数据 将得到的数据整理为dataframe格式 将从Hbase中得到的byte类型的数据转为str类型的数据 示例代码 import h
  • 数据结构之哈希(C++实现)

    数据结构之哈希 C 1 哈希概念 顺序结构以及平衡树中 元素关键码与存储位置之间没有对应关系 因此在查找一个元素的时候 要经过关键码多次比较 顺序表查找的时间复杂度为O N 而平衡树中树的高度为O log 2 N 搜索的效率取决于搜索过程中
  • Mybatis

    文章目录 前言 业务逻辑 使用Mybatis实现 使用Mybatis plus实现 前言 工作的时候 遇到了需要将一个数据库的一些数据插入或更新到另一个数据库 一开始使用insert into TABLE col1 col2 VALUES
  • 全国大学生计算机技能应用大赛Java模拟题

    全国大学生计算机技能应用大赛Java模拟题 竞赛官网 http www cnccac com 单选题 1 以下哪个不是java的垃圾回收算法 A 标记清除算法 B 空间分配算法 C 标记整理算法 D 分代回收算法 2 下列名称在java语言
  • cocos 基础动作加上简单特效

    使用文理缓存创建精灵 cc Director getInstance getTextureCache addImage WechatIMG3 png localsp cc Sprite createWithTexture cc Direct
  • Error inflating class androidx.constraintlayout.widget.ConstraintLayout

    今天下载了android studio 3 3 1体验体验新版本来着 没想到新建项目直接来了个这个 android view InflateException Binary XML file line 2 Error inflating c
  • 常见的距离算法和相似度(相关系数)计算方法

    摘要 1 常见的距离算法 1 1欧几里得距离 Euclidean Distance 以及欧式距离的标准化 Standardized Euclidean distance 1 2马哈拉诺比斯距离 Mahalanobis Distance 1
  • vue3 ---- 递归组件生成menu菜单 && 路由守卫鉴权

    目录 递归组件 el menu 父组件 子组件 路由 Vue路由守卫实现登录鉴权 全局守卫 路由独享的守卫 组件内的守卫 完整的导航解析流程 菜单权限 按钮权限 对于一些有规律的DOM结构 如果我们再一遍遍的编写同样的代码 显然代码是比较繁
  • IDEA切换分支导致项目异常, 部分类爆红问题解决

    关于idea切换分支导致项目异常爆红的方式解决两种办法 1 maven 并没有及时刷新 所以 当我们第一时间出现这个问题的时候 首选是刷新maven 如图所示 2 如果刷新mavne 还是没有解决idea 项目爆红的情况的话 那我们就需要考
  • 计算机不能创建用户,Windows10系统无法创建新用户该怎么办?

    由于工作需要 需要对同一台计算机创建多个用户帐户 Windows7操作系统创建新用户的方法很简单 简单几步就能够轻松完成创建 参照Windows7操作系统创建新用户的步骤 发现并不适用于Windows10操作系统 系统会提示需要登录Micr
  • CocosCreator波浪Shader

    waveEffect effect Copyright c 2017 2020 Xiamen Yaji Software Co Ltd CCEffect techniques passes vert sprite vs vert frag
  • Serverless 的前世今生

    作者 阿里云用户组 从云计算到 Serverless 架构 大家好 我是阿里云 Serverless 产品经理刘宇 很高兴可以和大家一起探索 Serverless 架构的前世今生 从云计算到云原生再到 Serverless 架构 技术飞速发
  • 【推荐算法】双塔模型代码(tensorflow)

    推荐算法 双塔模型介绍 MachineCYL的博客 CSDN博客 上文介绍了双塔模型的原理和结构 这篇介绍一下双塔模型的代码实现 我使用的是tensorflow来实现双塔模型和模型训练 一 前期准备 tensorflow使用的版本是2 0
  • 正激拓扑的复位电路

    正激拓扑的复位电路 1 杂谈 2 原理简介 3 分类 3 1 有源钳位 3 2 绕组复位 3 3 RCD复位 3 4 谐振复位 1 杂谈 我发现我有个最大的缺点是不会讲话 每次跟不熟悉的人讲话或者汇报时 就毫无逻辑 紧张的要死 被讨厌的勇气
  • Navicat设置id自增,并随时设置自增的起始值

    一 问题背景 有时候数据里面的表的id为 1 4 13 15等等 如下图 怎么重新设置自增的起始值 使它变成每个增加1 而不是散列的数 如下效果 二 解决方法 选中要修改的表 点击设计表 如下 然后点击 选项 在自动递增那里改为1即可 点击
  • 2022全国职业技能大赛-网络安全赛题解析总结④(超详细)

    2022全国职业技能大赛 网络安全赛题解析总结 自己得思路 模块A 基础设施设置与安全加固 20分 模块B 网络安全事件响应 数字取证调查和应用安全 40分 模块C CTF夺旗 攻击 20分 模块D CTF夺旗 防御 20分 有什么不懂得可
  • MATLAB实现PSO-SVM多输入单输出回归预测(粒子群算法优化支持向量机)

    作者简介 热爱科研的Matlab仿真开发者 修心和技术同步精进 matlab项目合作可私信 个人主页 Matlab科研工作室 个人信条 格物致知 更多Matlab仿真内容点击 智能优化算法 神经网络预测 雷达通信 无线传感器 电力系统 信号

随机推荐

  • 循环 for while do..while 以及break和continue

    循环 for 双重for while dowhile continue break 一 for循环 被循环的执行语句为循环体 是否继续执行取决于终止条件语句 所以 循环语句由 循环体和循环的终止条件组成的语句 语句结构 for 初始化变量
  • 桌面怎么设置 计算机 网络连接,电脑桌面的本地连接ip地址可以设置吗_本地连接ip地址设置方法 - 驱动管家...

    1 首先在Win7桌面上找到 网络 入口 如下图 进入Win7网络 2 进入网络之后我们再点击顶部的 网络共享中心 如下图 进入Win7网络共享中心 3 进入Win7网络共享中心之后 我们再点击左侧的 更改网络适配器 如下图 选择更改网络适
  • 经典,一文讲透ESD原理和设计

    一直想给大家讲讲ESD的理论 很经典 但是由于理论性太强 任何理论都是一环套一环的 如果你不会画鸡蛋 注定了你就不会画大卫 先来谈静电放电 ESD Electrostatic Discharge 是什么 这应该是造成所有电子元器件或集成电路
  • Ubuntu20.04通过rsync和inotify实现定时备份与实时备份

    通过rsync和inotify实现定时备份与实时备份 为了避免主服务单点故障 可以将数据备份到远程备份机器 可以使用rsync工具同步Jenkins home到远程 可以利用rsync工具的 exclude from FILE 功能 定制一
  • KVM热迁移

    KVM热迁移 介绍 KVM热迁移的前提是拥有共享存储 以下通过NFS实现KVM热迁移 迁移过程 将一处于运行状态的KVM虚拟机从节点kvm 01迁移到kvm 02后继续运行 准备 主机准备 hostname IP地址 系统 配置 kvm 0
  • Docker 国内镜像地址

    http f1361db2 m daocloud io http hub mirror c 163 com https docker mirrors ustc edu cn
  • c++中的类模板

    C 的类模板为生成通用的类声明提供了一种更好的方法 模板提供参数化类型 即能够将类型名作为参数传递给接收方来建立类或者函数 一 定义类模板 include
  • IndexError: index 5 is out of bounds for axis 1 with size 5

    keras中报错 IndexError index 5 is out of bounds for axis 1 with size 5 原因 大概率是你的数据集label没有设置好 keras中数据集标签需要从0开始 并且连续 类似于下图这
  • Unity WebGL错误集锦

    ips 0 Unity的PlayerSettings的otherSettings或者Publish Settings里面的Enable Exceptions里面选择Full StackTrace 可以在打出的包中的浏览器的webgl打印出错
  • 【计算机基础

    定点数的表示 定点数 小数点的位置固定 例 996 007 常规计数 浮点数 小数点的位置不固定 例 9 96007 10 2 科学计数法 二进制的定点数 浮点数也类似 无符号数 整个机器字长的全部二进制位均为数值位 没有符号位 相当于数的
  • 关于Linux和Shell的相关书籍

    入门类 一直认为 在一个系统上学习开发之前 首先需要熟悉这个系统的使用 鉴于天朝的国情 绝大部分人第一个接触的操作系统就是Windows 因此对于这绝大部分人来说 如果要学习Linux开发 学会使用这个系统都是必不可少的一个环节 现在的Li
  • UVa 1347 Tour

    题目 Tour 题意 来自luogu John Doe想用最小的路程游览完所有目的地 每个目的地都用坐标xi yi表示 任何两目的地的xi都不相同 两目的地之间的路程是两点之间的直线距离 John是这样走的 他从最左边的点开始 然后只能向右
  • word页码如何设置为章节加页码,例如第一章第一页1-1、第二章第一页2-1

    由于用到word页码分章节 页码的形式 从网上查了一下 质量真的很差 没有一篇文章讲清楚的 有的所答非所问 一怒之下 利用几个小时的时间解决问题并写下这篇文章 以供大家学习参考 1 word插入页码 选择包含章节号 1 1 双击页脚 点击插
  • 55黑马QT笔记之关闭子线程

    55黑马QT笔记之关闭子线程 1 这里为什么要单独写多一篇文章来说线程的关闭呢 主要是想让大家提升印象 养成资源回收的好习惯 任何时候都要想起开辟过的内存回收 这里的关闭子线程上一篇也写到了 就是利用关闭窗口时调用槽函数回收掉 2 具体步骤
  • 2023最新ChatGPT网站源码+支持GPT4+Ai绘画+用户会员套餐+邀请分佣功能+支持后台一键更新+永久更新!

    2023最新ChatGPT网站源码 支持GPT4 Ai绘画 用户会员套餐 邀请分佣功能 支持后台一键更新 永久更新 可同时 单独 开启或者关闭GPT3 5和GPT4 0两种ChatGPT提问模型 用户可切换 次数套餐也是分开的 支持手机电脑
  • News Feed 系统设计

    新鲜事系统 News Feed 什么是新鲜事 News Feed 你登陆 Facebook Twitter 朋友圈 之后看到的信息流 你的所有朋友发的信息的集合 有哪些典型的新鲜事系统 Facebook Twitter 朋友圈 RSS Re
  • Windows与Linux系统实现文件互传(通俗易懂)

    SCP指令可以实Windows系统与Linux系统之间的文件互传 引言 Windows系统文件传输到Linux系统上 先操作 Windows系统文件传输到Linux系统上 再细聊 Linux系统文件传输到Windows系统上 先操作 Lin
  • 趁着周日我卷了 uni-app《uview 狠 优秀的UI框架》

    前期回顾 手写一个服务器代码将 vue电商后台管理系统 部署上去 上线 打包 活在风浪里的博客 CSDN博客亲测可用 一定会收获颇多 1 上线vue电商后台管理项目2 手写搭建服务器并挂载 node 3 打包优化 完成上线https blo
  • Shell数组:shell数组的定义、数组长度

    Shell在编程方面比Windows批处理强大很多 无论是在循环 运算 bash支持一维数组 不支持多维数组 并且没有限定数组的大小 类似与C语言 数组元素的下标由0开始编号 获取数组中的元素要利用下标 下标可以是整数或算术表达式 其值应大
  • QGIS插件式开发(一)---PyQt5+python3.6+Pychram2017.3开发环境配置

    1 PyQt简介 PyQt是用来创建GUI应用程序的工具包 它把python和Qt成功地绑定在一起 Qt库是目前最强大的库之一 PyQt是由Phil Thompson开发 PyQt实现了一个Python模块集 它有超过300个类 将近600