项目中遇到一个需求就是读取DVR板上的所有文件,并模拟Windows上的磁盘管理,将所有文件所占用的空间以及未占用空间都标记出来。
在这里贴上实现模拟磁盘管理的部分代码,记录一下。
环境如下:PyCharm+Python3.6+PyQt5。
#! /usr/bin/env python
# -*- coding: utf-8 -*-
# __author__ = "嗯顾"
import sys
from PyQt5 import QtGui
from PyQt5.QtWidgets import QWidget, QApplication, QLineEdit, QPushButton, QLabel
from PyQt5.QtCore import QObject, Qt, pyqtSignal
from PyQt5.QtGui import QPainter, QColor, QPen
class Communicate(QObject):
update_widget = pyqtSignal(int, int)
class DrawWidget(QWidget):
used_val_list = []
used_add_val_list = []
used_dict = {}
used_index = 0
start_add = 0
end_add = 0
del_flag = 0
sum_row = 0
def __init__(self, parent=None):
super(QWidget, self).__init__(parent)
self.initUI()
def initUI(self):
self.setMouseTracking(True)
self.setMinimumSize