1. 程式人生 > >Qt監控excel

Qt監控excel

direct file sys log fin odbc date ring cloc

配置文件setup.ini內容

[General]
ExcelFilePath=D:/項目資料/GSC-西門子開關/GSCOPC.xlsx
GameIp=192.168.1.152
GamePort=3000
4DSystemIp=192.168.1.152
4DSystemPort=21392
UdpDataToGame=Play
UdpDataTo4DSystem=AS%NPlayDirect%1%

工程文件中QT+=axcontainer network sql

mainwindow.h

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QAxObject>
#include 
<QDateTime> #include <QMainWindow> #include <QSqlDatabase> #include <QTimer> #include <QtNetwork/QUdpSocket> namespace Ui { class MainWindow; } class MainWindow : public QMainWindow { Q_OBJECT public: explicit MainWindow(QWidget *parent = 0); ~MainWindow();
void sendUdpData(); void ODBCExcel(); private slots: void queryExcel(); void unclockStartBtn(); private: Ui::MainWindow *ui; QAxObject *excel; QAxObject *work_books; QAxObject *work_book; QTimer* queryTimer;//監測Excel定時器 QTimer* unclockStartBtnTimer;//解鎖開始按鈕狀態 QUdpSocket
* udpSocket; QString ExcelFilePath;//檢測的excel文件路徑 QString GameIp;//遊戲主機IP quint16 GamePort;//遊戲UDP綁定的端口 QString FourDSystemIp;//4D系統IP quint16 FourDSystemPort;//4D系統UDP綁定的端口 QString UdpDataToGame;//向遊戲發送的UDP數據 QString UdpDataTo4DSystem;//向4D系統發送的UDP數據 QSqlDatabase db; bool startButtonFlag;//“開始”按鈕是否被按下 bool stopButtonFlag;//“停止”按鈕是否被按下 QDateTime startBtnPressTime;//開始按鈕按下的時間 int startBtnCnt;//開始按鈕被按下的次數 }; #endif // MAINWINDOW_H

mainwindow.cpp

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QAxObject>
#include <QDateTime>
#include <QMainWindow>
#include <QSqlDatabase>
#include <QTimer>

#include <QtNetwork/QUdpSocket>

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();

    void sendUdpData();
    void ODBCExcel();
private slots:
    void queryExcel();
    void unclockStartBtn();

private:
    Ui::MainWindow *ui;
    QAxObject *excel;
    QAxObject *work_books;
    QAxObject *work_book;

    QTimer* queryTimer;//監測Excel定時器
    QTimer* unclockStartBtnTimer;//解鎖開始按鈕狀態

    QUdpSocket* udpSocket;

    QString ExcelFilePath;//檢測的excel文件路徑
    QString GameIp;//遊戲主機IP
    quint16 GamePort;//遊戲UDP綁定的端口
    QString FourDSystemIp;//4D系統IP
    quint16 FourDSystemPort;//4D系統UDP綁定的端口
    QString UdpDataToGame;//向遊戲發送的UDP數據
    QString UdpDataTo4DSystem;//向4D系統發送的UDP數據
    QSqlDatabase db;

    bool startButtonFlag;//“開始”按鈕是否被按下
    bool stopButtonFlag;//“停止”按鈕是否被按下
    QDateTime startBtnPressTime;//開始按鈕按下的時間
    int startBtnCnt;//開始按鈕被按下的次數
};



#endif // MAINWINDOW_H

Qt監控excel