- 博客(55)
- 资源 (16)
- 问答 (23)
- 收藏
- 关注
原创 允许Widget接受拖拽的数据
实现向widget中拖拽数据并获取数据的方法。//事件过滤函数处理指针对拖拽的widget。1.首先要给widget设置接受拖拽的属性。2.安装事件过滤器,过滤拖拽事件。//鼠标释放时处理接受解析数据。
2022-08-04 20:32:37
482
原创 qss设置Qwidget后,子类化QWidget后qss无效了
今天用Designer拖一个widget窗口,在上面有控件并用qss设置了背景色,所有控件的样式子类化继承QWidget后,通过setupUi(this) 将刚拖的控件在子类化widget里面创建,封装后,在界面调用,发现看不到设置的背景。通过查找资料需要重载paintEvent void paintEvent(QPaintEvent* event) { Q_UNUSED(event); QStyleOption opt; opt.ini...
2022-04-07 20:21:38
580
原创 QPushButton按钮 背景色渐变效果的qss
QPushButton{border-radius:15px;padding-left:10px;padding-right:10px;color:rgb(255,255,255);min-width:120px;background:qlineargradient(x1:0,x2:1,y1:0,y2:1,stop:0rgb(18,111,237),stop:1rgb(45,147,250));}Q...
2022-01-15 16:24:50
1392
原创 如何在 Qt Designer 中添加资源文件,直接看到效果
打开Qt desiner,在视图,在视图中选择资源浏览器,在弹窗的资源浏览器中就可以添加图片资源
2022-01-15 16:21:58
1204
原创 qss 方式截取序列图
该序列图,是40x36的三张图片拼接而成。从左到右,分别是normal,hover,pressed三种状态。当用qt 写界面程序时,为了使资源目录不到处都是图标,将散的图片拼接成三种状态或四种状态的序列图,此时在项目中使用时,setStyleSheet 处理每个状态获取对应的图表方式如下: //后面四位数字表示截取图片对应的是上右下左,在序列图中,normal中图标在第一个,该图标到它的上边没有图标了,所以第一个数字表示到距离最上边是0,第二个表示右,第一图标到最右边的距离是连个图标的宽度...
2022-01-15 16:17:40
408
原创 获取系统版本信息
#include "stdafx.h"#include <iostream>#include <Windows.h>#include <stdlib.h>#include <string>#include <comdef.h>#include <Wbemidl.h>using namespace std;#pragma comment(lib, "wbemuuid.lib")std::string Wch...
2021-06-18 15:09:44
230
1
原创 QT 阻止窗口放大
在做Qt程序界面开发过程中,测试按组合键win + up 使 界面放大了,为了阻止界面放大,保持原状,此时需要用到PMINMAXINFO:/** Struct pointed to by WM_GETMINMAXINFO lParam*/typedef struct tagMINMAXINFO { POINT ptReserved; //保留参数 POINT ptMaxSize; ...
2021-05-27 10:42:13
872
转载 什么是JSP
JSP 与 PHP,ASP, ASP.NET 类似,是一种运行在web端的语言JSP(全称Java Server Pages)是由 Sun Microsystems 公司倡导和许多公司参与共同创建的一种使软件开发者可以响应客户端请求,而动态生成 HTML、XML 或其他格式文档的Web网页的技术标准。JSP 技术是以 Java 语言作为脚本语言的,JSP 网页为整个服务器端的 Java 库单元提供了一个接口来服务于HTTP的应用程序。JSP文件后缀名为 *.jsp 。JSP开发的WEB应用可以跨平
2021-03-04 23:29:41
860
1
原创 tomcat 是什么
这个软件用来装载你的javaweb程序,可以称它为web容器,你的jsp/servlet程序需要运行在Web容器上,Web容器有很多种,JBoss、WebLogic等等,Tomcat是其中一种。tomcat是一种web服务器,也可以称作运行在服务器(物理意义上的计算机)上的一种软件包。用来对服务器上的HTML文档提供访问权限控制。以上的说法可能太专业化,一时难以理解。其实用通俗的语言来讲,万维网本质上就是“超文本文档”(HTML文档)组成的一个通过超级链接互相访问交互网络。你从甲计算机上的文档A通过超链接
2021-03-04 22:55:30
6000
5
原创 绕过UAC 不弹窗启动程序的方法
https://baijiahao.baidu.com/s?id=1678518589760092233&wfr=spider&for=pc
2020-12-23 18:02:57
1705
1
原创 代码如何实现创建windows计划任务
下面给出一个网址,以便自己方便查找https://blog.youkuaiyun.com/atlandis_jl/article/details/12708839
2020-12-17 11:42:58
694
原创 Qt实现界面居中显示,以及顶层显示
///////////////////////////////////////////////////////////////// 屏幕中间显示 QDesktopWidget *pDeskWdg = QApplication::desktop(); QRect rctAvaild = pDeskWdg->availableGeometry(); this->move((rctAvaild.width() - this->width()) / 2, (rctAvail...
2020-10-29 15:12:19
923
原创 如何导出qt 运行环境
Qt程序打包时,需要依赖Qt的一些库,通过命令行:windeployqt.exe 可执行程序路径 就可以将相应依赖的dll拷贝到可执行目录下:如下图:
2020-09-17 19:41:16
413
原创 LordPE 查看程序依赖项的好工具
当程序运行崩溃时,想要查看exe,或dll依赖哪些项,使用lordpe去查看,详细明了,如:1.拖动文件到lordPE里面,弹出一个对话框2.弹出的对话框中选目录3.再在弹出的对话框里选择导人表...
2020-09-17 19:36:16
733
原创 Qt ui_xxxxxx.h 找不到头文件
由于迁移项目,从VS高版本到低版本,环境发生变化导致编译不管,就重现创建了一个项目,就高版本项目的文件拷贝进新项目里,重新编译,发现找不到ui_xxxx.h头文件只需右键属性xxxx.ui,常规|项类型,修改为“自定义生成工具”,展开自定义生成工具,设置:命令行:"$(QTDIR)\bin\uic.exe" -o ".\GeneratedFiles\ui_%(Filename).h"说明:Uic%27ing %(Identity)...输出:\GeneratedFiles\ui_%(Fi..
2020-09-11 18:05:13
3720
原创 QWidget 添加边框阴影
示例代码:WindWMAPI.h#ifndef WINDWMAPI_H#define WINDWMAPI_H#include <windows.h>//********************************************窗口阴影类***************************************typedef struct _MARGINS{ int cxLeftWidth; // width of lef...
2020-09-08 09:39:45
1715
原创 Qt 当文本过长时,超过一定限制,右边以省略的符号显示
m_lbTaskName->setFixedWidth(width() / 2); QFontMetrics metrics(name); QString taskName = metrics.elidedText(QString::fromWCharArray((wchar_t*)m_taskBaseInfo.brszName), Qt::ElideRight, width() / 2 - 30); m_lbTaskName->setText(taskName)...
2020-09-07 19:18:13
1157
原创 QLabel 显示文本,当文本长度超过指定长度时右边省略显示
m_taskNameBarWdg //QLabel标签int showWidth = m_taskNameBarWdg->width() - 140; m_taskNameBarWdg->setTaskValueWidth(showWidth); QFontMetrics metrics(m_taskNameBarWdg->getTaskNameFont()); QString taskName = metrics.elidedText(QString::fr...
2020-07-17 15:48:11
1519
原创 编译链接原理
现在天天用VS做项目开发,其实从源代码到生成一个可执行文件,中间经历了许多步骤,往往我们容易忽略,因为VS IDE帮我们做了编译与链接两个阶段的工作,而编译与链接阶段的合称Build, 而这两个阶段最容易发生错误,所以就得了解它的原理,帮助我们改bug.为什么要把源文件生成可执行文件呢?因为机器只识别0/1代码,而源文件在磁盘上存储,要运行源文件就必须将源文件转化为机器识别的二进制文件,并将转化后的文件载入到内存中才能运行。程序的运行过程分为编译阶段与链接阶段,而编译阶段又分为预编译,编译,汇编。.
2020-07-14 00:14:02
191
原创 VS2013 遇到无法下断点,提示当前无法命中断点,还没有为该文档加载任何符号
按照网上的文档,依然无法解决:https://blog.youkuaiyun.com/tr1912/article/details/51111824从网上下载了一个Everything 搜索该函数依赖的库 XXXX.dll 和xxxx.lib,发现程序调了别处存放的一个lib,将多余的lib和dll删掉,VS设置对库依赖路径,重新编译,通过...
2020-06-04 11:08:40
518
原创 C++ 实现获取任意一年一个月中的天数
int GetDaysInEveryMonth(int y, int m){ int d; int day[] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; if (2 == m) { d = (((0 == y % 4) && (0 != y % 100) || (0 == y % 400)) ? 29 : 28); } else { d = day[m - 1]; } return d;}.
2020-05-27 11:23:51
954
原创 VA插件突然不能使用,弹出“The security key for this program currently stored on your system does not appear to ”
第一次安装vs2019,安装VS助手后,运行VS弹出”The security key for this program currently stored on your system does not appear to be valid for th”Windows Registry Editor Version 5.00[HKEY_CURRENT_USER\Software\Licenses]"{R7C0DB872A3F777C0}"=hex:70,d1,fb,66"{K7C0DB872
2020-05-17 01:16:01
533
原创 QDir中的Filter枚举变量 和 QDir中的SortFlag枚举变量
enum QDir::Filter与flags QDir::Filters中常用的枚举变量值及其含义如下:QDir::Dirs 0x001 列出目录;QDir::AllDirs 0x400 列出所有目录,不对目录名进行过滤;QDir::Files 0x002 列出文件;QDir::Drives0x004 列出逻辑驱动器名称,该枚举变量在Linux/Unix中将被忽略;QDir::NoSymLinks 0x008 不列出符号链接;QDir::NoDotAndDotDot 0x1000 不列出...
2020-05-14 15:19:35
1976
原创 QTreeWidget实现的目录树无法按照Windows系统的默认排序那样,有数字时,按数字的值排序
经过测试发现QTreeWidget 的排序是安装字符串比较大小来排序的,而Widows下的排序对于有数字的是按数值大小在排序,这里就重载了QTreeWidgetItem的小于操作符函数.hclass CTreeWidgetItemEx : public QTreeWidgetItem{public: explicit CTreeWidgetItemEx(QTreeWidget *view, int type = Type); CTreeWidgetItemEx(QTreeWi...
2020-05-13 19:02:36
568
原创 用鼠标左键点击QTreeWidget里的项时,水平滚动条会回到最左边的问题
在项目开发中,实现了目录树,当目录名过长,或者展开的项比较多时,此时水平滚动条会出现,若拖动水平滚动条到中间,或最右端,点击QTreeWidget的某项,会导致水平滚动条移动到最左端。解决的方法:首先继承QTreeWidget,重写它,定义两个变量1.在类的头文件声明两个变量 bool m_isItemClicked; int m_horizontalScrollBarPos...
2020-05-12 14:31:56
1244
1
原创 如何隐藏QTreeWidgetItem 的checkbox,且当没有勾选QTreeWidget的子节点时,对话框的Ok按钮禁用,有勾选的,则高亮启用
没有勾选勾选 此电脑,是根节点QTreeWidgetItem,当item->setData(0, Qt::CheckStateRole, QVariant());后就会隐藏checkBoxitem->setCheckState(0, Qt::PartiallyChecked);item->setCheckState(0, Qt::Unchecked)...
2020-05-08 17:21:34
3141
原创 在同一线程即处理界面的UI,又要处理加载对话框的paint事件,去显示正在加载,发现加载对话框显示不出来
在用QTreeWidget实现目录树时,点击目录,逐级展开需要一个加载对话框,表明正在加载数据,此时主线程一直在for循环里添加下一级目录的子节点,导致没有工作线程去执行加载对话框的paintEvent的绘制,就没有加载效果出现。如下程序代码:在for循环里,添加 QCoreApplication::processEvents();//添加处理事件每添加一次节点,就调Q...
2020-05-08 15:29:38
405
原创 delete与 delete []区别
delete只调用一次析构函数,delete[]会调用每一个成员的析构函数。在Effective c++中有更为详细的解释:当delete操作符用于数组时,它为每个数组元素调用析构函数,然后调用 operate delete释放内存。delete 与 new配套,delete[] 与 new[] 配套。MemTest *mTest1=new MemTest[10];MemTest ...
2020-05-08 00:08:48
1015
原创 new、delete、malloc、free关系
new,delete是c++的运算符。它们用于申请动态内存和释放内存,对象在创建时会自动执行构造函数,在消亡之前要自动执行析构函数。由于malloc/free是库函数而不是运算符,不在编译器控制权限之内,不能够将执行构造函数和析构函数的任务强行加给malloc/free,因此C++需要一个完成内存分配和和初始化工作的运算符new,以及完成内存清理与释放的操作符delete,注意new/delete...
2020-05-07 23:14:40
622
原创 Qt 处理窗体最大化,最小化的函数
//处理窗体最小化响应函数void CMainWdg::onBtnMin(){ this->showMinimized();}//处理窗体最大化函数void CMainWdg::onBtnMax(){ QWindow * pWindow = windowHandle(); Qt::WindowStates state = windowState();...
2020-05-07 11:39:17
1751
原创 Qt 实现窗体拖到
void CMainWdg::paintEvent(QPaintEvent *event){ QPainter painter(this); //painter.fillRect(1, 0, width() - 2, 30, QColor(29, 39, 52)); //#1d2734 //QPainter pter(this); painter.drawPixm...
2020-05-07 11:25:26
156
原创 Qt 中回调函数的使用方式
.h 文件class CCallBack;//全局对象命名空间namespace GlobalObject{ CCallBack *getCallBackObj(); //获取回调函数对象 extern QWidget* gMainWdg; //主窗口全局对象,可以任意地方调用};class CCallBack : p...
2020-05-07 11:10:40
3455
原创 将Qt 实现的主对话框显示到屏幕中间
CMainWdg mainWdg; //////////////////////////////////////////////////////////////////////////// //屏幕中间显示 QDesktopWidget *pDeskWdg = QApplication::desktop(); QRect rctAvaild = pDeskWdg->...
2020-05-07 11:04:04
1066
原创 项目中遇到QTreeWidget实现的目录树,水平滚动条没有随着展开的内容真多而出现的问题
方法有两种:方法一: m_leftTreeWidget->header()->setHorizontalScrollMode(QAbstractItemView::ScrollPerPixel); m_leftTreeWidget->header()->setSectionResizeMode(0, QHeaderView::Resiz...
2020-04-30 12:27:51
1371
原创 Qt 解决用QLineEdit实现的输入框开始没有光标在闪烁的问题
在项目中遇到new出来QLineEdit在开始时,没有光标在闪烁,此时需要重写QlineEdit代码如下:.h文件class CLineEidt : public QLineEdit{ Q_OBJECTpublic: CLineEidt(QWidget *parent = NULL); ~CLineEidt();protected: virtual...
2020-04-20 10:19:25
5820
原创 QComboBox 美化
在这里记录工作中美化下拉框的qss代码,以便以后忘记,方便自己找到:QStyledItemDelegate* itemDelegate = new QStyledItemDelegate(); QComboBox *comboBox = new QComboBox(); comboBox->setItemDelegate(itemDelegate); comb...
2020-04-20 09:49:21
701
原创 如何使QLabel 加载的gif动态图片使其背景透明,与背景色一致
在做Qt项目时遇到加载Gif动态图片,但QLabel设置的gif图片,背景图无法透明,需要重写QLabel,下面是代码:.h头文件#include <QtWidgets>class CMoviceLabel : public QLabel{ Q_OBJECT;public: CMoviceLabel(QWidget* parent = NULL);pr...
2020-03-31 15:14:52
2825
原创 QTreeWidget 实现自动加载目录以树形结构显示,带checkbox,且item,滚动条用qss美化
写这文章是为了对知识的总结与归纳,以便后面忘了好找,也方便初学者可以找到学习资料#include "TestWidget.h"TestWidget::TestWidget(QWidget *parent) : QMainWindow(parent), ui(new Ui::TestWidgetClass){ ui->setupUi(this); ui->...
2019-11-21 11:39:22
2334
1
原创 大话设计模式--策略模式
策略模式:它定义了算法家族,分别封装起来,让它们之间可以相互替换,此模式让算法的变化,不会影响到使用算法 的客户。商场收银时如何促销,用打折还是返利,其实都是一些算法,用工厂来生成算法对象,这没有错,但算法本身只是一种策略,最重要的是这些算法是随时都有可能相互替换的,这就是变化点,而封装变化点是我们面向对象的一种重要的思维方式。策略模式的解析:策略模式是定义一系列算法的方法,从概率上来看,...
2019-08-03 22:58:22
224
原创 设计模式原则之一:单一职责原则
单一职责原则:就一个类而言,就只有一个引起它变化的原因。我们在编程时,很自然地就给类加各种各样的功能,比如一个窗体应用程序,一般都会生成一个Forml这样的类,于是我们就把各种各样的代码,像某种商业运算的算法,数据库访问的SQL语句呀什么的,都写到这样的类中,这就意味着,无论任何需求要来,你都需要更改这个窗体类,这其实是很糟糕的,维护麻烦,复用不可能,也缺乏灵活性。如果一个类职责过多,就等于把...
2019-05-26 10:54:19
259
TestTreeWidget.zip
2019-11-21
2005番茄助手与清除注册表工具
2018-01-26
mysql-5.5.54.tar源码,cmake-2.8.4-win32-x86.exe,bison-2.4.1-setup.exe
2017-11-19
Socket实现Http上传文件的代码
2017-08-11
google analytics开发者
2016-12-04
QListWidget 实现的任务列表,插入很多数据会出现一阵空白后,才显示出来
2021-10-09
有没有写的比较好的用Qt实现的目录树啊,效果如windows目录树一样
2020-08-05
vs 可以远程跨网段调试应用程序吗?
2018-09-25
获取文件版本号失败?
2017-09-18
C++ Socket 实现的Http下载文件,下载速度非常慢
2017-06-13
DISM 做/Mout-wim命令操作报87错误
2017-04-20
如何用C++获取系统打开程序?
2017-02-04
C++ 如何实现多线程下载文件时限制下载速度?
2017-01-09
DeleteFile 删除文件失败,错误码获取值为5
2016-09-19
HttpSocket 登录服务的问题?
2016-09-13
获取.gho 镜像中的分区个数
2016-06-06
qtreewidget中用setitemwidget
2016-05-04
使用winhttp向亚马逊云盘上传文件时,报12030错误
2016-02-16
WinHttp 报12002的问题
2016-01-31
ERROR_INTERNET_CONNECTION_ABORTED 12030的问题
2016-01-13
调用亚马逊API 实现上传返回错误
2015-12-28
如何调用亚马逊网盘方面的API?
2015-12-21
Http协议客户端封装的问题
2015-12-01
Inno Setup卸载向导问题
2015-11-09
Inno Setup 卸载向导问题
2015-11-08
Inno Setup 退出向导的问题
2015-11-01
#include<boost/asio>运行不成功
2015-06-09
TA创建的收藏夹 TA关注的收藏夹
TA关注的人