From cbebe878aa8b57254d54bd89db97f2a26e48d284 Mon Sep 17 00:00:00 2001 From: PYDT <85057800+87owo@users.noreply.github.com> Date: Mon, 9 Oct 2023 21:41:34 +0800 Subject: [PATCH] Add files via upload --- PYAS.py | 33 ++++++----- PYAS_Interface.py | 137 +++++++++++++++++++++++++++++++++++----------- 2 files changed, 125 insertions(+), 45 deletions(-) diff --git a/PYAS.py b/PYAS.py index 1e7c95c..8ea1262 100644 --- a/PYAS.py +++ b/PYAS.py @@ -195,6 +195,8 @@ class MainWindow_Controller(QMainWindow): self.ui.Process_widget.hide() self.ui.Setting_widget.hide() self.ui.About_widget.hide() + self.ui.State_output.style().polish(self.ui.State_output.verticalScrollBar()) + self.ui.Virus_Scan_output.style().polish(self.ui.Virus_Scan_output.verticalScrollBar()) def init_change_lang(self): try: @@ -627,9 +629,8 @@ class MainWindow_Controller(QMainWindow): self.ui.Virus_Scan_choose_widget.hide() self.ui.Virus_Scan_choose_Button.hide() self.ui.Virus_Scan_Break_Button.show() - self.virus_list_output = QStringListModel() - self.virus_list_output.setStringList(self.virus_list) - self.ui.Virus_Scan_output.setModel(self.virus_list_output) + + self.ui.Virus_Scan_output.clear() except Exception as e: self.bug_event(e) @@ -638,17 +639,20 @@ class MainWindow_Controller(QMainWindow): self.ui.Virus_Scan_Solve_Button.hide() for file in self.virus_list: try: - self.ui.Virus_Scan_text.setText(self.trans("正在刪除: ")+file) - QApplication.processEvents() - msvcrt.locking(self.virus_lock[file], msvcrt.LK_UNLCK, 0) - os.close(self.virus_lock[file]) - os.remove(file) + if self.ui.Virus_Scan_output.findItems(file, Qt.MatchContains)[0].checkState() == Qt.Checked: + self.ui.Virus_Scan_text.setText(self.trans("正在刪除: ")+file) + QApplication.processEvents() + msvcrt.locking(self.virus_lock[file], msvcrt.LK_UNLCK, 0) + os.close(self.virus_lock[file]) + os.remove(file) + else: + msvcrt.locking(self.virus_lock[file], msvcrt.LK_UNLCK, 0) + os.close(self.virus_lock[file]) except: continue self.init_state_safe() self.init_virus_list() - self.virus_list_output.setStringList(self.virus_list) - self.ui.Virus_Scan_output.setModel(self.virus_list_output) + self.ui.Virus_Scan_output.clear() self.ui.Virus_Scan_text.setText(self.trans("成功: 刪除成功")) except Exception as e: self.bug_event(e) @@ -657,8 +661,11 @@ class MainWindow_Controller(QMainWindow): try: self.virus_list.append(file) self.virus_list_ui.append(f"[{state}] {file}") - self.virus_list_output.setStringList(self.virus_list_ui) - self.ui.Virus_Scan_output.setModel(self.virus_list_output) + item = QListWidgetItem() + item.setText(f"[{state}] {file}") + item.setFlags(item.flags() | Qt.ItemIsUserCheckable) + item.setCheckState(Qt.Checked) + self.ui.Virus_Scan_output.addItem(item) self.virus_lock[file] = os.open(file, os.O_RDWR) msvcrt.locking(self.virus_lock[file], msvcrt.LK_NBLCK, 0) except: @@ -998,7 +1005,7 @@ class MainWindow_Controller(QMainWindow): try: time.sleep(0.5) for window_name in self.blocklist: - win32gui.PostMessage(win32gui.FindWindow(None, window_name), win32con.WM_CLOSE, 0, 0) + win32gui.PostMessage(win32gui.FindWindow(None, window_name), 274, 61536, 0) except: pass diff --git a/PYAS_Interface.py b/PYAS_Interface.py index 0425f31..3e7e0a4 100644 --- a/PYAS_Interface.py +++ b/PYAS_Interface.py @@ -1,8 +1,15 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'C:\Users\User\Documents\Project\Python\PYAS\Library\Qtui\PYAS_Interface.ui' +# +# Created by: PyQt5 UI code generator 5.15.9 +# +# WARNING: Any manual changes made to this file will be lost when pyuic5 is +# run again. Do not edit this file unless you know what you are doing. + + from PyQt5 import QtCore, QtGui, QtWidgets -from PyQt5.QtGui import * -from PyQt5.QtCore import * -from PyQt5.QtWidgets import * -import sys, PYAS_Resource + class Ui_MainWindow(object): def setupUi(self, MainWindow): @@ -14,7 +21,8 @@ class Ui_MainWindow(object): font.setStyleStrategy(QtGui.QFont.PreferAntialias) MainWindow.setFont(font) MainWindow.setFocusPolicy(QtCore.Qt.TabFocus) - icon = QtGui.QIcon(QFileIconProvider().icon(QFileInfo(str(sys.argv[0])))) + icon = QtGui.QIcon() + icon.addPixmap(QtGui.QPixmap(":/icon/Icon.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) MainWindow.setWindowIcon(icon) MainWindow.setIconSize(QtCore.QSize(64, 64)) MainWindow.setToolButtonStyle(QtCore.Qt.ToolButtonIconOnly) @@ -584,30 +592,6 @@ class Ui_MainWindow(object): self.Virus_Scan_choose_Button.setDefault(False) self.Virus_Scan_choose_Button.setFlat(False) self.Virus_Scan_choose_Button.setObjectName("Virus_Scan_choose_Button") - self.Virus_Scan_output = QtWidgets.QListView(self.Virus_Scan_widget) - self.Virus_Scan_output.setEnabled(True) - self.Virus_Scan_output.setGeometry(QtCore.QRect(45, 150, 581, 301)) - font = QtGui.QFont() - font.setPointSize(9) - self.Virus_Scan_output.setFont(font) - self.Virus_Scan_output.setStyleSheet("QWidget::item\n" -"{\n" -"background-color: rgba(50,50,50,30);\n" -"color:black;\n" -"border: transparent;\n" -"border-bottom: 1px solid #dbdbdb;\n" -"padding: 5px;\n" -"}\n" -"QWidget::item:hover\n" -"{\n" -"background-color: rgba(50,50,50,40);\n" -"}\n" -"QListView\n" -"{\n" -"outline: none;\n" -"}") - self.Virus_Scan_output.setEditTriggers(QtWidgets.QAbstractItemView.NoEditTriggers) - self.Virus_Scan_output.setObjectName("Virus_Scan_output") self.Virus_Scan_choose_widget = QtWidgets.QWidget(self.Virus_Scan_widget) self.Virus_Scan_choose_widget.setGeometry(QtCore.QRect(480, 67, 141, 31)) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred) @@ -785,6 +769,45 @@ class Ui_MainWindow(object): self.Virus_Scan_Break_Button.setDefault(False) self.Virus_Scan_Break_Button.setFlat(False) self.Virus_Scan_Break_Button.setObjectName("Virus_Scan_Break_Button") + self.Virus_Scan_output = QtWidgets.QListWidget(self.Virus_Scan_widget) + self.Virus_Scan_output.setGeometry(QtCore.QRect(45, 150, 581, 301)) + font = QtGui.QFont() + font.setFamily("Microsoft YaHei") + font.setPointSize(9) + self.Virus_Scan_output.setFont(font) + self.Virus_Scan_output.setStyleSheet("QWidget::item\n" +"{\n" +"background-color: rgba(50,50,50,30);\n" +"color:black;\n" +"border: transparent;\n" +"border-bottom: 1px solid #dbdbdb;\n" +"padding: 5px;\n" +"}\n" +"QWidget::item:hover\n" +"{\n" +"background-color: rgba(50,50,50,40);\n" +"}\n" +"QListView\n" +"{\n" +"outline: none;\n" +"}") + self.Virus_Scan_output.setEditTriggers(QtWidgets.QAbstractItemView.NoEditTriggers) + self.Virus_Scan_output.setTabKeyNavigation(False) + self.Virus_Scan_output.setProperty("showDropIndicator", True) + self.Virus_Scan_output.setDefaultDropAction(QtCore.Qt.CopyAction) + self.Virus_Scan_output.setAlternatingRowColors(False) + self.Virus_Scan_output.setSelectionMode(QtWidgets.QAbstractItemView.SingleSelection) + self.Virus_Scan_output.setSelectionBehavior(QtWidgets.QAbstractItemView.SelectItems) + self.Virus_Scan_output.setVerticalScrollMode(QtWidgets.QAbstractItemView.ScrollPerItem) + self.Virus_Scan_output.setHorizontalScrollMode(QtWidgets.QAbstractItemView.ScrollPerItem) + self.Virus_Scan_output.setMovement(QtWidgets.QListView.Static) + self.Virus_Scan_output.setProperty("isWrapping", False) + self.Virus_Scan_output.setResizeMode(QtWidgets.QListView.Fixed) + self.Virus_Scan_output.setLayoutMode(QtWidgets.QListView.SinglePass) + self.Virus_Scan_output.setViewMode(QtWidgets.QListView.ListMode) + self.Virus_Scan_output.setUniformItemSizes(False) + self.Virus_Scan_output.setSelectionRectVisible(False) + self.Virus_Scan_output.setObjectName("Virus_Scan_output") self.State_widget = QtWidgets.QWidget(self.widget) self.State_widget.setGeometry(QtCore.QRect(170, 49, 671, 481)) font = QtGui.QFont() @@ -836,6 +859,40 @@ class Ui_MainWindow(object): font.setKerning(True) font.setStyleStrategy(QtGui.QFont.PreferAntialias) self.State_output.setFont(font) + self.State_output.setAutoFillBackground(False) + self.State_output.setStyleSheet("QScrollBar:vertical\n" +"{\n" +" border: none;\n" +" background: transparent;\n" +" width: 10px;\n" +"}\n" +" \n" +"QScrollBar::handle:vertical\n" +"{\n" +" background-color: rgba(200, 200, 200,1);\n" +" min-height: 30px;\n" +" border-radius:3px;\n" +" width: 6px;\n" +" }\n" +" \n" +"QScrollBar::add-line:vertical\n" +"{\n" +" border: none;\n" +" height: 0px;\n" +" }\n" +" \n" +" QScrollBar::sub-line:vertical\n" +"{\n" +" border: none;\n" +" height: 0px;\n" +"}\n" +" \n" +" QScrollBar::add-page:vertical,QScrollBar::sub-page:vertical\n" +" { \n" +" background:transparent;\n" +" border-radius:3px;\n" +"}") + self.State_output.setSizeAdjustPolicy(QtWidgets.QAbstractScrollArea.AdjustIgnored) self.State_output.setUndoRedoEnabled(True) self.State_output.setTextInteractionFlags(QtCore.Qt.TextSelectableByKeyboard|QtCore.Qt.TextSelectableByMouse) self.State_output.setObjectName("State_output") @@ -1746,7 +1803,7 @@ class Ui_MainWindow(object): self.Language_Choose_widget_2.setFont(font) self.Language_Choose_widget_2.setObjectName("Language_Choose_widget_2") self.gridLayoutWidget_2 = QtWidgets.QWidget(self.Language_Choose_widget_2) - self.gridLayoutWidget_2.setGeometry(QtCore.QRect(0, 0, 381, 61)) + self.gridLayoutWidget_2.setGeometry(QtCore.QRect(0, 0, 381, 65)) self.gridLayoutWidget_2.setObjectName("gridLayoutWidget_2") self.gridLayout_2 = QtWidgets.QGridLayout(self.gridLayoutWidget_2) self.gridLayout_2.setContentsMargins(0, 0, 0, 0) @@ -1801,6 +1858,8 @@ class Ui_MainWindow(object): self.Theme_illustrate.raise_() self.Language_Choose_widget_2.raise_() self.Theme_title.raise_() + self.Protection_widget.raise_() + self.State_widget.raise_() self.Setting_widget.raise_() self.About_widget.raise_() self.Tools_widget.raise_() @@ -1809,8 +1868,6 @@ class Ui_MainWindow(object): self.Virus_Scan_widget.raise_() self.Window_widget.raise_() self.Navigation_Bar.raise_() - self.Protection_widget.raise_() - self.State_widget.raise_() MainWindow.setCentralWidget(self.centralwidget) self.retranslateUi(MainWindow) @@ -1846,7 +1903,20 @@ class Ui_MainWindow(object): self.Disk_Scan_Button.setText(_translate("MainWindow", "全盤掃描")) self.Virus_Scan_Solve_Button.setText(_translate("MainWindow", "立即解決")) self.Virus_Scan_Break_Button.setText(_translate("MainWindow", "停止掃描")) + self.Virus_Scan_output.setSortingEnabled(False) self.State_title.setText(_translate("MainWindow", "This Device Has Been Protect")) + self.State_output.setHtml(_translate("MainWindow", "\n" +"\n" +"

asdasas

\n" +"

dasd

\n" +"

a

\n" +"

sd

\n" +"


\n" +"

asd

\n" +"

as

\n" +"

dasd

")) self.State_log.setText(_translate("MainWindow", "日誌:")) self.About_Back.setText(_translate("MainWindow", "返回")) self.PYAS_Version.setText(_translate("MainWindow", "PYAS v2.3.5")) @@ -1892,8 +1962,11 @@ class Ui_MainWindow(object): self.Theme_Blue.setText(_translate("MainWindow", "藍色主題")) self.Theme_Red.setText(_translate("MainWindow", "紅色主題")) self.Theme_Green.setText(_translate("MainWindow", "綠色主題")) +import PYAS_Resource + if __name__ == "__main__": + import sys app = QtWidgets.QApplication(sys.argv) MainWindow = QtWidgets.QMainWindow() ui = Ui_MainWindow()