58 lines
1.4 KiB
C++
58 lines
1.4 KiB
C++
#pragma once
|
|
|
|
#include <QtWidgets/QMainWindow>
|
|
#include "ui_QtSendPLC.h"
|
|
#include "qobject.h"
|
|
#include "qapplication.h"
|
|
#include "qjsonobject.h"
|
|
#include "qjsonarray.h"
|
|
#include "qjsondocument.h"
|
|
#include "QLibrary.h"
|
|
#include "QMetaType.h"
|
|
#include "QDateTime.h"
|
|
#include "QThread.h"
|
|
#include "QMutex.h"
|
|
#include "QDebug.h"
|
|
#include "QQueue.h"
|
|
#include "QMap.h"
|
|
#include "QMouseEvent"
|
|
|
|
class QtSendPLC : public QMainWindow
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
QtSendPLC(QWidget *parent = nullptr);
|
|
~QtSendPLC();
|
|
|
|
void setData(QJsonArray qjsonArray);
|
|
private:
|
|
Ui::QtSendPLCClass ui;
|
|
|
|
QQueue<QPushButton*> sendPLCbuttonS;
|
|
QStringList sendPLCcmd;
|
|
QMap< QPushButton*, int> sendPLCbuttonS_index;
|
|
clock_t pressStart, pressStop;
|
|
|
|
int max_row = 0;
|
|
int maxCol = 0;
|
|
signals:
|
|
void sendPLC(QString cmd);
|
|
protected:
|
|
void mouseMoveEvent(QMouseEvent* event) override;
|
|
void mousePressEvent(QMouseEvent* event) override;
|
|
void mouseReleaseEvent(QMouseEvent* event) override;
|
|
private:
|
|
QPoint m_lastPos;
|
|
public:
|
|
enum MousePoss { LeftUp = 0, Up, RightUp, Right, RightDown, Down, LeftDown, Left, Middle };
|
|
private:
|
|
MousePoss mp_curPos; //记录鼠标当前所在区域的变量
|
|
//改变窗口的大小
|
|
void changeWindowSize(MousePoss type, QRect& wid, QPoint ptemp, int minWidth, int minHeight);
|
|
//修改鼠标样式
|
|
void setCursorType(MousePoss type);
|
|
//计算鼠标位置
|
|
MousePoss calcmouseposs(QPoint p);
|
|
};
|