#ifndef COALDISTRIBUTBARCHARTWIDGET_H #define COALDISTRIBUTBARCHARTWIDGET_H #include #include #include #include #include #include #include #include #include #include #include #include #include QT_CHARTS_USE_NAMESPACE class CoalDistributBarChartWidget : public QWidget { Q_OBJECT public: explicit CoalDistributBarChartWidget(QWidget* parent = nullptr); ~CoalDistributBarChartWidget(); private slots: void updateChart(); private: void initializeChart(); void setupTimer(); /** * @brief connectTCPSocket 连接到TCP服务 */ void connectTCPSocket(); /** * @brief getCoalRatioByTCPSocket通过TCP协议获取煤量占比 * @return 煤量占比 */ int getCoalRatioByTCPSocket(); /** * @brief createModbusTcpRequest 构建ModbusTCP报文 * @return 返回报文 */ QByteArray createModbusTcpRequest(); private: QChart* m_chart; QChartView* m_chartView; QBarSeries* m_series; QTimer* m_timer; QDateTimeAxis* m_axisX; QBarSet* m_set; QTcpSocket* m_tcpSocket; QSettings* m_systemSetting; }; #endif // COALDISTRIBUTBARCHARTWIDGET_H