pyqt5界面化学习

pyqt5界面化学习

一月 26, 2020

主要是一个月之后,eric6怎么用的基本上全忘记了qwq,花点时间重新温习一下

pyqt5编程准备

程序安装

详见:Eric6安装和配置

工程创建:

我写一个程序要做的步骤有:新建工程-新建窗口-编译窗口-添加响应

新建窗口的时候,一些简单的响应就直接在qtDesigner里面用信号系统直接添加了,比如关闭窗口等等。左边的工具条得多熟悉,刚刚用的时候经常找不到要用的工具在哪里。对了,menubar是在窗口上右键添加的,当时就找了好久(haipa)

编译窗口的话最好一次性成功,好像改来改去的话总会出点奇怪的毛病。就像刚才我在MenuBar的QMenu上添加的trigger事件就没反映 暂时还不知道啥问题。

添加事件:在.ui文件右键第三行generate dialog codes

代码部分:

生成的代码文件题头

1
2
3
4
5
6
import sys
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
#新手不是很明白就把所有都搞成import * 了
from Ui_MainWindow import Ui_MainWindow #这一行把那个点给去掉

学习一: 控件与类

QFileDialog

对话框打开:QFileDialog.getOpenFileName([parent=None[, caption=""[, dir=""[, filter=""[, selectedFilter=""[, options=QFileDialog.Options()]]]]]])

返回的是一个组(fileName, selectedFilter)

QComboBox

from PyQt5.QtWidgets import QComboBox

参考网址:https://doc.qt.io/qtforpython/PySide2/QtWidgets/QComboBox.html#PySide2.QtWidgets.QComboBox

PySide2到底是个啥我还没搞清楚。。

添加项:QComboBox.addItem(icon, text[, userData=None]);其中icon – QIcon text – unicode userData – object,icon项可略

清空项:QComboBox.clear() 清空所有 包括external model

统计数目:QComboBox.count() 返回一个int值

返回现在的值:QComboBox.currentData([role=Qt.UserRole]) Parameters:role – int;Return type:object

返回现在的索引:QComboBox.currentIndex() 返回一个int

QGraphicsView

QImage

学习二: 打开图形