58 lines
1.5 KiB
C++
58 lines
1.5 KiB
C++
#ifndef MAINWINDOW_H
|
|
#define MAINWINDOW_H
|
|
|
|
#include <QMainWindow>
|
|
#include <QApplication>
|
|
#include <QDir>
|
|
#include <QTimer>
|
|
|
|
#pragma execution_character_set("utf-8")
|
|
|
|
enum DRAG_ABSOLUTE_POSITION
|
|
{
|
|
DRAG_KEEP=0, //保持不动
|
|
DRAG_LOCK_LEFT=1, //锁定左边坐标
|
|
DRAG_LOCK_TOP=2, //锁定上边坐标
|
|
DRAG_LOCK_RIGHT=3, //锁定右边坐标
|
|
DRAG_LOCK_BOTTOM=4 //锁定下边坐标
|
|
};
|
|
|
|
QT_BEGIN_NAMESPACE
|
|
namespace Ui { class MainWindow; }
|
|
QT_END_NAMESPACE
|
|
|
|
class TitleBar;
|
|
class ResultView;
|
|
class MainWindow : public QMainWindow
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
MainWindow(QWidget *parent = nullptr);
|
|
~MainWindow();
|
|
void initWidget();
|
|
void signalAndSlot();
|
|
int getCameraNum();
|
|
QJsonObject loadCameraCfg();
|
|
protected:
|
|
void mousePressEvent(QMouseEvent *event) override;
|
|
void mouseMoveEvent(QMouseEvent *event)override;
|
|
void mouseReleaseEvent(QMouseEvent *event)override;
|
|
void resizeEvent(QResizeEvent *event)override;
|
|
private:
|
|
Ui::MainWindow *ui;
|
|
int g_nBorder = 25;
|
|
QPoint m_startPt;
|
|
QPoint m_start_drag_point; //拖拽开始的起始位置
|
|
bool m_bCanDragResize; //当前窗口是否处于可拖拽窗口大小状态
|
|
QString currPath;
|
|
|
|
DRAG_ABSOLUTE_POSITION m_emHorizontal; //横向的移动范围
|
|
DRAG_ABSOLUTE_POSITION m_emVertical; //纵向的移动范围
|
|
|
|
ResultView *m_result = nullptr;
|
|
TitleBar* m_title = nullptr;
|
|
|
|
};
|
|
#endif // MAINWINDOW_H
|