摘要: 作为C++的程序员,我从大学就开始不间断的看书,看到如今上班,也始终坚持每天多多少少阅读技术文章,书看的很多,但很难有一本书,能让我去反复的翻阅。但唯独『重构--改善既有代码的设计』这本书让我重复看了不下3遍,今天我重新拿起这本书开始了第四遍的阅读。 我后来仔细想了想为什么我会对这个书如此“迷恋”... 阅读全文
posted @ 2014-11-18 10:53 Ricky.K 阅读(1397) 评论(4) 推荐(1) 编辑
摘要: 对于命令行用户来说,频繁的cd和tab应该是日常工作中最多使用的命令了。特别对于重度用户来说,如果可以省去这么多cd和tab,将更多的时间做有意义的事该多好。其实Linux的学习过程本身就行这样。你会不断的不满足于现状,就像我一样,一年之前还在研究如何用cd可以更加快速,cd还有什么好点的用户可以... 阅读全文
posted @ 2014-11-11 11:09 Ricky.K 阅读(1176) 评论(2) 推荐(0) 编辑
摘要: 在绘图的时候,很多时候编写的代码需要根据当前窗口自身的size来进行绘制,这个时候可以添加一个额外的中间rect来做过度,这样以后的绘图机制不会 随着size的变化而不断变化。你的处理逻辑可以保持不变,结合Qt的setWindow和setViewport你可以很轻松的做到两者的分离,这样对 vie... 阅读全文
posted @ 2014-10-23 08:47 Ricky.K 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 有时候有这样的需求,比如想对全局光标进行一次setPos(),但这个时候又不想触发消息队列触发mouseMoveEvent,这个时候就可以这么做。myWidget->clearFocus(); QCursor::setPos(pos); myWidget->setFocus(); 这样在取消窗口... 阅读全文
posted @ 2014-10-23 08:46 Ricky.K 阅读(1858) 评论(0) 推荐(0) 编辑
摘要: 最近项目中有一个比较奇怪的问题,就是当记录了最后的m_lastPos为当前widget中间位置之后,设置了QCursor也为当前中间位置。 这个时候当开始移动的时候,发现offset出现了很怪的极大值,后来发现,因为我的工作环境是远程机环境,所以当调用系统全局的 QCursor::setPos的时... 阅读全文
posted @ 2014-10-23 08:45 Ricky.K 阅读(219) 评论(0) 推荐(0) 编辑
摘要: 在Qt中常常要自己重载一些paintEvent函数,这个时候往往忽略了两个很关键的API,那就是setViewport和setWindow。 Viewport,顾名思义,反应的是物理坐标,就是你实际想在当前坐标系下哪块区域画图,比如(50,50,100,100)的一个rect. Window而是逻... 阅读全文
posted @ 2014-10-23 08:43 Ricky.K 阅读(2630) 评论(0) 推荐(0) 编辑
摘要: 比如当你Qt中用QPainter进行window和viewport,逻辑和物理坐标分离的形式进行绘图放大的时候,你会发现鼠标的移动和放大之后的图像有点不跟手,比如你是用QTransform进行放大变换,其实这个时候有个小窍门可以比较方便的解决这个 问题就是用反向的QTransform,比如前者进行v... 阅读全文
posted @ 2014-10-23 08:42 Ricky.K 阅读(539) 评论(0) 推荐(0) 编辑
摘要: 网上找了下QTimeLIne类的介绍,要么就是代码一贴自己看去,要么就是说不到重点,正巧自己项目遇到这个类,在这里写一下,给需要的同学看下。 因为我最近需要有动画方面配合时间间隔触发QGraphicsView框架的需求,意外找到了一个Qt中很实用的时间类QTImeLine,现在让我们一起来学习一下... 阅读全文
posted @ 2014-10-23 08:41 Ricky.K 阅读(3688) 评论(1) 推荐(1) 编辑
摘要: 最近忙活了半天发现了一个不容易发现的问题,比如我有一个父类的自定义Widget,并且自己设置了Pattle,但这个时候我如果再在当前Widget内部加入自己的widget就不能正常显示,但是加QPushButton就可以显示。 百思不得其解,我还特意让两个widget各自设置了不同的pattle,... 阅读全文
posted @ 2014-10-23 08:40 Ricky.K 阅读(3638) 评论(1) 推荐(0) 编辑
摘要: 如今CMake使用的人数越来越多,包括我项目组里,很多大牛们在写Qt程序的时候都不用自带的qmake,貌似会出现很多问题,他们往往都用自己写的CMake来编译系统,今天我也和大家一起来学学这个高大上的工具--CMake。 首先,一个CMake要想运行,必须在同目录下有CMake脚本,说说是脚本,其... 阅读全文
posted @ 2014-10-23 08:39 Ricky.K 阅读(1644) 评论(0) 推荐(0) 编辑