换了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. redis不重启,切换RDB备份到AOF备份

    确保redis版本在2.2以上 [root@pyyuc /data ::]#redis-server -v Redis server v= sha=: malloc=jemalloc- bits= b ...

  2. html页面调用js文件里的函数报错-->方法名 is not defined处理方法

    前几天写了一个时间函数setInterval,然后出现了这个错误:Uncaught ReferenceError: dosave is not defined(…) 找了半天都没发现错在哪,最后找到解 ...

  3. 学习animejs

    1.安装方式 (1)npm install animejs 2.引入 import anime from 'animejs' 3.使用 (anime({ targets: 'div', transla ...

  4. ios 中pickerView城市选择和UIDatePicker生日选择

    代码详见压缩包

  5. 关于pdfbox操作pdf的分享链接手长

    http://blog.csdn.net/fighting_no1/article/details/51038966

  6. ubuntu16.04 配置双网卡机器

    本文介绍一台具有双有线网卡的机器在Linux下如何配置双网卡 系统平台:Ubuntu16.04 1:查看机器网卡信息,是否双网卡都能正确被机器pci识别 可以通过以下命令查看设备网卡,若果看到两条网卡 ...

  7. 5.移动终端App测试点归纳

    以下所有测试最后必须在真机上完整的执行. 1 安装.卸载测试 1.1 在真机上.第三方软件(xy苹果助手.91.安卓助手)的安装与卸载 1.2 安装在手机卡上 或 SD卡上 (不同的IOS和安卓版本) ...

  8. 神州数码OSPF基于区域认证(简单、MD5认证)

    实验要求:掌握基于区域的简单认证及MD5认证 拓扑如下 简单认证 R1 enable 进入特权模式 config 进入全局模式 hostname R1 修改名称 interface l0 进入端口 i ...

  9. 基于python的unittest测试框架集成到jenkins(Mac)

    1.jenkins部分 1.1 安装jenkins jenkins下载地址:https://jenkins.io/download/ 安装步骤,疯狂点击下一步 1.2 打开jenkins服务 在浏览器 ...

  10. Java面向对象 第3节 类的封装和继承

      一.封装 封装的概念:将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的访问和操作. 封装的2个大致原则:1)把尽可能多的东西隐藏起来,对外提供便捷的接口 ...