当前位置:实例文章 » 其他实例» [文章]python3GUI--仿win10任务管理器By:PyQt5(附UI源码)

python3GUI--仿win10任务管理器By:PyQt5(附UI源码)

发布人:shili8 发布时间:2025-02-01 18:19 阅读次数:0

**Python3 GUI -仿 Win10任务管理器 By PyQt5**

在本文中,我们将使用 PyQt5 库创建一个简化的 Windows10任务管理器 GUI 应用程序。这个应用程序将包含以下功能:

*任务列表* 进程列表* 系统资源监控(内存、CPU 等)
* 用户登录信息**UI 设计**

首先,我们需要设计我们的 UI。我们将使用 PyQt5 的 Qt Designer 工具来创建一个 UI 文件。

打开 Qt Designer,新建一个窗口,然后添加以下组件:

*任务列表:一个 QTableWidget 组件* 进程列表:一个 QTableWidget 组件* 系统资源监控:一个 QTableWidget 组件* 用户登录信息:一个 QTableWidget 组件**UI 源码**

以下是我们的 UI 源码:

import sysfrom PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QTableWidget, QTableWidgetItem, QPushButton, QLabelfrom PyQt5.QtCore import Qtclass TaskManager(QWidget):
 def __init__(self):
 super().__init__()

 self.setWindowTitle("Task Manager")
 self.setGeometry(100,100,800,600)

 layout = QVBoxLayout()

 #任务列表 self.task_list = QTableWidget()
 self.task_list.setRowCount(10)
 self.task_list.setColumnCount(3)
 self.task_list.setHorizontalHeaderLabels(["PID", "名称", "状态"])
 for i in range(10):
 self.task_list.setItem(i,0, QTableWidgetItem(str(i)))
 self.task_list.setItem(i,1, QTableWidgetItem("任务 {}".format(i)))
 self.task_list.setItem(i,2, QTableWidgetItem("运行中"))
 layout.addWidget(self.task_list)

 # 进程列表 self.process_list = QTableWidget()
 self.process_list.setRowCount(10)
 self.process_list.setColumnCount(3)
 self.process_list.setHorizontalHeaderLabels(["PID", "名称", "状态"])
 for i in range(10):
 self.process_list.setItem(i,0, QTableWidgetItem(str(i)))
 self.process_list.setItem(i,1, QTableWidgetItem("进程 {}".format(i)))
 self.process_list.setItem(i,2, QTableWidgetItem("运行中"))
 layout.addWidget(self.process_list)

 # 系统资源监控 self.resource_monitor = QTableWidget()
 self.resource_monitor.setRowCount(5)
 self.resource_monitor.setColumnCount(3)
 self.resource_monitor.setHorizontalHeaderLabels(["名称", "值", "%"])
 for i in range(5):
 self.resource_monitor.setItem(i,0, QTableWidgetItem("内存"))
 self.resource_monitor.setItem(i,1, QTableWidgetItem(str(i *100) + " MB"))
 self.resource_monitor.setItem(i,2, QTableWidgetItem(str(i *10)))
 layout.addWidget(self.resource_monitor)

 # 用户登录信息 self.login_info = QTableWidget()
 self.login_info.setRowCount(5)
 self.login_info.setColumnCount(3)
 self.login_info.setHorizontalHeaderLabels(["用户名", "密码", "状态"])
 for i in range(5):
 self.login_info.setItem(i,0, QTableWidgetItem("用户 {}".format(i)))
 self.login_info.setItem(i,1, QTableWidgetItem("密码 {}".format(i)))
 self.login_info.setItem(i,2, QTableWidgetItem("登录中"))
 layout.addWidget(self.login_info)

 self.setLayout(layout)

if __name__ == "__main__":
 app = QApplication(sys.argv)
 task_manager = TaskManager()
 task_manager.show()
 sys.exit(app.exec_())

**代码注释**

* `QTableWidget` 组件用于创建表格控件。
* `setRowCount` 和 `setColumnCount` 方法用于设置表格的行数和列数。
* `setHorizontalHeaderLabels` 方法用于设置表格的水平标题。
* `setItem` 方法用于设置表格中的单元格值。
* `QVBoxLayout` 组件用于创建垂直布局管理器。
* `addWidget` 方法用于添加控件到布局管理器中。

**运行结果**

当你运行这个程序时,会出现一个窗口,包含四个表格控件:任务列表、进程列表、系统资源监控和用户登录信息。每个表格都有自己的数据源,并且可以根据需要进行修改。

希望这个示例能够帮助你理解如何使用 PyQt5 库创建 GUI 应用程序。

相关标签:pythonui开发语言
其他信息

其他资源

Top