很久之前写过一篇关于QTreeView快速显示超过千万条数据项的方法,如果说那篇文章讲的是QTreeView的内功的话,今天这篇是讲QTreeView的外功,有时我们想改变视图的数据项的行高,那怎么办呢?今天在这里介绍两种改变行高的方法: 1.通过更改QTreeView的默认delegate的方法 Read More
posted @ 2016-06-25 05:26
findumars
Views(5041)
Comments(0)
Diggs(0)
大家熟知的C库函数printf函数就是一个可变参数函数,它是怎么实现的呢?不过他实现是有条件的,必须函数参数的入栈顺序为从右向左的顺序,也即函数的形参,在函数调用之前,必须是最右边的参数先入栈,并且参数都必须通过栈传递,以1个例子说明,如函数func(arg1, arg2,arg3),那么函数的堆栈 Read More
posted @ 2016-06-25 05:22
findumars
Views(1564)
Comments(0)
Diggs(0)
学习编程已经有10个年头了,在这10年里,我做个不少软件项目,有大有小,写过基于单片机的裸奔式的嵌入式软件,写过基于os(linux、rtems、linux)的嵌入式软件,做过windows驱动开发,开发个windows应用软件,这一路走来,发现在国内程序员并不受尊重,程序员往往寿命很短,不到30岁 Read More
posted @ 2016-06-25 05:21
findumars
Views(399)
Comments(0)
Diggs(0)
QAxObject对COM对象进行了封装,QAxObject派生自QAxBase,而后者提供了一组API通过IUnknown(不清楚IUnknown的同学可以去看看COM对象模型)指针直接访问COM对象,我们这里讲的excel也是一个COM对象,因此我们可以通过QAxObject来操作它,为了便于理 Read More
posted @ 2016-06-25 05:19
findumars
Views(10679)
Comments(3)
Diggs(0)
在定长记录采用数据库读写并非最佳解决方案一文中,介绍了不管文件中记录数据为多少,只要按照文中介绍的方法存储,对于文件中任意1条记录数据,在读缓冲内存恒定不变的情况下,最多只需要读文件1次,而且定位记录的算法也超级简单,只需做1次除法运算和1次求余运算。今天我在这里介绍一下它的C++实现方法。 1.写 Read More
posted @ 2016-06-25 05:17
findumars
Views(571)
Comments(0)
Diggs(0)
对于有些应用场合如仪器仪表的采样数据,不需要对数据排序、插入和修改,只需要对数据写和读操作,在这种情况下,使用数据库来存取这样的记录数据,未必是最佳的选择,本文根据工作实践,采用文件的分块记录的方法,来处理采样这样的定长记录数据,实践证明,通过文件的分块存储方法,比数据库存储方法读写速度更快,尤其是 Read More
posted @ 2016-06-25 05:16
findumars
Views(872)
Comments(0)
Diggs(0)
C++支持函数重载,所谓重载就是在同一命名空间内,函数名相同,参数不同(参数个数或参数类型不同)的函数可以共存。但是若参数和函数名相同的话,编译器会报错不能重载。但是现实中,有时候仅仅需要返回类型不同的的函数,而这种情况C++又不支持重载,如: [cpp] view plain copy typed Read More
posted @ 2016-06-25 05:14
findumars
Views(4887)
Comments(1)
Diggs(0)
当在使用表格视图的时候,需要在表格每一行前面加入图标,应该怎么做呢?Qt中通过使用MVC的处理方式,很容易做到这一点,具体实现如下: 先贴出图,让大家一睹为快 下面我就来介绍一下,上图的灯泡是怎么实现的,通过重载QAbstractTableModel中的data方法,如下:(CTblModel 派生 Read More
posted @ 2016-06-25 05:10
findumars
Views(2404)
Comments(0)
Diggs(0)
在做界面编程的时候,对文本框的处理往往是个很头疼的事情,一是焦点进入文本框时,从人性化考虑,应选择文本框中文本,方便输入;二是,限制文本框的输入,只允许输入有效的文本,如果不这样做的话,那么就需要在程序中滤去非法输入。在这里介绍一种解决上述两个问题的方法: [cpp] view plain copy Read More
posted @ 2016-06-25 05:06
findumars
Views(10279)
Comments(0)
Diggs(0)
我能抽象出整个世界 但是我不能抽象出你 因为你在我心中是那么的具体 所以我的世界并不完整 我可以重载甚至覆盖这个世界里的任何一种方法 但是我却不能重载对你的思念 也许命中注定了 你在我的世界里永远的烙上了静态的属性 而我不慎调用了爱你这个方法 当我义无返顾的把自己作为参数传进这个方法时 我才发现爱上 Read More
posted @ 2016-06-25 04:51
findumars
Views(323)
Comments(0)
Diggs(0)
大家对虚表并不陌生,都知道每个含有虚函数的类对象都有1个虚指针,但是在现实使用中,却总是因为这而调试半天,才发现原来是虚指针惹的祸。我这几天在调试代码时候也中招了,我的问题是这样的,如下图,CTree是最底层基类(非虚类), CSamplerTree(虚类)派生自CTree,CMSamplerTre Read More
posted @ 2016-06-25 04:40
findumars
Views(479)
Comments(0)
Diggs(0)
在一个颜值当道的今天,无论买衣服,买车还是追星,颜值的高低已经变成了大家最看重的(不管男性女性都一样,千万别和我说你不是);而对于程序猿来说,开发一款软件,不再只注重逻辑和稳定性,美观和用户友好性也是我们不得不关注的一个重点了。我们进入正题,今天主要和大家分享一下Qt方面关于布局管理器的使用;一、基 Read More
posted @ 2016-06-25 04:28
findumars
Views(12284)
Comments(0)
Diggs(0)
Qt为了使其动态库最大程度上实现二进制兼容,引入了d指针的概念。那么为什么d指针能实现二进制兼容呢?为了回答这个问题,首先弄清楚什么是二进制兼容?所谓二进制兼容动态库,指的是一个在老版本库下运行的程序,在不经过编译的情况下,仍然能够在新的版本库下运行;需要经过编译才能在新版本下运行,而不需要修改该程 Read More
posted @ 2016-06-25 04:26
findumars
Views(546)
Comments(0)
Diggs(0)
http://blog.csdn.net/rabinsong/article/details/8452946 Read More
posted @ 2016-06-25 02:44
findumars
Views(10947)
Comments(0)
Diggs(1)
析构函数在对象的生命结束时,会自动调用,大家所熟知的智能指针就是根据析构函数的这种特性而实现的,包括Qt的内存管理机制,也都是利用了析构函数的这一机制来实现的。c++创始人Bjarne Stroustrup在创造析构函数也是出于这种目的的,可见如果析构函数用的好的话,可以省去我们很多工作量,你不再需 Read More
posted @ 2016-06-25 02:41
findumars
Views(5455)
Comments(0)
Diggs(0)
组合框可以看作是列表框和文本框的组合,因其占据的空间少,使用操作方便,常被界面设计人员用于界面开发设计中,在有限个输入的条件下,组合框常用来代替文本框,这样从用户使用角度来看,更趋人性化,所见即所得。然好的控件永远敢不上应用的步伐,有时常规控件并不能满足应用的需要,经常需要在现有的控件上做扩展。有些 Read More
posted @ 2016-06-25 02:39
findumars
Views(2490)
Comments(0)
Diggs(0)
窗口作为界面编程中最重要的部分,没有窗口就没有界面,是窗口让我们摆脱了DOS时代,按钮是一个窗口,文本框是一个窗口,标签页是一个窗口,。。。一个窗口可以由多个窗口组成,每天我们都在与窗口打交道,当你打开windows时,桌面就是一个窗口,你打开浏览器时,你也正在访问窗口。。。好了,回到今天的话题,Q Read More
posted @ 2016-06-25 02:37
findumars
Views(1071)
Comments(0)
Diggs(0)

浙公网安备 33010602011771号