- 博客(13)
- 资源 (15)
- 收藏
- 关注
原创 Qt信号槽机制的实现
<br /> 因为面试时问了我这道题,导致我想去了解信号槽到底是如何实现的,于是贴着顺序看了下源码,大致了解了整个框架。网上关于信号槽的文章也很多,但是大部分都是将如何应用的,这里我就写一下我所理解的如何实现吧, 由于时间仓促,源码阅读的也不甚仔细,难免导致最终理解有偏差或错误,大家看出了请一定指正。<br /> <br /> 首先:信号槽其实就是三部分组成:信号的声明,槽的声明和实现 以及 connect函数。这其中我觉得最重要的就是这个connect函数了。<br /> 1
2010-06-29 15:04:00 3733 5
原创 解决qt mysql出现的:无法加载驱动问题
帮同学做的毕业,这两天一个很大的问题困惑的我不行。毕设我是用qt + mysql来做的。结果在自己电脑上跑起来很正常,但是编译一个release版本,拿到另外一台电脑上就报错说:can't load driver 。 试图去解决这个问题,今天总算搞定,这里总结一下。 首先需要说明的是:我用的是qt for vc2005,qt4.5.0 mysql server5.5 整个流程: 1:首先我编译了一个release版本,而后用dependency walker查看了下库的依
2010-06-29 13:15:00 9523 10
原创 面试题(Qt + 函数指针)
<br /> 面试官问的问题是:Qt信号槽机制,你觉得可以用什么策略来取代? 因为signal-slot本身是一个顺序执行的过程,只有执行完slot之后,才会执行emit的下一条语句。其策略类似于函数调用,只不过由于其在QObject中架设了一个大的结构,这导致其执行效率不是很高,比直接的函数调用要慢10倍(忘记拿看的数据了)。平时在做项目时:如果可以我一般是用写纯虚接口的方式来替代signal-slot。 面试官又问:你有没有想过用函数指针来替代? 汗一个先,以前真没想过,而且函数指针用的也
2010-06-23 16:45:00 17575 19
原创 面试题2(循环链表)
题目为:对于普通的单向链表,如果实现确定其内部有一个环,如何确定何处出现环路的?单向链表每个节点中只有data和next两个字段。 (单向链表含环路,不要总是想到“0”型环路,还要想到“6”字型环路) 原本听到这道题时,我首先想到的笨办法就是:建一个足够大的一维数组,,每个位置放Node*类型指针。而后开始遍历单向链表,遍历过一个节点后就将该节点的指针添加到这个一维数组中,随后与该数组前边的所有元素进行一次遍历比较,如果有重复,则定位到了这个出现环路的节点。 但是后来
2010-06-23 11:46:00 3041 7
原创 寻找未存在的最小数
端午节帮同学做一个关于数据库的毕设,这其中有一个问题值得总结。 问题描述:我们要向数据库中写有几个字段的记录。 其中第一个字段和第二个字段之间的关系是1:n 。 比如:第一个字段值为A,则其对应的第二个字段值为 1,2,3。。。 这就对应着数据库中的3条记录。 所以:我们无法用第一个字段来做主关键字。 而且其各个字段中也没有哪个字段的值是各不相同的,所以无法从这各个字段中寻找一个来作为关键字。(关键字段的值不可相同)。 所以:我们需要给它添加一个关键字段,同时要保证该
2010-06-18 11:25:00 1722 11
原创 Qt中父子widget的消息传递
<br /> 以前我一直以为:在父widget上摆一个子widget后,当click子widget时:只会进入到子widget的相关事件处理函数中,比如进入到mousePressEvent()中, 而不会进入到父widget的对应事件处理函数中。毕竟:click的是子widget,其遮挡住了父widget,从而父widget接收不到这个事件。然而事实真的是这个样子吗?<br /> 我做了一个测试: 在一个QWidget上建了一个QLabel。而后实现父QWidget的mousePressEv
2010-06-14 00:41:00 5585 6
原创 Qt与symbian特定格式类对象的转换
1:FbsBitmap转为QImage 应用场景:当使用摄像头时:拍摄的图像都是FBsBitmap,而如果要想让其显示在QWidget上,则需要首先将其转换成QImage格式。参数说明:aBitmap是传入参数,aImage是传出参数,当动态拍摄(相当于摄像)时:aStep为4; 当capture拍摄静态图片时:aStep为3.void FbsBitmapToQImage(CFbsBitmap* aBitmap,QImage* aImage,TInt aStep){ int aHeight=
2010-06-11 10:58:00 1250
原创 Qt for symbian工程文件的一些特异写法
symbian本身的工程文件不具有cross-platform特性,都是一些自己唯一的定义文件,像:*.mmp,*.pkg文件。而Qt得工程文件为*.pro。如何实现*.pro到*.mmp ,*.pkg文件的映射则值得总结。1:添加库对于添加库,无论是静态还是动态库,都需做两步:先是声名一下,其后是拷贝。二者仅仅是声名的方式不一样。1:声名:(1)动态库symbian:LIBS += MMP_RULES += "LIBRARY fbscli.lib"(这里我加的是名为fbscli的动态库
2010-06-11 10:29:00 1748
原创 笔试题(1)
<br />原题: <br /> 一个数组,里边存放三种球颜色值:红球为 'R',绿球为 'G ',蓝球为 'B ', <br /> 编程对该数组排序,使该数组最后的颜色排列如下:前边元素全部为 'R ',中间元素全部为 'G ',后边为 'B '<br /> <br />-----------------------------------------------------------------------------------------------------------------
2010-06-09 11:56:00 3360 13
原创 创新工厂面试经历
周五接到创新工厂的面试电话,让周一过去。我原先是投的实习岗位,毕竟NOKIA离学校太远了,想找个离学校近点的地方。咨询过原本去面试过的同学,说起来题目都很简单,无非是折半查找什么的,面试个把小时就结束了。结果到我这:我12点50到那,跟一个面试我的工程师一直面对面的聊到2点半,活活面了1个半小时,悲惨~午饭都没吃。(面试完了,我才明白:那工程师以为我是来面正式员工的,所以~~) 我以前也参加过几个公司的面试,但是这次面试的经历是最nice的!以前去朗讯面试,基本上过去做了张试卷然后和t
2010-06-08 11:09:00 80792 311
原创 Qt中如何实现QTextEdit中文字的单个删除 和 连续删除
前两天有人问我关于如题所示的问题,具体就是说:现在他想做一个按钮,当click它时:只删除编辑框中的一个文字,而当常按press时:则连续的删除文字,此后一旦release,则立即停止删除问题。 关于如何删除一个文字,这个很好实现,这里把重点放在:如何区分这两种状态上。 我在实现时:只用了一个定时器。总体为:当第一次press时间达到0.5s时开始连续删除,如果按压的时间不足0.5s即release,则只删除一个文字; 而连续删除文字时:是每隔0.1s删除一个,一旦中途re
2010-06-08 10:18:00 8124 5
原创 Qt中如何保存 自画图片 为 图片文件
<br /> 举两个应用场景:<br /> 1:画图板这种程序,当用户自己画了一幅图片之后,肯定需要保存成文件存放到某个路径下。<br /> 2:登陆一些论坛时:除去要填用户名和密码外,系统还会随机自动生成一张上边写有数字或者字母的验证图片,让你将上边的字符填入编辑框来进行验证。<br /> <br /> 其实上边第二个例子不怎么准确,因为虽然它也要依据系统提供的字符来自动生成一张图片,但是却不需要将其实际保存成图片文件,对于第一个例子则很准确:既需要实际生成一张图片,同时也
2010-06-05 00:29:00 12482 7
原创 Qt中如何禁掉所有UI操作以及注意事项
刚做完的一个项目,在测试时出现了一个问题:由于多线程的存在,当进行语音识别时:如果用户点击程序界面上的button或者其他widget,则会crash ! 后来尝试着从线程上去解决,但是比较困难;后来只能从另外一条路来解决,那就是:当语音识别进行时:禁掉一切用户操作! 所谓的禁掉一切UI操作,在手机等手持设备上,尤其是纯触摸屏的设备上,主要就是指的禁止mouse操作!当然了:也可能是禁止键盘操作等。那如何去做这一点呢? 方法:我们可以截获禁止操作的窗口的所有event事件,
2010-06-04 00:34:00 4339 7
Qt个性化菜单项例子程序
2010-05-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人