- 博客(50)
- 资源 (2)
- 收藏
- 关注
原创 监听窗口状态变化
void EeoCustomNormalDialog::changeEvent(QEvent *event){ if (QEvent::WindowStateChange == event->type()) { QWindowStateChangeEvent *stateEvent = dynamic_cast<QWindowStateChangeEvent *>(event); if (stateEvent) { Qt::WindowSta
2023-05-25 17:16:35 914
原创 事件派发代码
bool QCoreApplication::sendEvent(QObject *receiver, QEvent *event){ Q_TRACE(QCoreApplication_sendEvent, receiver, event, event->type()); if (event) event->spont = false; return notifyInternal2(receiver, event);}void QCoreAp.
2021-03-12 18:41:56 613
原创 关于QWidget上的子控件假死问题的解决方案
关于QWidget上的子控件假死问题的解决方案重写bool LeXueClient::event(QEvent* event)拦截 QEvent::WindowStateChange 事件获取窗口列表然后设置窗口属性 foreach(QWidget *widget, QApplication::allWidgets()) { WholeBodyScreenWidget * w = dynamic_cast <WholeBo...
2020-12-16 21:20:37 303
原创 qt 解析命令
for (int i = 1; i < args.size(); ++i) { const QByteArray arg = args.at(i).toUtf8(); if (arg.startsWith('-')) { if ("-volume" == arg) { if (i + 1 < args.count()) {...
2020-07-02 15:04:05 377
原创 程序员们平时都喜欢逛什么论坛呢?
程序员们平时都喜欢逛什么论坛呢?看到有人问程序员都喜欢逛哪些论坛,那我就来总结一下。0. GitHub — 开发者最最最重要的网站:https://github.com这个不用多说了吧,代码托管网站,上面有很多资源,想要什么轮子,上去搜就好了。并且呢,上面有很多优秀的程序员,你可以在这里交到很多好朋友喔。1. Stack Overflow — 解决 bug 的社区:https://stackoverflow.com/开发过程中遇到什么 bug,上去搜一下,只要搜索的方式对,百分之 .
2020-05-25 17:36:58 206
原创 qt渐变的实现方法
qt渐变的实现方法 QLinearGradient gradient(QPointF(0, 0), QPointF(0, 1)); gradient.setColorAt(0.0, 0x3cc63c); gradient.setColorAt(1.0, 0x26f626); gradient.setCoordinateMode(QGradient::Obj...
2020-04-13 17:30:18 258
原创 QComboBox 样式表
QComboBox{padding-left:12px;border:1px solid #E0E4E5;color:#131313;font-family:微软雅黑;font-size:18px;line-height:14px;}QComboBox QAbstractItemView::item{height:30px;color:#131313;font-family:微软雅黑;font...
2020-03-30 15:43:57 448
原创 qt QWebEngineView 和 quick 渲染的问题的解决
qt 5.0 以上版本使用OpenGL渲染,但是部分老机器,老显卡,支持的OpenGL版本太低,甚至不支持OpenGL,有些显卡驱动不支持d3d,为了发布一款兼容所有机器的程序安装包,目前没有找到办法,只能通过不同的安装包解决此问题。1、支持OpenGL机器渲染。设置属性: QCoreApplication::setAttribute(Qt::AA_ShareOpenGLContex...
2020-03-23 15:46:53 3970 1
原创 关于QWebEngineView在老显卡的显示和闪屏问题的解决方案
1、支持老老显卡的设置属性 QCoreApplication::setAttribute(Qt::AA_ShareOpenGLContexts); //QCoreApplication::setAttribute(Qt::AA_UseOpenGLES); QGuiApplication::setAttribute(Qt::AA_UseSoftwareOpenGL); QCoreA...
2020-03-01 17:24:01 3333 3
原创 innosetup 打包 安装之前 卸载旧版本和删除旧文件
[Code]function InitializeSetup(): boolean; var ResultStr: String; ResultCode: Integer; begin if RegQueryStringValue(HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{9807F4...
2020-02-22 15:43:29 2269
原创 qt禁止硬件渲染
qt解决闪屏的问题 QCoreApplication::setAttribute(Qt::AA_ShareOpenGLContexts); QCoreApplication::setAttribute(Qt::AA_UseOpenGLES);
2020-02-22 15:42:00 2776 3
原创 qt文字太长显示方案
qt文字太长显示方案 QString nickName = qApp->property("nickName").toString(); QFontMetrics fontMetrics(this->label_2->font()); int width = fontMetrics.width(nickName); if (width > this->l...
2020-02-11 14:37:30 1193
原创 qml阴影的实现
qml代码阴影的实现注意:隐隐外层必须是Rectangle组件。import QtQuick 2.5import QtQuick.Window 2.2import QtQuick 2.4import QtQuick.Controls 1.3import QtQuick.Window 2.0import QtQuick.Controls 1.4import QtQuick...
2020-01-19 14:01:09 2794
原创 qt子控件焦点的切换
设置焦点的顺序[static] void QWidget::setTabOrder(QWidget *first, QWidget *second)Puts the second widget after the first widget in the focus order.It effectively removes the second widget from its foc...
2020-01-08 12:15:26 635
原创 QWidget 半透明窗口解决方案
设置属性 this->setAttribute(Qt::WA_TranslucentBackground, true);重写绘制函数void ThreeSplitScreenPlaybackHoverToolBarWidget::paintEvent(QPaintEvent*event){ QPainter p(this); p.setPen(QColor(0, ...
2020-01-03 20:43:02 1012
原创 Windows关闭屏幕保护睡眠的相关函数
关闭屏幕保护 bool active = false; SystemParametersInfo(SPI_SETSCREENSAVEACTIVE, false, &active, 0x0002); //阻止屏幕保护程序的运行关闭待机状态 SetThreadExecutionState(0x00000001 | 0x00000002 | 0x80000000); //防止系...
2019-12-30 11:29:28 375
原创 qt 模拟表单提交数据
QByteArray HttpUtil::login(const QString url /*= QString()*/, const QString & mobile /*= QString()*/, const QString & password /*= QString()*/){ qDebug() << QStringLiteral("正在登录...");...
2019-12-06 17:27:26 794
原创 qt互斥锁的使用
qt互斥锁的使用class CallbackStorage{public: int insertCallback(const QJSValue &callback) { QMutexLocker locker(&m_mtx); const int nextId = qMax(++m_counter, 0); ...
2019-12-01 18:15:54 1031
原创 qt生成圆形头像
废话不说,直接贴代码QPixmap HeadPortraitUtil::pixmapToRound(const QPixmap &srcPixmap, int radius){ if (srcPixmap.isNull()) { return QPixmap(); } QSize size(2 * radius, 2 * radius); QBitmap mask...
2019-07-03 17:08:49 406
原创 qt中C++和js交互
1、C++调用js代码直接调用js中方法, m_webView->page()->runJavaScript("NextSlide()", QWebEngineScript::MainWorld, [](const QVariant &var) {qDebug() << var.toString();});[](const QVaria...
2019-02-14 16:07:43 1857 1
原创 qt C++调用js方法
qt中C++调用js方法 QWebEnginePage * page = view->page(); if (page) { page->runJavaScript("LastSlide()", QWebEngineScript::MainWorld, [](const QVariant &var) ...
2019-02-13 16:46:53 1274
原创 QDialog模态对话框与非模态对话框
模态一MyWidget*w = new MyWidget; //派生于QWidget w->setWindowFlags(Qt::FramelessWindowHint | Qt::Tool | Qt::WindowStaysOnTopHint); w->setAttribute(Qt::WA_ShowModal, true); w->setAttr...
2019-01-21 18:27:42 182
原创 qt单例问题
qt有内存回收机制,如果在qt中单例模式使用的不正确,退出的时候程序可能会崩溃。 原因是qt程序在窗口关闭的时候或者程序退出的时候都会销毁继承于QObject对象的内存。但是如果静态内存释放的时候会崩溃,因为静态的变量存储于静态区,程序无法释放,如果强制释放的时候就会崩溃。 举个例子,比如,我们的程序只有一个主窗口,我们可以把主窗口用单例模式来创建, LiveClie...
2018-12-29 14:32:00 839
原创 QTUI程序的主线程
qt是一个以事件为驱动的框架。 QTUI在主线程,Qt所有的事件都在UI主线程, 包括定时事件。所有所有耗时的操作务必不要在事件中处理,否则影响整个的刷新的时间。。。。。可以使用线程把去处理复杂的事件,然后把结果传到UI线程中。。。。。。。。。。。。。。...
2018-12-28 10:57:22 1350
原创 qt最小化窗口之后再次最大化,窗口会出现卡死的问题
qt最小化窗口之后,再次最大化窗口,窗口会出现卡死的情况方法一:拦截event事件,处理这个事件bool LiveClientMainWidget::event(QEvent *event){ qDebug() << "bool LiveClientMainWidget::event(QEvent *event):" << eve...
2018-12-25 16:38:16 2839 1
原创 C++设计模式
无论是做客户端开发,还是做服务端开发,都会用到设计模式。 http://www.cnblogs.com/geek6/p/3951677.html
2018-12-13 18:44:33 89
原创 qt窗口或者控件设置自定义样式的方法
基本函数void QWidget::setStyle(QStyle *style)使用办法: 1、实现自定义接口类class CustomTabStyle : public QProxyStyle{public: QSize sizeFromContents(ContentsType type, const QStyleOption *option, ...
2018-12-11 16:06:55 1917
原创 qt标准图标的使用
qt框架提供了一些标准的图标,这些图标基本上可以满足大多数的软件的使用 stopButton->setIcon(style()->standardIcon(QStyle::SP_MediaStop)); enum StandardPixmap { SP_TitleBarMenuButton, SP_TitleBarMinButt...
2018-12-11 16:02:01 2484 1
原创 qt等待阻塞的解决方案
在开发中我们经常用到等待,阻塞,比如每个5秒钟请求一次服务器,但是这个时候我们使用QThread::sleep这个函数,但是这个函数有一个缺点,就是他会阻塞Qt的事件循环,我们界面会卡死。 所以有一种比较好的方法,就是QEventLoop。 QTimer timer; timer.setInterval(5000); // 设置超时时间 5 秒 ...
2018-12-10 10:20:17 7548 2
原创 QT5中设置windows程序的图标
把myico.ico文件放置到源码目录中; 在pro文件中添加一行代码, RC_ICONS = myico.ico
2018-12-07 11:33:58 1023
原创 qt的http之post和get请求超时处理方案
说的再多,不如贴源码。get请求:QByteArray HttpUtil::getData(QNetworkRequest request /*= QNetworkRequest()*/, const QByteArray & data /*= QByteArray()*/){ QTimer timer; timer.setInterval(5000); // 设...
2018-12-05 18:08:05 5068
原创 QT路径的存储于读取
路径的存储QDir::addSearchPath( "imageDir", "d:\\image");路径的获取QString dir = QDir::searchPaths("imageDir");
2018-12-03 14:14:47 384
原创 qt基本类型定义
typedef signed char qint8; /* 8 bit signed */typedef unsigned char quint8; /* 8 bit unsigned */typedef short qint16; /* 16 bit signed */typedef unsigned short quint16; ...
2018-12-03 14:12:37 1665
原创 QWebEngineView删除缓存和cookie的方案
题记:最近公司开发产品用到了qt的QWebEngineView的相关模块,但是当我们把服务器关闭了,QWebEngineView还有网页上显示,查阅了大量资料,终于明白了为什么?写一遍博客,记录一下开发过程。QT的QWebEngineView内部提供了一种缓存机制,当用户浏览网页时会自动把网页的内容缓存一份到本地的C:\Users\zhangsan\AppData\Local\路径下,下...
2018-11-30 13:58:11 12082 4
原创 QT文字编辑的实现方案
QT中提供了很多的文字编辑类,例如,QTextEdit、QLineEdit、QTextBrowser,QGraphicsTextItem。
2018-11-28 10:55:24 394
原创 qt程序设置超级管理员权限
qt程序设置超级管理员权限 使 Windows 下的 Qt 应用程序获得 Administrator 权限 攻略1、新建一个名字叫做menifest.xml 的文件,路径最好和.pro在同一个路径下,内容如下:<?xml version="1.0" encoding="UTF-8" standalone="yes"?><assembly xmlns="...
2018-11-27 15:25:20 1752
原创 QT程序快捷键的最佳解决方案
QT框架中提供了很多的实现快捷键的方法,比如拦截键盘事件,可以用来处理快捷键,但是这种办法有时候程序复杂的时候会失效,索引笔者建议使用另外一种办法,使用Qt提供的QAction来实现快捷键,这方法需要注意几点,第一点,QAction需要与快捷键绑定,normalAction->setShortcut(QKeySequence::Cancel); 第二点,QAction必须...
2018-11-22 11:36:21 768
原创 QNetworkAccessManager之http异步请求
QByteArray HttpUtil::getData(QNetworkRequest request /*= QNetworkRequest()*/, const QByteArray & data /*= QByteArray()*/){ m_networkReply = m_networkAccessManager->get(request); connect(m_n...
2018-11-22 09:50:06 1132
原创 QNetworkAccessManager之http的同步请求
QByteArray HttpUtil::getData(QNetworkRequest request /*= QNetworkRequest()*/, const QByteArray & data /*= QByteArray()*/){ m_networkReply = m_networkAccessManager->get(request); connect(m_n...
2018-11-22 09:44:23 2787
用qt实现的水印工具(QT&& C++)
2019-04-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人