#ifndef DEVICEPROPERTYPAGE_H #define DEVICEPROPERTYPAGE_H #pragma execution_character_set("utf-8") #include #include "datafetcher.h" class MyTableModel; class QTimer; class QTableView; class QPushButton; class DevicePropertyPage : public QWidget,public DataFetcher { Q_OBJECT public: explicit DevicePropertyPage(QWidget *parent = nullptr); ~DevicePropertyPage(); void setBaseType(unsigned int base,unsigned int mask); void InitializeTable(); public slots: void handleTimeout(); //超时处理函数 private: QTimer *m_pTimer; private: MyTableModel* m_myModel; protected: void Refresh(); void InitializeTableView(MyTableModel *model, QTableView *tableView); // 重写resizeEvent,当QTableView窗口大小变化时按比例调整列宽 void resizeEvent(QResizeEvent *event) override; private slots: void onButtonClicked(); void onTableViewDoubleClicked(const QModelIndex &index); private: unsigned int filterBaseType; unsigned int mask_code; QTableView* m_pTableView; QPushButton* m_pButton; QVector columnWidths; // 存储初始列宽 }; #endif // DEVICEPROPERTYPAGE_H