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
代码:

2.使用自定义图片作为鼠标样式

首先准备一张大小合适的png图片,如:
cursor
代码:

3.使用 X PixMap 格式图片作为鼠标样式

X PixMap (XPM)是一种基于ASCII编码的图像格式,在X Window系统中的应用十分广泛。XPM文件经常用于创建图标位图文件,支持“transparent color”功能。XPM文件格式特点是文件格式简单,可以被任何文本编辑器创建和修改,另外通过#include指令可以将XPM格式的图形数据导入C语言源文件,这对程序员而言有时是十分方便的。
也就是说,这是一个可以通过文本来编辑的图片格式,虽然可能图片样式没有其他的来得漂亮,但必须承认在没有图片编辑软件的情况下这也是一种很好的方法。
代码:

怎样获得xpm格式的图片?Linux下我们可以通过命令转换图片格式,如:

xpm 文件的格式其实很简单,例如上图的鼠标样式对应的 xpm 文件应该是:

如无注明,均为原创。转载请注明: 转载自MITGAI`S THINKING
本文链接地址: Qt 自定义鼠标样式 QCursor

知识共享许可协议本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。

如果本文对您生活或工作产生了积极影响,那我非常高兴。
如果您愿意为文章的内容或想法提供支持,欢迎点击下边的捐赠按钮,资助作者创作更多高价值高品质的内容。
支付宝捐赠
anyShare分享到:

发表回复