代码拉取完成,页面将自动刷新
#ifndef SCREEN_H
#define SCREEN_H
#include <QWidget>
#include <QEvent>
#include <QMenu>
#include <QPixmap>
#include <QApplication>
#include <QDesktopWidget>
#include <QSize>
#include <QPainter>
#include <QKeyEvent>
#include <QPoint>
#include <QDateTime>
#include <QFileDialog>
#include <QMessageBox>
#include <QClipboard>
#include <time.h>
#include <3rdparty/qxtglobalshortcut.h>
#include <boost/make_shared.hpp>
#include <boost/shared_ptr.hpp>
#define MAX(a,b) \
((a) > (b) ? (a) : (b))
#define MIN(a,b) \
((a) < (b) ? (a) : (b))
struct Box {
QPoint startP;
QPoint endP;
};
class ScreenShot : public QWidget {
Q_OBJECT
public:
typedef boost::shared_ptr<QPixmap> Pixmap_ptr;
typedef boost::shared_ptr<QxtGlobalShortcut> QxtGlobalShortcut_ptr;
typedef boost::shared_ptr<QMenu> Menu_ptr;
typedef boost::shared_ptr<QAction> Action_ptr;
ScreenShot(QWidget *parent = 0);
bool Maxpoint(const QPoint &p1,const QPoint&p2);
protected:
void paintEvent(QPaintEvent *);
void keyPressEvent ( QKeyEvent * event );
void hideEvent ( QHideEvent * );
void mouseMoveEvent ( QMouseEvent * event ) ;
void mousePressEvent ( QMouseEvent * event );
void mouseReleaseEvent ( QMouseEvent * event );
private:
//正常屏幕与朦胧屏幕
Pixmap_ptr screen, fogscreen;
//待绘画的盒子
struct Box box;
//定义 0 --- 左上角
//定义 1 --- 右上角
//定义 2 --- 右下角
//定义 3 --- 左下角
//定义 4 --- 中间截图区域
//其他 5
int area ;
//截图框,移动的图形框,绘画截图框
QRect drawBox;
//全局快捷键
QxtGlobalShortcut_ptr shortcut;
//基础方格
QVector<QRect> rects;
//提示线
QVector<QLine> tiplines;
//标志
quint8 flags;
//鼠标按下的位置,用来移动窗体
QPoint mouseP;
//菜单
Menu_ptr menu;
//菜单动作
Action_ptr action_about;
Action_ptr action_shot;
Action_ptr action_exit;
Action_ptr action_help;
Action_ptr action_cut;
//蒙板初始化
void fogInit();
//判断鼠标位于哪块区域
int judgeMouseArea(const QPoint &p);
//数据初始化
void dataInit();
//初始化菜单
void initMenu();
public slots:
//保存图片
void savePic();
//快速保存图片在桌面
void fastsavePic();
//保存截图到剪切板
void saveClipboard();
//关于
void slot_about();
//帮助
void slot_help();
private slots:
//快捷键调用槽函数
void slotwork();
};
#endif // SCREEN_H
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。