Skip to content

Commit 5647a5c

Browse files
committed
<feat>pyqt5库学习
1 parent 7ad9a10 commit 5647a5c

6 files changed

Lines changed: 559 additions & 0 deletions

File tree

GithubProject/reader/__init__.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
#!/usr/bin/env python
2+
# -*- coding: utf-8 -*-
3+
# @author: 千泷(杨婷)
4+
# @Email: qianlong.yang@tuya.com
5+
# @Time: 2021/12/19 19:44
6+
# @File: __init__.py
6.49 KB
Loading

GithubProject/reader/pyqt5_demo.py

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
#!/usr/bin/env python
2+
# -*- coding: utf-8 -*-
3+
# @author: 千泷(杨婷)
4+
# @Email: qianlong.yang@tuya.com
5+
# @Time: 2021/12/19 20:17
6+
# @File: reader
7+
import sys
8+
from PyQt5.QtWidgets import (QApplication, QWidget, QPushButton, QToolTip)
9+
from PyQt5.QtGui import QIcon, QFont
10+
11+
12+
class FirstDemo(QWidget):
13+
def __init__(self):
14+
super().__init__()
15+
self.initUI()
16+
17+
def initUI(self):
18+
19+
QToolTip.setFont(QFont('SansSerif', 10)) # 设置工具提示的字体
20+
self.setToolTip('This is a <b>anne first demo</b> QWidget widget') # 创建提示,支持富文本格式
21+
btn = QPushButton('Button', self)
22+
btn.setToolTip('This is a <b>QPushButton</b> widget') # 创建PushButton,并设置tooltip
23+
btn.resize(btn.sizeHint()) # 显示默认尺寸
24+
btn.move(50, 50)
25+
self.setGeometry(300, 300, 300, 220) # 设置窗口位置和大小
26+
self.setWindowTitle("FirstDemo") # 设置窗口表态
27+
self.setWindowIcon(QIcon('headPicture.jpg')) # 设置窗口图标
28+
self.show() # 显示窗口
29+
30+
31+
if __name__ == "__main__":
32+
app = QApplication(sys.argv) # 创建应用程序和对象
33+
# w = QWidget()
34+
# w.resize(250, 150)
35+
# w.move(300, 300)
36+
# w.setWindowTitle("FirstDemo")
37+
# w.show()
38+
ex = FirstDemo()
39+
sys.exit(app.exec_())

GithubProject/reader/reader.py

Lines changed: 177 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,177 @@
1+
# -*- coding: utf-8 -*-
2+
3+
# Form implementation generated from reading ui file 'reader.ui'
4+
#
5+
# Created by: PyQt5 UI code generator 5.15.4
6+
#
7+
# WARNING: Any manual changes made to this file will be lost when pyuic5 is
8+
# run again. Do not edit this file unless you know what you are doing.
9+
import os
10+
import sys
11+
import time
12+
13+
from PyQt5 import QtCore, QtGui, QtWidgets
14+
15+
16+
class Ui_MainWindow:
17+
def setupUi(self, MainWindow):
18+
# 设置主窗口大小
19+
MainWindow.setObjectName("MainWindow")
20+
MainWindow.resize(540, 600)
21+
self.centralwidget = QtWidgets.QWidget(MainWindow)
22+
MainWindow.setCentralWidget(self.centralwidget)
23+
self.centralwidget.setObjectName("centralwidget")
24+
# 设置抓取设置窗口位置大小
25+
self.groupBox = QtWidgets.QGroupBox(self.centralwidget)
26+
self.groupBox.setGeometry(QtCore.QRect(10, 10, 511, 151))
27+
font = QtGui.QFont()
28+
font.setFamily("Arial")
29+
font.setBold(True)
30+
font.setWeight(75)
31+
self.groupBox.setFont(font)
32+
self.groupBox.setObjectName("groupBox")
33+
# 设置抓取期数labal
34+
self.label = QtWidgets.QLabel(self.groupBox)
35+
self.label.setGeometry(QtCore.QRect(30, 30, 131, 21))
36+
font = QtGui.QFont()
37+
font.setFamily("Arial")
38+
font.setPointSize(11)
39+
font.setBold(True)
40+
font.setWeight(75)
41+
self.label.setFont(font)
42+
self.label.setObjectName("label")
43+
# 设置保存路径label
44+
self.label_2 = QtWidgets.QLabel(self.groupBox)
45+
self.label_2.setGeometry(QtCore.QRect(30, 70, 131, 16))
46+
font = QtGui.QFont()
47+
font.setFamily("Arial")
48+
font.setPointSize(11)
49+
font.setBold(True)
50+
font.setWeight(75)
51+
self.label_2.setFont(font)
52+
self.label_2.setObjectName("label_2")
53+
# 设置期数范围label
54+
self.label_3 = QtWidgets.QLabel(self.groupBox)
55+
self.label_3.setGeometry(QtCore.QRect(330, 30, 141, 21))
56+
font = QtGui.QFont()
57+
font.setFamily("Arial")
58+
font.setPointSize(9)
59+
font.setWeight(50)
60+
self.label_3.setFont(font)
61+
self.label_3.setObjectName("label_3")
62+
# 设置抓取期数文本框
63+
self.lineEdit_2 = QtWidgets.QLineEdit(self.groupBox)
64+
self.lineEdit_2.setGeometry(QtCore.QRect(160, 30, 161, 20))
65+
self.lineEdit_2.setObjectName("lineEdit_2")
66+
# 设置保存路径文本框
67+
self.lineEdit = QtWidgets.QLineEdit(self.groupBox)
68+
self.lineEdit.setGeometry(QtCore.QRect(160, 70, 221, 20))
69+
self.lineEdit.setObjectName("lineEdit")
70+
# 设置选择按钮
71+
self.pushButton_2 = QtWidgets.QPushButton(self.groupBox)
72+
self.pushButton_2.setGeometry(QtCore.QRect(400, 70, 75, 23))
73+
font = QtGui.QFont()
74+
font.setFamily("Arial")
75+
font.setPointSize(11)
76+
font.setBold(True)
77+
font.setWeight(75)
78+
self.pushButton_2.setFont(font)
79+
self.pushButton_2.setAutoFillBackground(True)
80+
self.pushButton_2.setObjectName("pushButton_2")
81+
# 设置确定按钮
82+
self.pushButton = QtWidgets.QPushButton(self.groupBox)
83+
self.pushButton.setGeometry(QtCore.QRect(200, 110, 75, 23))
84+
font = QtGui.QFont()
85+
font.setFamily("Arial")
86+
font.setPointSize(11)
87+
font.setBold(True)
88+
font.setWeight(75)
89+
self.pushButton.setFont(font)
90+
self.pushButton.setAutoFillBackground(True)
91+
self.pushButton.setObjectName("pushButton")
92+
# 设置文件预览窗口位置大小
93+
self.groupBox_2 = QtWidgets.QGroupBox(self.centralwidget)
94+
self.groupBox_2.setGeometry(QtCore.QRect(10, 170, 511, 341))
95+
font = QtGui.QFont()
96+
font.setFamily("Arial")
97+
font.setBold(True)
98+
font.setWeight(75)
99+
self.groupBox_2.setFont(font)
100+
self.groupBox_2.setObjectName("groupBox_2")
101+
# 设置选项卡窗口
102+
self.tabWidget = QtWidgets.QTabWidget(self.groupBox_2)
103+
self.tabWidget.setGeometry(QtCore.QRect(0, 30, 511, 341))
104+
self.tabWidget.setObjectName("tabWidget")
105+
# 设置按日期显示tab
106+
self.tab = QtWidgets.QWidget()
107+
self.tab.setObjectName("tab")
108+
# 设置按日期显示表格窗口
109+
self.tableWidget = QtWidgets.QTableWidget(self.tab)
110+
self.tableWidget.setGeometry(QtCore.QRect(0, 0, 511, 321))
111+
self.tableWidget.setObjectName("tableWidget")
112+
self.tableWidget.setColumnCount(2)
113+
self.tableWidget.setRowCount(0)
114+
item = QtWidgets.QTableWidgetItem()
115+
self.tableWidget.setHorizontalHeaderItem(0, item)
116+
item = QtWidgets.QTableWidgetItem()
117+
self.tableWidget.setHorizontalHeaderItem(1, item)
118+
self.tableWidget.setColumnWidth(0, 130) # 设置第一列宽度
119+
# 设置自动填充容器
120+
self.tableWidget.horizontalHeader().setStretchLastSection(True)
121+
# 显示垂直滚动条
122+
self.tableWidget.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOn)
123+
self.tabWidget.addTab(self.tab, "")
124+
# 设置按名称显示tab
125+
self.tab_2 = QtWidgets.QWidget()
126+
self.tab_2.setObjectName("tab_2")
127+
# 设置按名称显示列表窗口
128+
self.listWidget = QtWidgets.QListWidget(self.tab_2)
129+
self.listWidget.setGeometry(QtCore.QRect(0, 0, 511, 321))
130+
self.listWidget.setViewMode(QtWidgets.QListView.IconMode)
131+
self.listWidget.setObjectName("listWidget")
132+
self.tabWidget.addTab(self.tab_2, "")
133+
self.listWidget.setIconSize(QtCore.QSize(72, 72)) # 图标大小
134+
self.listWidget.setMaximumWidth(800) # 最大宽度
135+
self.listWidget.setSpacing(12) # 间距大小
136+
# 显示垂直滚动条
137+
self.listWidget.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOn)
138+
139+
self.retranslateUi(MainWindow)
140+
self.tabWidget.setCurrentIndex(1)
141+
QtCore.QMetaObject.connectSlotsByName(MainWindow)
142+
143+
def retranslateUi(self, MainWindow):
144+
"""用来设置窗体中控件的默认值"""
145+
_translate = QtCore.QCoreApplication.translate
146+
MainWindow.setWindowTitle(_translate("MainWindow", "安妮的小书屋"))
147+
self.groupBox.setTitle(_translate("MainWindow", "抓取设置"))
148+
self.label.setText(_translate("MainWindow", "请选择抓取期数:"))
149+
self.label_2.setText(_translate("MainWindow", "请选择保存路径:"))
150+
self.label_3.setText(_translate("MainWindow", "(期数范围为01——24)"))
151+
self.pushButton_2.setText(_translate("MainWindow", "选择"))
152+
self.pushButton.setText(_translate("MainWindow", "确定"))
153+
self.groupBox_2.setTitle(_translate("MainWindow", "文件预览"))
154+
self.tabWidget.setTabText(
155+
self.tabWidget.indexOf(
156+
self.tab), _translate(
157+
"MainWindow", "按日期显示"))
158+
self.tabWidget.setTabText(
159+
self.tabWidget.indexOf(
160+
self.tab_2), _translate(
161+
"MainWindow", "按名称显示"))
162+
strDate = str(time.localtime().tm_year) + '-' + str(time.localtime().tm_mon)
163+
self.lineEdit_2.setText(_translate("MainWindow", strDate))
164+
self.lineEdit.setText(_translate("MainWindow", os.getcwd()))
165+
item = self.tableWidget.horizontalHeaderItem(0)
166+
item.setText(_translate("MainWindow", "期数"))
167+
item = self.tableWidget.horizontalHeaderItem(1)
168+
item.setText(_translate("MainWindow", "名称"))
169+
170+
171+
if __name__ == '__main__':
172+
app = QtWidgets.QApplication(sys.argv)
173+
mw = QtWidgets.QMainWindow() # 创建窗体对象
174+
ui = Ui_MainWindow() # 创建pyqt5的创建对象
175+
ui.setupUi(mw) # 调用pyqt5窗体的方法对窗体对象进行初始化设置
176+
mw.show() # 显示窗体
177+
sys.exit(app.exec_())

0 commit comments

Comments
 (0)