- 博客(34)
- 资源 (11)
- 收藏
- 关注
转载 Qt 程序获取程序所在路径、用户目录路径、临时文件夹等特殊路径的方法
Qt 程序获取程序所在路径、用户目录路径、临时文件夹等特殊路径的方法经常我们的程序中需要访问一些特殊的路径,比如程序所在的路径、用户目录路径、临时文件夹等。在 Qt 中实现这几个功能所用的方法虽然都不难,但是各不相同,每次用到时还要现去查,很不方便。因此就写了这篇博客,把这几种需求的实现方式总结了一下。算是个备忘录吧。程序所在路径获取程序所在路径,QCoreApplication 类里就实...
2018-11-30 13:25:02 273
转载 QT布局之控件空隙
情况概述:有时候我们在QT布局时发现,两个子窗口之间有恒定的间隔,或是子窗口边界无法和父窗口重合,有间隙,无法缩小了,有时候对界面的紧凑性很有影响 解决方案:对其父窗口的属性进行设置,一般子窗口会继承父窗口的属性,所以使用的时候小心不要把不需要改变属性的子窗口进行改变了 属性名 用途 layoutHorizontalSpacing 设置子窗口间的水平间隔 lay...
2018-11-29 13:15:07 5429
原创 QToolButton更平滑
QToolButton会有一个下沉的样式,如何去掉?增加如下样式即可:QToolButton{ border:none; }
2018-11-29 12:58:11 728
转载 C++移动构造函数以及move语句简单介绍
首先看一个小例子:#include <iostream>#include <cstring>#include <cstdlib>#include <vector>using namespace std;int main(){ string st = "I love xing"; vector<string&...
2018-11-28 22:09:20 159
转载 strcmp源码
int __cdecl strcmp (const char *src, const char *dst){ int ret = 0 ; while(!(ret = *(unsigned char *)src - *(unsigned char *)dst) && *dst) { ++src; ...
2018-11-26 20:38:00 1049
转载 C++用new创建二维数组的方法
问题来源在C++中,数组可以被视为一种类型——但是,不存在‘二维数组’这种类型。二维数组本身会被解释成一个一维数组:这个数组的元素类型为另一种一维数组。比如int[2][3]这个二维数组,它会被编译器视作一个元素类型为‘int[3]’的一维数组。并且,‘int[3]’和'int[4]'会被当成不同的数据类型。假设a, b为两个int型变量,如果你希望这样生成一个二维数组:new int[a...
2018-11-25 22:38:59 7148
转载 c++ -- 二维数组参数传递
都知道,数组名和函数名一样,可以当做指针(普通指针和函数指针)来用。关于二维数组做为形参声明和实参传递,直接看代码:#include <iostream>using namespace std;/*传二维数组*///第1种方式:传数组,第二维必须标明/*void display(int arr[][4])*/void display1(int arr[][4],...
2018-11-25 21:54:54 530
转载 C/C++获取二维数组行列数
对于type array[A][B];形式的二维数组,可以通过计算sizeof获取行列数。sizeof(array[0][0])为一个元素占用的空间,sizeof(array[0])为一行元素占用的空间,sizeof(array)为整个数组占用的空间,行数 = sizeof(array)/sizeof(array[0]);列数 = sizeof(array[0])/sizeof...
2018-11-25 20:51:00 1894
原创 QWebEngineView去除自带Cookie
目前遇到一个场景,就是使用QWebengineView但是不需要保存cookie的情况,每次启动程序都会清空一下cookie,具体的操作如下: QWebEngineCookieStore *cookie = webView->page()->profile()->cookieStore(); cookie->deleteAllCookies();参考了: ...
2018-11-23 23:40:23 2526
原创 qt5乱码
经过本人测试:QStringLiteral("登录");QString::fromLocal8Bit("登录");以上均出现乱码,只有如下是正常的:QString::fromUtf8("登录");
2018-11-22 17:35:05 220
转载 C++输出流cout的执行顺序问题
首先看一个例子:int fun1(){cout<<"num1"<<endl;return 1;}int fun2(){cout<<"num2"<<endl;return 2;}int main(){cout<<fun1()<<""&
2018-11-21 22:32:30 10650
转载 strcat源码
#include <iostream>using namespace std;/*** *char *strcat(dst, src) - concatenate (append) one string to another * *Purpose: * Concatenates src onto the end of dest. Assu...
2018-11-20 23:00:56 414
原创 c++字符串查找函数实现
int find(const char*str,const char*sub_str) { //这里就没有判断指针是否是NULL了 //保留起始地址以计算位置 const char *temp_str = str; //默认返回结果 int ret = -1; while (*temp_str != '\0') { const ...
2018-11-20 22:43:10 1564
转载 strcpy源码
题目: 已知strcpy函数的原型是: char * strcpy(char * strDest,const char * strSrc); 1.不调用库函数,实现strcpy函数。 2.解释为什么要返回char *。 解说: 1.strcpy的实现代码 char * strcpy(char * strDes...
2018-11-19 23:29:23 862
转载 解决Qt编译动态链接库could not find or load the Qt platform plugin "windows" in.问题
最近用Qt5做了一个项目的界面,在编译成可执行文件EXE之后,运行文件,提示:This application failed to start because it could not find or load the Qt platform plugin "windows"in "".Reinstalling the application may fix this problem....
2018-11-19 16:13:19 568
原创 strcpy复制‘\0‘
今天发现了这样一个问题: char *arr = new char[10]; strcpy(arr, "wangzhaaaa"); delete []arr;执行这段代码将会报错,因为strcpy复制char*时会复制'\0',所有在new 字符数组的时候应该预留'\0'的空间,否则到时候delete的时候会报错!代码改成这样即可 char *arr = new char[11.........
2018-11-18 20:02:51 7451 2
转载 DNS查找顺序
DNS查找顺序找缓存1、浏览器缓存:浏览器会按照一定的频率缓存DNS记录。chrome://net-internals/#dns 查看chormeDNS缓存。2、操作系统缓存:如果浏览器缓存中找不到需要的DNS记录,那就去操作系统中找。cmd命令ipconfig /displaydns 用于查看操作系统dns缓存。3、路由缓存:路由器也有DNS缓存。4、找本机...
2018-11-14 21:25:58 1338
原创 QUrl提取与写入参数
QUrl url("www.baidu.com?a=666&b=888"); url.addQueryItem("c","123456"); qDebug()<<url.queryItemValue("b"); qDebug()<<url.toString();
2018-11-14 15:08:20 3922 1
原创 qt实现md5加密
#include <QCoreApplication>#include <QCryptographicHash>#include <QDebug>int main(int argc, char *argv[]){ QCoreApplication a(argc, argv); QCryptographicHash hash(QCryp...
2018-11-14 14:30:57 526
原创 qt编译报错 无法运行“rc.exe”
环境:QT5.10_x86 + VS2015安装完成之后,新建了一个QT界面程序,编译之后出现链接错误:LINK : fatal error LNK1158: 无法运行“rc.exe”解决方案:把C:\Program Files (x86)\Windows Kits\10\bin\10.0.17134.0\x86这个文件夹下面的 rc.exe和rcdll.dll复制到vs安装目录下...
2018-11-12 22:55:33 802
转载 Windows下QtCreator使用QWebEngineView
Qt5.5.1之后的版本没有QWebView了。当然,如果使用之前的版本的话它的bug会让你感到绝望。所以我们需要使用Qt推荐QWebengineView,他只支持msvc,不支持mingw,所以不能在Linux/Mac osx中使用。建议使用Qt5.9.1或以上版本,据说5.9之前会有中文输入法的bug的。 我这里以Qt5.9.1为例,首先下载Qt5.9.1,下载地址ht...
2018-11-12 19:50:18 1192 1
转载 win10 系统下获取系统版本号为6.2的问题
近期赶时髦升级了win10,用着挺爽。但是某天在测试一个bug时发现要对win10做特殊处理,于是直接调用了GetVersionEx,并取出版本号进行判断,但是发现得到的版本竟然是6.2。当时就被雷到了,然后看了我们的其它产品中相关功能,皆获取的是6.2。 在搜索一会儿之后,发现这是微软故意做的设定,GetVersionEx函数可能在Win8.1之后会取消,推荐程序员们使用Version...
2018-11-09 16:50:40 545
原创 Qt基于QSemaphore的生产者消费者模型
#include <QCoreApplication>#include <QThread>#include <QSemaphore>#include <QDebug>int dataSize=80;int bufferSize=40;QSemaphore usedSemaphore(0);QSemaphore freeSemap...
2018-11-09 14:03:12 818
转载 qt下使用qwebview打开网页不显示JPEG图片的解决办法
用QT开发的一个小浏览器,用的是qt的webkit,在开发环境上运行很正常,但是打包发到另一个机器上安装的时候,发现网页中的Jpg图片显示不出来,整个排版都乱掉了,在一个国外的网站上找到了解决办法,就是需要把qt安装目录下的plugins/imageformats文件夹一块打包复制到程序所在目录(只需要dll),所有图片的解码全在这些库里面,复制过去之后网页就显示无比正常了,特此分享!!! ...
2018-11-09 10:16:30 1086
转载 c++对象创建带括号与无括号的区别
class Test{public: Test() {} Test(int a) {}}1、栈上创建对象 1.1 无括号 Test a; // 调用默认构造函数,栈上分配内存创建对象 1.2 有括号 Test a(); // 无任何意义,声明一个返回值为Test对象的无参函数 1.3 有括号+参数 Test a(2); // 调用构...
2018-11-07 21:28:02 914 2
转载 QWebView无法加载百度等网页
把 qt-create中的 ssleay32.dll 和 libeay32.dll 复制到 qt sdk的 bin目录下面
2018-11-07 16:44:08 1027 1
原创 qt乱码
//在QT4中//在main.cpp中使用 QTextCodec::setCodecForCStrings(QTextCodec::codecForLocale()); QTextCodec::setCodecForLocale(QTextCodec::codecForLocale()); QTextCodec::setCodecForTr(QTextCodec::...
2018-11-07 14:52:51 112
转载 QT 让任务栏图标闪烁
真心不明白,国内有点难找关于这个操作,几乎都是围绕托盘闪烁,但这个项目中要求是任务栏图标在闪烁。的确,任务栏闪烁比起托盘闪烁更加明显。QApplication::alert(this); https://blog.csdn.net/qq_34884729/article/details/80828031...
2018-11-06 13:10:40 1621
原创 Qt共享内存QSharedMemory
在Qt中可以利用QSharedMemory类轻松实现共享内存,这里举一个例子:一个进程读取一张图片并写入共享内存段,另一个进程从共享内存段读取并显示出来写共享内存段代码,用new形式: //在构造函数中写 sharedMemeory = new QSharedMemory(this); sharedMemeory->setKey("testtest");...
2018-11-05 22:53:49 891 1
原创 利用windows api实现进程通信(命名管道)
服务端:1.使用API函数CreateNamedPipe建立与命名管道的连接。2.使用API函数ConnectNamedPipe等待客户端的连接。(可用这个函数将一个管道换成同另一个客户连接,也就是可以重复调用该函数,但必须用DisconnectNamedPipe函数断开之前进程的连接)3.使用API函数WriteFile和ReadFile分别向客户端发送数据或从客户端接收数据。4.使用A...
2018-11-04 17:21:05 2135
原创 进程间通信的场景
具体的进程通信方法谷歌百度一大堆,本文就不提了,只举一些进程通信的场景。因为很多情况下对于新手而言缺乏的是实际场景。1、监视进程的状态比如在自己的进程内调用了另外一个程序,而此时我们可能需要等待这个程序执行完毕,那么怎么做呢?2、进程的返回结果比如在windows下,我们的进程要调用cmd.exe来执行某个命令,那么我们在调用cmd之后怎么在进程内直接获取cmd的输出呢?3、进...
2018-11-02 22:35:08 736
原创 QTableWidget行高列宽自适应
ui->tableWidget->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch); ui->tableWidget->verticalHeader()->setSectionResizeMode(QHeaderView::Stretch);
2018-11-02 21:19:25 12014 2
原创 QWebView获取网页源代码
qDebug()<<ui->webView->page()->currentFrame()->toPlainText();qDebug()<<ui->webView->page()->currentFrame()->toHtml();//其中plaintext是过滤了html标签后的纯文本格式//toHtml是获取网页...
2018-11-01 15:02:47 1785
原创 qt控件间隙
比如在一个布局layout中有两个QLabel控件,两个控件中都各有一张图片,发现二者之间有空隙,怎么消除这个空隙 layout->setMargin(0); layout->setSpacing(0); ...
2018-11-01 13:25:33 1315
Scrollbar_png.zip
2019-11-20
DuiDesigner.rar
2019-11-14
VC AssistantX_适用VS2005.zip
2019-07-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人