Qt 自定义鼠标样式 QCursor

在有些应用中,我们往往需要有个自定义的鼠标样式,作为整个应用的风格元素之一。特别是游戏,有个风格匹配的鼠标样式才不会让人容易出戏。
Qt 中的 QCursor 很好的支持了这个功能。具体的文档参考《 Qt 5.3.1 Reference Documentation 》中 Qt 5.3 -> Qt GUI -> C++ Classes -> QCursor 。这里就不多讲。

总结下 Qt 中自定义鼠标样式的3个方法:

1.Qt::CursorShape

Qt 自带了一套鼠标样式,你可以选择在某个事件中调用某个特定的样式。提供的 CursorShape 有下表:
QtCursorShape
代码:

Continue Reading…

在 Visual Studio 2013 上编译 Boost 1.56

visual studio 2013 logo

相信做 C++ 开发的同学肯定多多少少都接触过 Boost库(Boost C++ Libraries)。

什么是 Boost库?

Boost 是一组扩充 C++ 功能性的经过同行评审(Peer-reviewed)且开放源代码程序库。大多数的函数为了能够以开放源代码、封闭项目的方式运作,而授权于Boost软件许可协议(Boost Software License)之下。许多Boost的开发人员是来自C++标准委员会,而部份的Boost库成为C++的TR1标准之一。为了要确保库的效率与弹性,Boost广泛的使用模板(template)功能。而它是针对各式领域的C++用户与应用领域(Application Domain)上,包含的库类从像smart_ptr 库这种类通用库,到像是文件系统的操作系统抽象层,甚至能够利用Boost来开发额外的库或是给高级的C++用户利用,像是MPL。

在 Visual Studio 2013 上编译 Boost 1.56

在 Windows 平台上,我们要使用 Boost 需要先编译,使用不同的编译器还需要分别编译。在 Visual Studio 2013 (msvc12) 上编译 Boost 确实不是很容易,特别是对于很少接触到这些拓展库的新手来说。
Continue Reading…