Qt 怎么样设置鼠标的形状

例如在QWidget的派生类中,可以定义一个函数来根据需要设置鼠标形状

void LadderWidget::updateCursor(SHAPE_TYPE shapeType)
{
   switch(shapeType)
    {
    case SHAPE_NORMAL:
        pCursor = new QCursor(Qt::ArrowCursor);
        break;
    case SHAPE_RD:
    //后面两个参数是指定鼠标真正的“生效点”在图片的位置,不指定默认值为(-1,-1),即在图片中心位置
        pCursor = new QCursor(QPixmap(":/images/RD_mouse.png"), -1, 12);
        break;
    case SHAPE_RDN:
        pCursor = new QCursor(QPixmap(":/images/RDN_mouse.png"), -1, 12);
        break;
    case SHAPE_WR:
        pCursor = new QCursor(QPixmap(":/images/WR_mouse.png"), -1, 8);
        break;
    case SHAPE_WRN:
        pCursor = new QCursor(QPixmap(":/images/WRN_mouse.png"), -1, 8);
        break;
    case SHAPE_HLINE:
        pCursor = new QCursor(QPixmap(":/images/HLine_mouse.png"), -1, 3);
        break;
    case SHAPE_VLINE:
        pCursor = new QCursor(QPixmap(":/images/VLine_mouse.png"), 3, -1);
        break;
    case SHAPE_FNC:
        pCursor = new QCursor(QPixmap(":/images/FNC_mouse.png"), -1, 14);
        break;
    case SHAPE_ERASER:
        pCursor = new QCursor(QPixmap(":/images/eraser_mouse.png"), 13, 10);
        break;
    default:
        shapeType = SHAPE_NORMAL;
        pCursor = new QCursor(Qt::ArrowCursor);
        break;
    }
    //QWidget使用setCursor()函数
    this->setCursor(*pCursor);
}   

注意使用滚动框及派生类时设置鼠标指针可能需要使用viewport()->setCursor(),待测试

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值