更新代码
parent
9db5b9f277
commit
8511dc866c
|
@ -144,22 +144,22 @@ void ColorWidget::showColorValue()
|
|||
|
||||
int red, green, blue;
|
||||
QString strDecimalValue, strHex;
|
||||
if (!pixmap.isNull()) {
|
||||
QImage image = pixmap.toImage();
|
||||
if (!image.isNull()) {
|
||||
if (image.valid(0, 0)) {
|
||||
QColor color = image.pixel(0, 0);
|
||||
red = color.red();
|
||||
green = color.green();
|
||||
blue = color.blue();
|
||||
QString strRed = tr("%1").arg(red & 0xFF, 2, 16, QChar('0'));
|
||||
QString strGreen = tr("%1").arg(green & 0xFF, 2, 16, QChar('0'));
|
||||
QString strBlue = tr("%1").arg(blue & 0xFF, 2, 16, QChar('0'));
|
||||
if (pixmap.isNull()) {
|
||||
return;
|
||||
}
|
||||
|
||||
strDecimalValue = tr("%1, %2, %3").arg(red).arg(green).arg(blue);
|
||||
strHex = tr("#%1%2%3").arg(strRed.toUpper()).arg(strGreen.toUpper()).arg(strBlue.toUpper());
|
||||
}
|
||||
}
|
||||
QImage image = pixmap.toImage();
|
||||
if (image.valid(0, 0)) {
|
||||
QColor color = image.pixel(0, 0);
|
||||
red = color.red();
|
||||
green = color.green();
|
||||
blue = color.blue();
|
||||
QString strRed = tr("%1").arg(red & 0xFF, 2, 16, QChar('0'));
|
||||
QString strGreen = tr("%1").arg(green & 0xFF, 2, 16, QChar('0'));
|
||||
QString strBlue = tr("%1").arg(blue & 0xFF, 2, 16, QChar('0'));
|
||||
|
||||
strDecimalValue = tr("%1, %2, %3").arg(red).arg(green).arg(blue);
|
||||
strHex = tr("#%1%2%3").arg(strRed.toUpper()).arg(strGreen.toUpper()).arg(strBlue.toUpper());
|
||||
}
|
||||
|
||||
//根据背景色自动计算合适的前景色
|
||||
|
|
|
@ -1,6 +1,15 @@
|
|||
#ifndef COLORWIDGET_H
|
||||
#define COLORWIDGET_H
|
||||
|
||||
/**
|
||||
* 屏幕拾色器 作者:feiyangqingyun(QQ:517216493) 2016-11-11
|
||||
* 1. 鼠标按下实时采集鼠标处的颜色。
|
||||
* 2. 实时显示颜色值。
|
||||
* 3. 支持16进制格式和rgb格式。
|
||||
* 4. 实时显示预览颜色。
|
||||
* 5. 根据背景色自动计算合适的前景色。
|
||||
*/
|
||||
|
||||
#include <QWidget>
|
||||
|
||||
class QGridLayout;
|
||||
|
|
File diff suppressed because one or more lines are too long
Binary file not shown.
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 19 KiB |
|
@ -51,11 +51,11 @@ public:
|
|||
|
||||
//设置进度条样式
|
||||
static QString setProgressQss(QProgressBar *bar,
|
||||
int barHeight = 8, //进度条高度
|
||||
int barRadius = 5, //进度条半径
|
||||
int fontSize = 9, //文字字号
|
||||
const QString &normalColor = "#E8EDF2", //正常颜色
|
||||
const QString &chunkColor = "#E74C3C"); //进度颜色
|
||||
int barHeight = 8, //进度条高度
|
||||
int barRadius = 5, //进度条半径
|
||||
int fontSize = 9, //文字字号
|
||||
const QString &normalColor = "#E8EDF2", //正常颜色
|
||||
const QString &chunkColor = "#E74C3C"); //进度颜色
|
||||
|
||||
//设置滑块条样式
|
||||
static QString setSliderQss(QSlider *slider, //滑动条对象
|
||||
|
|
|
@ -1,6 +1,24 @@
|
|||
#ifndef FRAMELESSDIALOG_H
|
||||
#define FRAMELESSDIALOG_H
|
||||
|
||||
/**
|
||||
* 无边框窗体类 作者:feiyangqingyun(QQ:517216493) 2021-07-27
|
||||
* 1. 同时支持Qt4-Qt6,亲测Qt4.7到Qt6.2。
|
||||
* 2. 同时支持mingw、msvc、gcc等。
|
||||
* 3. 同时支持windows、linux、mac。
|
||||
* 4. 同时支持QMainWindow、QWidget、QDialog。
|
||||
* 5. 使用方法极其简单,只需要将继承类修改即可。
|
||||
* 6. 自动识别双击标题栏响应。
|
||||
* 7. 无边框拉伸在windows下不抖动。
|
||||
* 8. 在windows下具有移动到边缘半屏、移动到顶部全屏特性。
|
||||
* 9. 解决mac系统上无边框最小化最大化失效的BUG。
|
||||
* 10. 解决系统休眠后再次启动程序懵逼的BUG。
|
||||
* 11. 解决有时候窗体重新显示的时候假死不刷新的BUG。
|
||||
* 12. 轻量级,1个代码文件,核心代码行数不到300行。
|
||||
* 13. 注释详细,示例完美,非常适合阅读和学习。
|
||||
* 14. 开源开箱即用,保证任意Qt版本可正常编译运行,无需任何调整。
|
||||
*/
|
||||
|
||||
#include <QDialog>
|
||||
|
||||
#ifdef quc
|
||||
|
|
|
@ -1,6 +1,24 @@
|
|||
#ifndef FRAMELESSMAINWINDOW_H
|
||||
#define FRAMELESSMAINWINDOW_H
|
||||
|
||||
/**
|
||||
* 无边框窗体类 作者:feiyangqingyun(QQ:517216493) 2021-07-27
|
||||
* 1. 同时支持Qt4-Qt6,亲测Qt4.7到Qt6.2。
|
||||
* 2. 同时支持mingw、msvc、gcc等。
|
||||
* 3. 同时支持windows、linux、mac。
|
||||
* 4. 同时支持QMainWindow、QWidget、QDialog。
|
||||
* 5. 使用方法极其简单,只需要将继承类修改即可。
|
||||
* 6. 自动识别双击标题栏响应。
|
||||
* 7. 无边框拉伸在windows下不抖动。
|
||||
* 8. 在windows下具有移动到边缘半屏、移动到顶部全屏特性。
|
||||
* 9. 解决mac系统上无边框最小化最大化失效的BUG。
|
||||
* 10. 解决系统休眠后再次启动程序懵逼的BUG。
|
||||
* 11. 解决有时候窗体重新显示的时候假死不刷新的BUG。
|
||||
* 12. 轻量级,1个代码文件,核心代码行数不到300行。
|
||||
* 13. 注释详细,示例完美,非常适合阅读和学习。
|
||||
* 14. 开源开箱即用,保证任意Qt版本可正常编译运行,无需任何调整。
|
||||
*/
|
||||
|
||||
#include <QMainWindow>
|
||||
|
||||
#ifdef quc
|
||||
|
|
|
@ -1,6 +1,24 @@
|
|||
#ifndef FRAMELESSWIDGET_H
|
||||
#define FRAMELESSWIDGET_H
|
||||
|
||||
/**
|
||||
* 无边框窗体类 作者:feiyangqingyun(QQ:517216493) 2021-07-27
|
||||
* 1. 同时支持Qt4-Qt6,亲测Qt4.7到Qt6.2。
|
||||
* 2. 同时支持mingw、msvc、gcc等。
|
||||
* 3. 同时支持windows、linux、mac。
|
||||
* 4. 同时支持QMainWindow、QWidget、QDialog。
|
||||
* 5. 使用方法极其简单,只需要将继承类修改即可。
|
||||
* 6. 自动识别双击标题栏响应。
|
||||
* 7. 无边框拉伸在windows下不抖动。
|
||||
* 8. 在windows下具有移动到边缘半屏、移动到顶部全屏特性。
|
||||
* 9. 解决mac系统上无边框最小化最大化失效的BUG。
|
||||
* 10. 解决系统休眠后再次启动程序懵逼的BUG。
|
||||
* 11. 解决有时候窗体重新显示的时候假死不刷新的BUG。
|
||||
* 12. 轻量级,1个代码文件,核心代码行数不到300行。
|
||||
* 13. 注释详细,示例完美,非常适合阅读和学习。
|
||||
* 14. 开源开箱即用,保证任意Qt版本可正常编译运行,无需任何调整。
|
||||
*/
|
||||
|
||||
#include <QWidget>
|
||||
|
||||
#ifdef quc
|
||||
|
|
|
@ -30,13 +30,21 @@ protected:
|
|||
|
||||
private:
|
||||
static QScopedPointer<MaskWidget> self;
|
||||
QWidget *mainWidget; //需要遮罩的主窗体
|
||||
QStringList dialogNames; //可能弹窗的窗体对象名称集合链表
|
||||
|
||||
//需要遮罩的主窗体
|
||||
QWidget *mainWidget;
|
||||
//需要弹窗的窗体对象名称集合链表
|
||||
QStringList dialogNames;
|
||||
|
||||
public Q_SLOTS:
|
||||
//设置需要遮罩的主窗体
|
||||
void setMainWidget(QWidget *mainWidget);
|
||||
//设置需要弹窗的窗体对象名称集合链表
|
||||
void setDialogNames(const QStringList &dialogNames);
|
||||
|
||||
//设置遮罩颜色
|
||||
void setBgColor(const QColor &bgColor);
|
||||
//设置颜色透明度
|
||||
void setOpacity(double opacity);
|
||||
};
|
||||
|
||||
|
|
|
@ -4,7 +4,9 @@
|
|||
/**
|
||||
* Ntp校时类 作者:feiyangqingyun(QQ:517216493) 2017-02-16
|
||||
* 1. 可设置Ntp服务器IP地址。
|
||||
* 2. 收到时间信号发出。
|
||||
* 2. 推荐用默认的阿里云时间服务器 ntp1.aliyun.com
|
||||
* 3. 收到时间信号发出。
|
||||
* 4. 时间精确到秒。
|
||||
*/
|
||||
|
||||
#include <QObject>
|
||||
|
@ -33,15 +35,15 @@ private slots:
|
|||
void sendData();
|
||||
void setTime_t(uint secsSince1Jan1970UTC);
|
||||
|
||||
signals:
|
||||
//收到时间返回
|
||||
void receiveTime(const QDateTime &dateTime);
|
||||
|
||||
public slots:
|
||||
//设置NTP服务器IP
|
||||
public Q_SLOTS:
|
||||
//设置Ntp服务器IP
|
||||
void setNtpIP(const QString &ntpIP);
|
||||
//获取日期时间
|
||||
void getDateTime();
|
||||
|
||||
Q_SIGNALS:
|
||||
//收到时间返回
|
||||
void receiveTime(const QDateTime &dateTime);
|
||||
};
|
||||
|
||||
#endif // NTPCLIENT_H
|
||||
|
|
|
@ -34,7 +34,7 @@ void Log(QtMsgType type, const char *msg)
|
|||
content = QString("Debug %1").arg(msg);
|
||||
}
|
||||
break;
|
||||
#if (QT_VERSION >= QT_VERSION_CHECK(5,0,0))
|
||||
#if (QT_VERSION >= QT_VERSION_CHECK(5,5,0))
|
||||
case QtInfoMsg:
|
||||
if ((msgType & MsgType_Info) == MsgType_Info) {
|
||||
content = QString("Infox %1").arg(msg);
|
||||
|
|
|
@ -3,9 +3,11 @@
|
|||
|
||||
/**
|
||||
* 全局截屏控件 作者:feiyangqingyun(QQ:517216493) 2016-11-11
|
||||
* 1. 支持鼠标右键选择菜单。
|
||||
* 2. 支持全局截屏和局部截屏。
|
||||
* 3. 支持图片另存为。
|
||||
* 1. 鼠标右键弹出菜单。
|
||||
* 2. 支持全局截屏。
|
||||
* 3. 支持局部截屏。
|
||||
* 4. 支持截图区域拖动。
|
||||
* 5. 支持图片另存为。
|
||||
*/
|
||||
|
||||
#include <QWidget>
|
||||
|
@ -33,16 +35,24 @@ public:
|
|||
|
||||
int width();
|
||||
int height();
|
||||
bool isInArea(QPoint pos); // 检测pos是否在截图区域内
|
||||
void move(QPoint p); // 按 p 移动截图区域
|
||||
|
||||
//检测坐标点是否在截图区域内
|
||||
bool isInArea(QPoint pos);
|
||||
//按坐标移动截图区域
|
||||
void move(QPoint p);
|
||||
|
||||
private:
|
||||
QPoint leftUpPos, rightDownPos; //记录 截图区域 左上角、右下角
|
||||
QPoint startPos, endPos; //记录 鼠标开始位置、结束位置
|
||||
int maxWidth, maxHeight; //记录屏幕大小
|
||||
STATUS status; //三个状态: 选择区域、移动区域、设置width height
|
||||
//记录 截图区域 左上角、右下角
|
||||
QPoint leftUpPos, rightDownPos;
|
||||
//记录 鼠标开始位置、结束位置
|
||||
QPoint startPos, endPos;
|
||||
//记录屏幕大小
|
||||
int maxWidth, maxHeight;
|
||||
//三个状态: 选择区域、移动区域、设置width height
|
||||
STATUS status;
|
||||
|
||||
void cmpPoint(QPoint &s, QPoint &e);//比较两位置,判断左上角、右下角
|
||||
//比较两位置,判断左上角、右下角
|
||||
void cmpPoint(QPoint &s, QPoint &e);
|
||||
};
|
||||
|
||||
#ifdef quc
|
||||
|
|
Loading…
Reference in New Issue