换了VSCODE开发,感觉比sublime好点,可能是由于第三版老弹框烦人吧。VSCODE看着也挺好看的。

学习 PyQt5 中文教程

0. 安装完之后错误

pip 安装了 pyqt5

from PyQt5.QtWidgets import QApplication, QWidget

这句错误:E0611:No name 'QApplication' in module 'PyQt5.QtWidgets'

搜到是要sip,卸载python5重新安装了sip后再试还是错误,但是直接在命令行运行是好的。说明现在是外部环境的问题,把当前Anaconda路径换为python3路径,还是有错误。

最后换google一次解决,在VSCODE用户配置里加

"python.linting.pylintArgs": [
"--extension-pkg-whitelist=PyQt5"
]

ok.

当前版本

Python==3.7.0
PyQt5==5.11.2
PyQt5-sip==4.19.12
sip==4.19.8
操作系统:win10 64位

1. Hello World

加图标的时候,没有反应,根据原作者overflow的链接看的更模糊了。

图片目录在F:\py\py-snippet\hominid\music.png

,换了个绝对路径就好了。

因为

如果你在C:\test目录下执行python getpath\getpath.py,那么os.getcwd()会输出“C:\test”,sys.path[0]会输出“C:\test\getpath”。

我工作目录是在F:\py\py-snippet,python执行时候的目录下没有图片,所以下面两种方式都可以:

self.setWindowIcon(QIcon(sys.path[0]+'/music.png'))
self.setWindowIcon(QIcon('hominid/music.png'))

第一篇很简单,放个窗口,控制大小和位置,退出

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QToolTip, QPushButton, QMessageBox, QDesktopWidget
from PyQt5.QtGui import QIcon, QFont
from PyQt5.QtCore import QCoreApplication class Example(QWidget):
def __init__(self):
super().__init__()
self.initUI() def initUI(self):
# location and size
self.setGeometry(300,300,300,300) # title
self.setWindowTitle('Icon') # icon
self.setWindowIcon(QIcon(sys.path[0]+'/music.png')) # 提示消息字体
QToolTip.setFont(QFont('Georgia',10)) # 提示框
self.setToolTip('this is <br/><i>python</i> and <i>pyqt5</i><hr/> program') # 按钮以及提示框
btn=QPushButton('退出',self)
# 退出事件
btn.clicked.connect(QCoreApplication.instance().quit)
btn.setToolTip('quick, quick click')
#btn.resize(btn.sizeHint())
btn.move(50,50) self.center()
self.show() # 关闭事件
def closeEvent(self,event):
print('close')
reply = QMessageBox.question(self,"answer","To be or not to be?",QMessageBox.Yes | QMessageBox.No, QMessageBox.Yes)
if reply == QMessageBox.Yes:
#print(QMessageBox.Yes)
event.accept()
else:
reply = QMessageBox.question(self,'

PyQt5 入门的更多相关文章

  1. PyQt5入门

    PyQt5 是用来创建Python GUI应用程序的工具包.作为一个跨平台的工具包,PyQt可以在所有主流操作系统上运行(Unix,Windows,Mac). 本文描述Windows系统下如何安装Py ...

  2. PyQt5入门教程

    原文链接:https://blog.csdn.net/azuremouse/article/details/90338961 问题记录: 1. pip 安装时速度太慢, 需要使用国内镜像 pip in ...

  3. 推荐:pyqt5入门教程

    版权声明:本文为CSDN博主「AzureMouse」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明. 原文链接:https://blog.csdn.net/azure ...

  4. Python3使用PyQt5制作简单的画板/手写板

    0.目录 1.前言 2.简单的画板1.0 在定点和移动中的鼠标所在处画一条线 3.简单的画板2.0 在定点和移动中的鼠标所在处画一条线 并将画过的线都保留在窗体上 4.简单的画板3.0 将按住鼠标后移 ...

  5. Python PyQT5的入门使用

    Python 3+ PyQT5的入门使用 窗口类型介绍 QMainWindow,QWidget和QDialog都是用来创建窗口的.可以直接使用也可以继承后再使用. QMainWindow 该类窗口可以 ...

  6. 基于Qt Designer和PyQt5的桌面软件开发--环境搭建和入门例子

      本文介绍了如何使用技术栈PyCharm+Qt Designer+PyQt5来开发桌面软件,从环境搭建.例子演示到对容易混淆概念的解释.文中用到的全部软件+代码下载链接为:https://url39 ...

  7. 二、PyQt5基本功能和操作入门

    在这里,我将根据自己的学习历程从初级到高级介绍pyqt5.因为是学到哪里就写道哪里,所以内容排版比较随意.有两点问题需要先说明: 1.虽然界面的设计可以借助qt designer进行拖拽创建,并且可以 ...

  8. PyQt5编程入门

    1  25行的弹出式闹钟 import sys import time from PyQt5 import QtCore from PyQt5.QtWidgets import QLabel from ...

  9. [ PyQt入门教程 ] PyQt5环境搭建和配置

    PyQt入门系列教程主要目的是希望通过该系列课程学习,可以使用PyQt5工具快速实现简单的界面开发,包括界面设计.布局管理以及业务逻辑实现(信号与槽).简单说就是可以使用PyQt5工具快速画一个控件摆 ...

随机推荐

  1. python3入门教程(二)操作数据库(一)

    概述 最近在准备写一个爬虫的练手项目,基本想法是把某新闻网站的内容分类爬取下来,保存至数据库,再通过接口对外输出(提供后台查询接口).那么问题就来了,python到底是怎么去操作数据库的呢?我们今天就 ...

  2. NPOI 操作excel之 将图片插入到指定位置;

    //新建类 重写Npoi流方法 public class NpoiMemoryStream : MemoryStream { public NpoiMemoryStream() { AllowClos ...

  3. mpvue 转小程序实践总结

    介绍 Mpvue 是一个使用 Vue.js 开发小程序的前端框架.  基础介绍 框架基于 Vue.js 核心,修改了 Vue.js 的 runtime 和 compiler 实现,使其可以运行在小程序 ...

  4. linux 查看当前系统版本号

    为避免现场未能完全安装系统,使用yum 安装版本需一致 第一种方法: [root@sky9896sky]# lsb_release -a bash:lsb_release: command not f ...

  5. tomcat报错-->'Start Tomcat v8.0 Server at localhost' has encountered a problem.

    toncat报错-->'Start Tomcat v8.0 Server at localhost' has encountered a problem. 2016年04月16日 09:27:2 ...

  6. cocos2dx开发之util类&方法——取范围随机数

    #include <random> int random(int start, int end) { //return start+rand()%(end-start+1); static ...

  7. CodeForces - 444C

    F - DZY Loves Colors DZY loves colors, and he enjoys painting. On a colorful day, DZY gets a colorfu ...

  8. 全志A33 lichee 修改开机图片

    开发平台 * 芯灵思SinlinxA33开发板 淘宝店铺: https://sinlinx.taobao.com/ 嵌入式linux 开发板交流 QQ:641395230 首先要知道开机图片存在哪里? ...

  9. java中的可释放资源定义,类似c#中的using

    public static class FileDuplicator implements AutoCloseable { Scanner in = null; PrintWriter out = n ...

  10. goaccess 通过jsonpath 转换为prometheus metrics

    goaccess 是一个不错的日志分析工具,包含了json 数据同时支持基于websocket 的实时数据处理,当然我们可以通过jsonpath 的exporter 转换为支持promethues 的 ...