2016-06-20 花莫弦 小小杂货铺LY 一、qmake的介绍 qmake是Trolltech公司创建的用来为不同的平台和编译器书写Makefile的工具。 手写Makefile是比较困难并且容易出错的,尤其是需要给不同的平台和编译器组合写几个Makefile。使用qmake,开发者创建一个简单 Read More
posted @ 2016-06-20 22:36 findumars Views(3107) Comments(0) Diggs(0)
非递归上锁情况下,同一个锁,已经被锁过一次,那么另外一个线程尝试上锁,会被挡在外面,但是会被挡多久呢?挡一分钟会被崩溃,还十分钟,还是永久等待而不崩溃(希望如此)?还是会立刻崩溃?因为不可以重复上锁。 enum QReadWriteLock::RecursionMode ConstantValueD Read More
posted @ 2016-06-20 21:45 findumars Views(495) Comments(0) Diggs(0)
I/O复用是Linux中的I/O模型之一。所谓I/O复用,指的是进程预先告诉内核,使得内核一旦发现进程指定的一个或多个I/O条件就绪,就通知进程进行处理,从而不会在单个I/O上导致阻塞。 在Linux中,提供了select、poll、epoll三类接口来实现I/O复用。 select函数接口 sel Read More
posted @ 2016-06-20 21:12 findumars Views(919) Comments(0) Diggs(0)
一般地,熟悉VB、VC的同学都知道,要将新增的excel表单添加到表单的末尾,是很简单的事情,直接调用Add函数,传入对应的函数形参,就能实现将新增表单插入到末尾,但是通过QT的QAxObject实现appendSheet()却不是那么容易的事情,因为上述的Add函数不奏效,经过多次试验尝试,发现通 Read More
posted @ 2016-06-20 05:27 findumars Views(1655) Comments(0) Diggs(0)
我们知道,在windows上通过鼠标双击某应用程序图标,该应用程序往往会以顶层窗口的形式呈现在我们面前,但是对于一个已经打开的非顶层窗口,我们怎么将其激活为顶层窗口呢? 要达到激活,这个必须要满足两个条件,第一,必须要有通知激活的人,这个人必须是另一个应用程序(或同一应用程序的不同示例),他能发送信 Read More
posted @ 2016-06-20 05:26 findumars Views(17442) Comments(1) Diggs(1)
对于一些Windows应用程序,必须要保证os不能休眠才能有效工作,如迅雷下载软件,如果os进入休眠,则会导致网络不正常,从而导致不能下载东西。那木有没有1种机制,当打开软件的时候,就自动将os设为不休眠状态呢?这里我介绍一种QT应用程序不让windows进入休眠的方法: [html] view p Read More
posted @ 2016-06-20 05:25 findumars Views(1505) Comments(0) Diggs(0)
解决方法: 计算机-属性-高级系统设置-高级-环境变量-系统变量-Path 添加 E:\Qt\4.8.5\bin; E:\Qt\4.8.5\qmake; E:\mingw\bin 重启计算机 http://blog.csdn.net/emdfans/article/details/11963519 Read More
posted @ 2016-06-20 05:15 findumars Views(6997) Comments(0) Diggs(0)
打开某个项目的时候,编译出现类似的错误 21:46:44: The process "E:\Qt\4.8.5\bin\qmake.exe" exited with code 2. Error while building/deploying project designers (kit: Win-Q Read More
posted @ 2016-06-20 05:14 findumars Views(1428) Comments(0) Diggs(0)
从内存泄露开始? 很简单的入门程序,应该比较熟悉吧 ^_^ #include <QApplication> #include <QLabel> int main(int argc, char *argv[]) { QApplication app(argc, argv); QLabel *label Read More
posted @ 2016-06-20 05:13 findumars Views(3577) Comments(0) Diggs(0)
使用QT编程时,当用户自定义了一个类,只要类中使用了信号或槽. Code::Blocks编译就会报错(undefined reference to `vtable for). Google上有很多这个问题的回答,但很多说的很模糊,或者根本就不可行. 其实,QT有自己的编译方法. 不用IDE写一个类, Read More
posted @ 2016-06-20 05:12 findumars Views(2427) Comments(0) Diggs(0)
QWidget类是所有用户界面对象的基类。 窗口部件是用户界面的一个原子:它从窗口系统接收鼠标、键盘和其它事件,并且在屏幕上绘制自己的表现。每一个窗口部件都是矩形,并且它们按Z轴顺序排列的。一个窗口部件可以被它的父窗口部件或者它前面的窗口部件盖住一部分。 QMainWindow 类提供一个有菜单条、 Read More
posted @ 2016-06-20 05:10 findumars Views(362) Comments(0) Diggs(0)
直接发送和接收结构体,例如:struct A {...};struct A objectA;发送的时候: tcpSocket->write((char *)&objectA, sizeof(objectA)); 接收的时候:struct A objectB;tcpSocket->read((char Read More
posted @ 2016-06-20 05:09 findumars Views(1895) Comments(1) Diggs(1)
[cpp] view plain copy [cpp] view plain copy [cpp] view plain copy /* 方法2 */ /* * 获取文件md5值 */ QByteArray MainWindow::getFileMd5(QString filePath) { QFi Read More
posted @ 2016-06-20 05:08 findumars Views(2554) Comments(1) Diggs(0)
1、char * 与 const char *的转换 char *ch1="hello11";const char *ch2="hello22";ch2 = ch1;//不报错,但有警告ch1 = (char *)ch2; 2、char 与 QString的转换char 转换为 QString其实方 Read More
posted @ 2016-06-20 05:07 findumars Views(22184) Comments(1) Diggs(0)
Qt的QString类提供了很方便的对字符串操作的接口。 例: 2,从字符串里查找相同的某个字符串str。 例如: 3指定位置插入字符串 例如: 3,判断字符串是否为空。 如: 4.判断字符串是否存在。 例如: 5,从左向右截取字符串 例如: 6,从中间截取字符串。 例如: 7,删除字符串中间某个字 Read More
posted @ 2016-06-20 05:06 findumars Views(709) Comments(0) Diggs(0)
TreeWidget 与 TreeView 中实现右键菜单稍有不同, TreeView 中是靠信号与槽 connect(ui->treeView,SIGNAL(customContextMenuRequested(constQPoint&)), this,SLOT(onCustomContextMe Read More
posted @ 2016-06-20 05:00 findumars Views(2522) Comments(0) Diggs(0)
ui->pushButtonhasFocus()->hasFocus(); ui->treeWidget->hasFocus(); ui->pushButtonhasFocus()->hasFocus(); ui->treeWidget->hasFocus(); http://blog.csdn.n Read More
posted @ 2016-06-20 04:58 findumars Views(3240) Comments(0) Diggs(0)
转自:http://xiangjie88.iteye.com/blog/898417 sleep()//秒msleep()//毫秒usleep()//微秒以前为了模拟鼠标点击用过这些函数,可以让进程中断,今天发现我原来的做法其实不对.这组函数会将你当前的线程/进程变为“睡眠”状态。 这个“睡眠”是深 Read More
posted @ 2016-06-20 04:56 findumars Views(7137) Comments(0) Diggs(0)
预编译加速编译 QT也可以像VS那样使用预编译头文件来加速编译器的编译速度。首先在.pro文件中加入: CONFIG += precompiled_header 然后定义需要预编译的头文件: PRECOMPILED_HEADER = pch.h 其中pch.h头文件即为自定义的预编译头文件。 指定临 Read More
posted @ 2016-06-20 04:55 findumars Views(1664) Comments(0) Diggs(0)
用Qt做过项目开发的人,肯定使用过诸如QList、QVector、QLinkList这样的模板容器类,它们虽然名字长的不同,但使用方法都大致相同, 因为其使用方法都大体相同,很多人可能随便拿一个容器类来使用,但却不知道这种选择是不是最优,这对于对性能要求不苛刻的应用,这种选择不会有任何影响,但是若性 Read More
posted @ 2016-06-20 04:50 findumars Views(1098) Comments(0) Diggs(0)