资源简介
Qt 开发的绘图软件,功能完善,撤销,恢复,复制粘贴,设置画笔颜色,倒入图片,编辑图片等等
代码片段和文件信息
#include “explainwidget.h“
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#pragma execution_character_set(“utf-8“)
ExplainWidget::ExplainWidget(QWidget* parent) :
QWidget(parent)
{
initUI();
initAnimation();
}
void ExplainWidget::initUI()
{
this->setWindowFlags(Qt::framelessWindowHint);
this->setAttribute(Qt::WA_TranslucentBackground);
this->resize(640 400);
this->widget = new QWidget;
this->widget->close();
this->widget->setstyleSheet(“QWidget{border-image: url(./image/background/background (3).jpg); border-radius:20px;}“);
QGraphicsDropShadowEffect* shadow = new QGraphicsDropShadowEffect(widget);
shadow->setOffset(0 0);
shadow->setColor(QColor(“#FFF0F5“));
shadow->setBlurRadius(20);
QGridLayout* grid_layout = new QGridLayout(this);
grid_layout->addWidget(widget);
grid_layout->setMargin(PADDING);
this->widget->setGraphicsEffect(shadow);
this->setLayout(grid_layout);
QLabel* lb = new QLabel(widget);
lb->setstyleSheet(“border-image:transparency; border-radius:20px; font-size:19px; color:#373641; font-weight:500; font-family:幼圆;“);
lb->move(-80 50);
lb->setText
(“\
快捷键 Ctrl + C 复制选中区域\n\
快捷键 Ctrl + V 粘贴选中区域\n\
快捷键 Ctrl + X 剪切选中区域\n\
快捷键 Ctrl + Z 撤销\n\
快捷键 Ctrl + Y 恢复\n\
快捷键 Delete 删除选中区域\n\
鼠标滚轮 快速调节属性值\n\
\n\
说明 : 右键取消所有绘制状态\n\
说明 : 调节属性值时 滚轮需要悬停到属性栏\n\
说明 : 切换画笔形状也可以使用滚轮\n\
说明 : 橡皮擦的大小取决于线宽\n\
“);
}
void ExplainWidget::initAnimation()
{
setProperty(“angleValue“ 0);
rotateAnimation = new QPropertyAnimation(this “angleValue“);
rotateAnimation->setDuration(ANIMATION_TIME);
rotateAnimation->setEasingCurve(QEasingCurve::OutSine);
rotateAnimation->setStartValue(FOLD_NUM * FLIP_ANGLE - FLIP_ANGLE / 2);
rotateAnimation->setEndValue(0);
connect(rotateAnimation &QPropertyAnimation::valueChanged this &ExplainWidget::valueChanged);
connect(rotateAnimation &QPropertyAnimation::finished this &ExplainWidget::showFinished);
}
void ExplainWidget::show()
{
if (is_show)
{
is_show = false;
QWidget::close();
}
else
{
is_show = true;
QWidget::show();
widget->close();
pixmap = widget->grab();
rotateAnimation->setDirection(QAbstractAnimation::Forward);
disconnect(rotateAnimation &QPropertyAnimation::finished this &QWidget::close);
rotateAnimation->start();
}
}
bool ExplainWidget::close()
{
if (is_show)
{
is_show = false;
QWidget::close();
return true;
}
else
{
is_show = false;
QWidget::close();
return false;
}
}
void ExplainWidget::mousePressEvent(QMouseEvent* event)
{
event->accept();
}
void ExplainWidget::paintEvent(QPaintEvent* event)
{
QPainter pai(this);
pai.setRenderHint(QPainter::Antialiasing true);
int ro
- 上一篇:土狼优化算法
- 下一篇:LORA实现收发,SX1278+STM32F103
相关资源
- 笔趣阁小说器
- QT串口通信实例62216
- qt_opengl_obj.zip
- DXSDK_Jun10内含网盘软件地址和提取码
- 基于Qt实现的多人聊天
- 基于QT的三连棋井字棋游戏
- QT自定义风格qss得日历
- Qt动态进度条
- 用QT5写简单的串口调试工具
- QT实现摄像头采集图像并截图
- qt下人脸识别
- 坦克大战地图生成代码
- Qt自定义皮肤
- QT(5.6) 实现IP地址输入控件
- QT实现图片的二值化与灰度化
-
QT4 xm
l与QTableWidget的结合,QTableWid - QWidget加载QML界面,并通过信号槽交互
- S5PV210 友善之臂开发板 步进电机程序
- 基于QT开发的读取微软xbox手柄读写信
- 移远EC20 MQTT协议文档 英文
- 网上爬的某学院PyQt教学视频
- QT计算器,画图,闹钟,秒表,倒计时
- QT开发的小程序:输入数字音乐简谱,
- 多端口服务器多个客户端相互聊天.
- Qt 仿QQ图片查看器
- Qt利用TCP实现客户端与服务器端的数据
- QT:一个简洁美观的自定义温度控件
- 简单的AStar算法Demo
- 广州地铁路径模拟系统
- pyqt5实现的登录功能
评论
共有 条评论