opencv_mv/QMainPro/QMacVisual/frmInstrumentation.h

118 lines
2.9 KiB
C
Raw Permalink Normal View History

2023-05-22 09:27:46 +00:00
#pragma once
#include <QDialog>
#include "ui_frmInstrumentation.h"
#include "gvariable.h"
#include "mytitlebar.h"
class frmInstrumentation : public QDialog
{
Q_OBJECT
public:
frmInstrumentation(QWidget* parent = Q_NULLPTR);
~frmInstrumentation();
private:
Ui::frmInstrumentationClass ui;
private:
void initTitleBar();
void paintEvent(QPaintEvent* event);
void AddRightButtonMenu(); //右键菜单
int GetValue(QVector<int> n);
void moveRow(QTableWidget* pTable, int nFrom, int nTo);
private slots:
void onButtonCloseClicked();
protected:
MyTitleBar* m_titleBar;
private slots:
void on_btnAdd_clicked();
void on_btnConnect_clicked();
void on_btnDisconnect_clicked();
void on_btnSave_clicked();
void slot_MoveUp();
void slot_MoveDown();
void slot_DeleteName();
void slotInstrumentChanged(int);
void slot_DoubleClicked(int, int);
void on_comboProtocol_currentIndexChanged(int);
public slots:
void InitIoConnect(QString io_key_value, QString ip_value, int port_value, int over_time_value);
void InitPlcConnect(QString plc_key_value, QString ip_value, int port_value, int over_time_value);
void InitSerialportConnect(QString serialport_key_value, QString portname_value, int baudrate_value, QString parity_value, QString databits_value, QString stopbits_value, QString flowcontrol_value);
void InitServerConnect(QString server_key_value, int port_value);
void InitClientConnect(QString client_key_value, QString ip_value, int port_value);
private slots:
void onIoConnected();
void onIoDisconnected();
void onMitPlcConnected();
void onMitPlcDisconnected();
void onTcpConnected();
void onTcpDisconnected();
private:
QList<QString> comm_keys;
QTcpSocket* io_client;
int io_client_state = 0;
QTcpSocket* mit_plc_client;
int mit_plc_client_state = 0;
QSerialPort* s_port;
bool s_port_state;
QTcpServer* server;
QTcpSocket* client;
int client_state = 0;
int init_state = 0;
QString init_key_value;
public:
//通用I/O
typedef struct IOCONTENT
{
QString global_ip;
int global_port;
int global_timeout;
QString global_remark;
} Io_Content;
Io_Content IoContent;
QMap<QString, Io_Content> global_io_content;
//PLC通信
typedef struct PLCCONTENT
{
QString global_ip;
int global_port;
int global_timeout;
QString global_remark;
} Plc_Content;
Plc_Content PlcContent;
QMap<QString, Plc_Content> global_plc_content;
//串口通信
typedef struct SERIALPORTCONTENT
{
QString global_serial_port;
QString global_baud_rate;
QString global_check_digit;
QString global_data_bits;
QString global_stop_bit;
QString global_flowcontrol;
QString global_remark;
} SerialPort_Content;
SerialPort_Content SerialPortContent;
QMap<QString, SerialPort_Content> global_serialport_content;
//TCP/IP通信
typedef struct TCPCONTENT
{
QString global_protocol;
QString global_ip;
int global_port;
QString global_remark;
} Tcp_Content;
Tcp_Content TcpContent;
QMap<QString, Tcp_Content> global_tcp_content;
};