From 8adeb9f39c857d317693b48b94e090dc57a143cd Mon Sep 17 00:00:00 2001 From: "weiye.wang" Date: Sat, 2 Mar 2024 22:28:21 +0800 Subject: [PATCH] =?UTF-8?q?Qt=E9=87=8D=E5=86=99=20=E6=89=8B=E5=8A=A8?= =?UTF-8?q?=E5=90=8C=E5=B1=8A=E7=BB=93=E6=9E=9C=E5=AF=BC=E5=85=A5=20?= =?UTF-8?q?=E5=B9=B6=E5=8A=A0=E5=85=A5Qt=E9=9D=A2=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 工具v2/Qt面板.py | 2 +- 工具v2/Ui_手动统计结果导入.py | 58 +++++++++++++++++++++++++++ 工具v2/手动统计结果导入.py | 66 +++++++++++++++++++----------- 工具v2/手动统计结果导入.ui | 75 +++++++++++++++++++++++++++++++++++ 工具v2/手动统计结果导入old.py | 26 ++++++++++++ 5 files changed, 203 insertions(+), 24 deletions(-) create mode 100644 工具v2/Ui_手动统计结果导入.py create mode 100644 工具v2/手动统计结果导入.ui create mode 100644 工具v2/手动统计结果导入old.py diff --git a/工具v2/Qt面板.py b/工具v2/Qt面板.py index 9d10c640..51c256db 100644 --- a/工具v2/Qt面板.py +++ b/工具v2/Qt面板.py @@ -9,7 +9,7 @@ def run_command(name,openfilelist): configjson = load_dict("文本文件/config.json") for f in openfilelist: if not f in configjson: - os.system("code -w "+f) + os.system("code "+f) else: lineindex = getlineindex(f'"{f}"',"文本文件/config.json") os.system(f"code -w -g 文本文件/config.json:{lineindex}") diff --git a/工具v2/Ui_手动统计结果导入.py b/工具v2/Ui_手动统计结果导入.py new file mode 100644 index 00000000..612b279f --- /dev/null +++ b/工具v2/Ui_手动统计结果导入.py @@ -0,0 +1,58 @@ +# -*- coding: utf-8 -*- + +################################################################################ +## Form generated from reading UI file '手动统计结果导入.ui' +## +## Created by: Qt User Interface Compiler version 6.6.2 +## +## WARNING! All changes made in this file will be lost when recompiling UI file! +################################################################################ + +from PySide6.QtCore import (QCoreApplication, QDate, QDateTime, QLocale, + QMetaObject, QObject, QPoint, QRect, + QSize, QTime, QUrl, Qt) +from PySide6.QtGui import (QBrush, QColor, QConicalGradient, QCursor, + QFont, QFontDatabase, QGradient, QIcon, + QImage, QKeySequence, QLinearGradient, QPainter, + QPalette, QPixmap, QRadialGradient, QTransform) +from PySide6.QtWidgets import (QApplication, QLabel, QPlainTextEdit, QPushButton, + QSizePolicy, QWidget) + +class Ui_Form(object): + def setupUi(self, Form): + if not Form.objectName(): + Form.setObjectName(u"Form") + Form.resize(281, 183) + self.plainTextEdit = QPlainTextEdit(Form) + self.plainTextEdit.setObjectName(u"plainTextEdit") + self.plainTextEdit.setEnabled(True) + self.plainTextEdit.setGeometry(QRect(10, 30, 181, 141)) + self.plainTextEdit.setReadOnly(True) + self.label = QLabel(Form) + self.label.setObjectName(u"label") + self.label.setGeometry(QRect(10, 10, 101, 16)) + self.pushButton_exec = QPushButton(Form) + self.pushButton_exec.setObjectName(u"pushButton_exec") + self.pushButton_exec.setGeometry(QRect(200, 10, 75, 161)) + font = QFont() + font.setBold(True) + self.pushButton_exec.setFont(font) + + self.retranslateUi(Form) + + QMetaObject.connectSlotsByName(Form) + # setupUi + + def retranslateUi(self, Form): + Form.setWindowTitle(QCoreApplication.translate("Form", u"\u624b\u52a8\u7edf\u8ba1\u7ed3\u679c\u5bfc\u5165", None)) + self.plainTextEdit.setPlainText(QCoreApplication.translate("Form", u"[BEGIN]\n" +"##20240101\n" +"**2026\u5c4a\u9ad8\u4e0001\u73ed\n" +"1 0.875\n" +"10001 0.825 0.630\n" +"[END]", None)) + self.label.setText(QCoreApplication.translate("Form", u"\u624b\u52a8\u7edf\u8ba1\u7ed3\u679c\u6a21\u677f", None)) + self.pushButton_exec.setText(QCoreApplication.translate("Form", u"\u5bfc\u5165\u4e3a\n" +"metadata", None)) + # retranslateUi + diff --git a/工具v2/手动统计结果导入.py b/工具v2/手动统计结果导入.py index 88560462..05d15c60 100644 --- a/工具v2/手动统计结果导入.py +++ b/工具v2/手动统计结果导入.py @@ -1,26 +1,46 @@ -handmadeusagedatafilepath = r"临时文件/手动统计结果.txt" #手动统计文件的位置 -metadatafilepath = r"文本文件/metadata.txt" #输出的metadata文件的位置 - - +from PySide6.QtWidgets import QWidget, QApplication, QFileDialog +from Ui_手动统计结果导入 import Ui_Form from database_tools import * -raw_data = ReadTextFile(handmadeusagedatafilepath) -data_list = [d.strip() for d in re.findall(r"\[BEGIN\]([\s\S]*?)\[END\]",raw_data)] -output = "usages\n\n" - -for item in data_list: - lines = item.split("\n") - for line in lines: - if line.startswith("##"): - date = line.replace("##","").strip() - elif line.startswith("**"): - classname = line.replace("**","").strip() - else: - linedata = re.sub(r"\s+","\t",line) - usage = linedata.split("\t") - id = usage.pop(0) - usagestr = "\t".join(usage) - output += "%s\n%s\t%s\t%s\n\n"%(id.zfill(6),date,classname,usagestr) - -SaveTextFile(output,metadatafilepath) +class MyWindow(QWidget,Ui_Form): + def __init__(self): + super().__init__() + self.setupUi(self) + self.bind() + def bind(self): + self.pushButton_exec.clicked.connect(self.exec) + def exec(self): + handmadeusagedatafilepath = r"临时文件/手动统计结果.txt" #手动统计文件的位置 + metadatafilepath = r"文本文件/metadata.txt" #输出的metadata文件的位置 + raw_data = ReadTextFile(handmadeusagedatafilepath) + data_list = [d.strip() for d in re.findall(r"\[BEGIN\]([\s\S]*?)\[END\]",raw_data)] + output = "usages\n\n" + for item in data_list: + lines = item.split("\n") + for line in lines: + if line.startswith("##"): + date = line.replace("##","").strip() + elif line.startswith("**"): + classname = line.replace("**","").strip() + else: + linedata = re.sub(r"\s+","\t",line) + usage = linedata.split("\t") + id = usage.pop(0) + usagestr = "\t".join(usage) + output += "%s\n%s\t%s\t%s\n\n"%(id.zfill(6),date,classname,usagestr) + SaveTextFile(output,metadatafilepath) + os.system(f"code {metadatafilepath}") + self.close() + + + + + + +if __name__ == '__main__': + app = QApplication([]) + windows = MyWindow() + windows.show() + app.exec() + diff --git a/工具v2/手动统计结果导入.ui b/工具v2/手动统计结果导入.ui new file mode 100644 index 00000000..cb0af304 --- /dev/null +++ b/工具v2/手动统计结果导入.ui @@ -0,0 +1,75 @@ + + + Form + + + + 0 + 0 + 281 + 183 + + + + 手动统计结果导入 + + + + true + + + + 10 + 30 + 181 + 141 + + + + true + + + [BEGIN] +##20240101 +**2026届高一01班 +1 0.875 +10001 0.825 0.630 +[END] + + + + + + 10 + 10 + 101 + 16 + + + + 手动统计结果模板 + + + + + + 200 + 10 + 75 + 161 + + + + + true + + + + 导入为 +metadata + + + + + + diff --git a/工具v2/手动统计结果导入old.py b/工具v2/手动统计结果导入old.py new file mode 100644 index 00000000..88560462 --- /dev/null +++ b/工具v2/手动统计结果导入old.py @@ -0,0 +1,26 @@ +handmadeusagedatafilepath = r"临时文件/手动统计结果.txt" #手动统计文件的位置 +metadatafilepath = r"文本文件/metadata.txt" #输出的metadata文件的位置 + + +from database_tools import * + +raw_data = ReadTextFile(handmadeusagedatafilepath) +data_list = [d.strip() for d in re.findall(r"\[BEGIN\]([\s\S]*?)\[END\]",raw_data)] +output = "usages\n\n" + +for item in data_list: + lines = item.split("\n") + for line in lines: + if line.startswith("##"): + date = line.replace("##","").strip() + elif line.startswith("**"): + classname = line.replace("**","").strip() + else: + linedata = re.sub(r"\s+","\t",line) + usage = linedata.split("\t") + id = usage.pop(0) + usagestr = "\t".join(usage) + output += "%s\n%s\t%s\t%s\n\n"%(id.zfill(6),date,classname,usagestr) + +SaveTextFile(output,metadatafilepath) +