Mac安装PyQt5

前言:

由于研究院项目需要。准备用pyqt5开发可视化界面。

点击下载链接进去后会看到一些的文件夹

QT:各个版本离线下载地址

那些就是对应的QT版本号

下载链接:http://download.qt.io/archive/qt/

操作系统要下载安装包的文件格式

Windows 32 / 64.exe

MacOS.dmg

Linux / Unix.run

PyQt5官方安装教程指出2种安装方法:

  • Installing from Wheels
  • Building and Installing from Source

网上搜罗的大多是按照第二种方法安装的,本文采用第一种方法更为简便省心,这种方法Only Python v3.5 and later is supported

废话不多说,开始


安装PyQt5

第一步:安装python3

$ brew install python3

第二步:安装PyQt5

$ pip3 install pyqt5

第三步:查看结果

$ python
>>> import PyQt5

至此,PyQt5安装完成!


附图:

这里写图片描述

这里写图片描述


说明:

【解决方法】请参考


【问题2】brew安装完python3后,可能会提示pip3: command not found

【解决方法】创建一个python3的虚拟环境,并在该虚拟环境下使用pip3就好了。 比如本文的python3虚拟环境——3_env 可参考


【问题3】安装可能会遇到pip下载慢的问题

【解决方法】把pip安装源替换成国内镜像

$ mkdir ~/.pip                  # 创建.pip文件夹
$ touch ~/.pip/pip.conf         # 创建pip.conf文件
$ vi ~/.pip/pip.conf            # 修改pip.conf文件123

pip.conf文件输入以下内容:

[global]
timeout = 6000
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host=mirrors.aliyun.com12345

保存退出文件后,再次使用pip3 install pyqt5,一会儿就下载完成了。

Python3 PyQt5 pycharm 环境搭建

https://www.jianshu.com/p/094928ac0b73

Layouts

Vertical Layout垂直布局

Horizontal Layout水平布局

Grid Layout珊格布局

Form Layout表单布局

Spacers

Vertical Spacer垂直间隔

Horizontal Spacer水平布间隔

Buttons

Push Button点击按钮

Tool Button更多工具按钮

Radio Button

Check Box

Display Widgets

Label 文本

尺寸策略(sizePolicy)

sizeHint(期望尺寸)

对于大多数空间来说,sizeHint的值是只读的

读取期望尺寸

self.pushButton.sizeHint().width()

self.pushButton.sizeHint().height()

信号(signal) 槽(slot) 是Qt的核心机制,也是PyQt的核心机制 信号:是由对象或控件发射出去的消息 按钮的单机事件 当单机按钮时,按钮就会向外部发送单机的消息,这些发送出去的信号需要一些代码来拦截,这些代码就是槽 槽本质上是一个函数或方法 信号可以理解为事件 槽可以理解为事件函数 需要将信号和槽绑定 一个信号可以和多个槽绑定,一个槽可以拦截多个信号

主窗口类型 有三种窗口 QMainWindow:可以包含菜单栏,工具栏,状态栏和标题栏,是最常见的窗口形式 QWidget:不确定窗口的基类,就是用Qwidget QDialog:是对话窗口的基类,没有菜单栏,工具栏,状态栏

对话框QDialog QMessageBox QColorDialog QFileDialog打开保存 QFontdialog字体 QInputDialg输出

QLabel控件

setAlignment():设置文本的对齐方式

setIndent():设置文本缩进

text():获取文本内容

setBuddy():设置伙伴关系

setText():设置文本内容

selectedText():返回所选择的字符

setWordWrap():设置是否允许换行

QLabel常用的信号(事件):

  1. 当鼠标滑过QLabel控件时触发:linkHovered
  2. 当鼠标单击QLabel控件时触发:linkActivated