123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- #pragma once
- #include "Common.h"
- #include "ui_WindowAppTaskMonitorView.h"
- #include "vpControls/VCustomPlot.h"
- class WindowAppTaskMonitorView : public QWidget
- {
- Q_OBJECT
- public:
- WindowAppTaskMonitorView(const QString& strTitle, QWidget* parent = nullptr);
- ~WindowAppTaskMonitorView();
- // 添加一行新的Task信息
- void addNewTask(const TASK* pTask);
- // 删除一个Task信息
- void delTask(const QString& strTaskName);
- // 更新Task信息
- void updateTask(const TASK* pTask);
- // 更新Task的Mode参数
- void updateTaskMode(const TASK* pTask);
- // 更新Task的状态参数
- void updateTaskStatus(const TASK* pTask);
- // 更新Task的配置参数
- void updateTaskOption(const TASK* pTask);
- // 界面中的监控表格
- QTableWidget* m_pMonitorTable;
- // 界面还原后执行刷新
- virtual void changeEvent(QEvent* event) override;
- private:
- Ui::WindowAppTaskMonitorView ui;
- private:
- // UI元素初始化
- void initUI();
- // 初始化监控表格
- void initMonitorTable();
- // 初始化监控表格
- void initMonitorCustomPlot();
- //获取cpu
- void getCPU();
- //获取内存
- void getMemory();
- private slots:
- // 调整大小的消息中改变表格栏的宽度
- virtual void resizeEvent(QResizeEvent* event) override;
- void slotSplitterMoved(int pos, int index);
- void onCustomPlotTimer();
- //读取数据
- void slotReadData();
- void showEvent(QShowEvent* event);
- private:
- VCustomPlot* m_pCustomPlotTask;
- VCustomPlot* m_pCustomPlotSystem;
- // 本界面子页面的名称
- QString m_strTitle;
- // 每一个Task对应的表格项
- QMap<QString, QVector<QTableWidgetItem*>> m_TaskTableWidgetItems;
- // 表格中的所有Task
- QVector<QString> m_allTaskNames;
- int m_nCustomPlotKey;
- int m_nCustomPlotSysTemKey;
- // 启动一个Timer刷新曲线
- QTimer m_eventTimer;
- private:
- quint64 totalNew, idleNew, totalOld, idleOld;
- quint64 cpuPercent; //CPU百分比
- quint64 memoryPercent; //内存百分比
- quint64 memoryAll; //所有内存
- quint64 memoryUse; //已用内存
- quint64 memoryFree; //空闲内存
- QProcess* process; //linux执行命令
- };
|