在Windows平台开发的软件,经常会有这样的需求,当鼠标移动到某个组件或者某个区域的时候,鼠标需要变成特定的形状,现在介绍如何实现鼠标的形状变化。
一、利用Qt自带的资源修改鼠标形状
1、确定坐标范围,在坐标(0 ~ width,0 ~ height)范围内改变鼠标形状
QPoint mousepos = e->pos();
int width = 1000;
int height = 1000;
if( ((mousepos.rx() > 0) && (mousepos.rx() < width))
&& ((mousepos.ry() > 0) && (mousepos.ry() < height)) )
{
this->setCursor(Qt::CrossCursor); /* 鼠标为十字形 */
}
- setCursor()方法用来改变鼠标的形状,指定不同的参数,会显示不同的形状,具体请参考以下值。