序言
还是想学习 PyQt5 方面的知识,于是就开始进行 PyQt5 的编程环境的搭建。
在搭建过程中,我犯了一个很严重的经验主义错误,如下:
我直接使用了 https://sourceforge.net/projects/pyqt/files/PyQt5/ 页面上Latest Version的安装包,没有注意到版本是32位,而我的计算机是64位的,Python版本也是64位的,出现了在Python Shell中import PyQt5不报错,但是执行import PyQt5.QtCore会报错的结果。
import PyQt5.QtCore
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "D:\Program Files\JetBrains\PyCharm 2017.3.2\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 20, in do_import
module = self._system_import(name, *args, **kwargs)
ImportError: DLL load failed: %1 不是有效的 Win32 应用程序。
安装PyQt5
重新使用pip安装PyQt5
D:\anaconda3\envs\GUI>python -m pip install -i https://pypi.douban.com/simple PyQt5
Looking in indexes: https://pypi.douban.com/simple
Collecting PyQt5
Downloading https://pypi.doubanio.com/packages/a7/2d/d2c989006c86ae98ed230c28c3e0dd7fa0374e723afc107d12268159ceb7/PyQt5-5.11.3-5.11.2-cp35.cp36.cp37.cp38-none-win_amd64.whl (93.4MB)
100% |████████████████████████████████| 93.4MB 1.8MB/s
Collecting PyQt5_sip<4.20,>=4.19.11 (from PyQt5)
Downloading https://pypi.doubanio.com/packages/8d/4d/a7728bbcaaeecd17b386885d2abd6b849233317b03de39a1d6c1bc006248/PyQt5_sip-4.19.13-cp36-none-win_amd64.whl (51kB)
100% |████████████████████████████████| 61kB 1.1MB/s
Installing collected packages: PyQt5-sip, PyQt5
The scripts pylupdate5.exe, pyrcc5.exe and pyuic5.exe are installed in 'D:\anaconda3\envs\GUI\Scripts' which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Successfully installed PyQt5-5.11.3 PyQt5-sip-4.19.13
D:\anaconda3\envs\GUI>python
Python 3.6.7 |Anaconda, Inc.| (default, Oct 28 2018, 19:44:12) [MSC v.1915 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import PyQt5
>>> import PyQt5.QtCore
>>>
>>>
这样就安装成功了。
测试
使用下面的代码进行测试:
import sys
from PyQt5.QtWidgets import QWidget, QApplication
if __name__ == '__main__':
app = QApplication(sys.argv) # 初始化应用
w = QWidget() # 初始化界面
w.show() # 显示界面
w.setWindowTitle("Hello") # 窗口标题
sys.exit(app.exec_()) # 关闭应用
结果就是这样的。
下面的这条代码来自 学点编程吧,我以自己的理解进行了注释
import sys
from PyQt5.QtCore import Qt
from PyQt5.QtWidgets import QWidget, QLCDNumber, QSlider, QVBoxLayout, QApplication
class SigSlot(QWidget):
def __init__(self):
QWidget.__init__(self) # 界面初始化
self.setWindowTitle('第一个PyQt5') # 窗口标题
lcd = QLCDNumber(self) # 模拟LCD显示器
slider = QSlider(Qt.Horizontal, self) # 滑动条
vbox = QVBoxLayout() # VBox布局方式
vbox.addWidget(lcd) # LCD 液晶显示器
vbox.addWidget(slider) # 滑动条
self.setLayout(vbox)
slider.valueChanged.connect(lcd.display) # 滑动条的值改变的同时在LCD显示出来
self.resize(350, 250) # 界面大小
app = QApplication(sys.argv)
gb = SigSlot()
gb.show()
sys.exit(app.exec_())
暂时就这样了。
结语
学习学习其他方面的知识,对自己还是有好处的。
如有错误,敬请指出,感谢指正! — 2018-11-30 19:33:10 于苏州
最新评论
这个软件有bug的,客户端windows有些键不能用如逗号、句号
没有收到邮件通知
我的评论通知貌似坏掉了,定位一下问题
测试一下重新部署后的邮件功能
居然看到自己公司的MIB库,诚惶诚恐
那可能是RobotFramework-ride的版本问题。我装的1.7.4.2,有这个限制。我有空再尝试下旧版本吧,感谢回复。
你好!我在python2.7中安装RobotFramework-ride的时候提示wxPython的版本最高是2.18.12,用pip下载的wxPython版本是4.10,而且我在那个路径下没有找到2
真的太好了,太感谢了,在bilibili和CSDN上都找遍了,终于在你这里找到了