Appearance
PyQt中类的基本应用
一、基本框架
1. 程序源码
python
import sys
from PyQt5.QtWidgets import QApplication,QWidget
class MyWindow(QWidget): # 定义一个类,类名为MyWindow,并继承QWidget类
def __init__(self): # 定义MyWindow类的构造方法
super(MyWindow,self).__init__()
# 使用super方法找到MyWindow的父类(超类)QWidget,并调用父类的初始化方法进行初始化
pass
if __name__=='__main__':
# 获取参数列表
app = QApplication(sys.argv)
# 创建自定义的w窗口
w = MyWindow()
# 显示窗口
w.show()
# 循环运行程序,直到人为退出
app.exec()
2. 源码讲解
二、整体基础实战
- 隐藏原始标题栏,通过自定义的窗口类做一个类似爬虫工具的窗口
1. 程序源码
python
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QLineEdit, QPushButton
from PyQt5.QtCore import Qt
from PyQt5.QtGui import QIcon
class MyWindow(QWidget): # 定义一个类,类名为MyWindow,并继承QWidget类
def __init__(self): # 定义MyWindow类的构造方法
super(MyWindow,self).__init__()
# 使用super方法找到MyWindow的父类(超类)QWidget,并调用父类的初始化方法进行初始化
# 设置隐藏默认标题栏、窗口标题、窗口大小、窗口位置、窗口图标
self.setWindowFlag(Qt.FramelessWindowHint)
self.setWindowTitle("Qt爬虫浏览器")
self.resize(800,600)
self.move(850,400)
self.setWindowIcon(QIcon('安卓端浏览器打开.ico'))
# 创建并设置窗口名称标签
label = QLabel("Qt爬虫浏览器",self)
label.setGeometry(10,10,100,20)
# 创建并设置爬取地址输入框
edit_search = QLineEdit(self)
edit_search.setPlaceholderText("请输入您要爬取的网站地址")
edit_search.setGeometry(115,10,400,20)
# 创建并设置开始爬取按钮
btn_start = QPushButton("开始爬取",self)
btn_start.setGeometry(520,5,100,30)
# 创建并设置结束爬取按钮
btn_end = QPushButton('停止爬取',self)
btn_end.setGeometry(625,5,100,30)
# 创建并设置退出按钮
btn_quit = QPushButton('退出',self)
btn_quit.setGeometry(730,5,50,30)
# 创建并设置爬取内容显示框(目前只讲解了文本框,故此处先使用文本框代替)
edit_result = QLineEdit(self)
edit_result.setPlaceholderText("这是爬取结果1...这是爬取结果2...")
edit_result.setGeometry(50,50,700,300)
# 创建并设置保存按钮
btn_save = QPushButton('保存数据到数据库',self)
btn_save.setGeometry(300,400,200,30)
# 创建并设置清空按钮
btn_clear = QPushButton('清空爬取的数据',self)
btn_clear.setGeometry(300,460,200,30)
if __name__=='__main__':
# 获取参数列表
app = QApplication(sys.argv)
# 创建自定义的w窗口
w = MyWindow()
# 显示窗口
w.show()
# 循环运行程序,直到人为退出
app.exec()
2. 源码讲解
3. 其它说明
- 如果窗口默认标题栏被设置成隐藏,但进行了窗口名称、窗口图标等设置想要查看其效果,目前所学的方法无法显示到窗口上,但可以在运行时查看任务栏上显示的图标进行效果查看