我想根据底层小部件中的缩放级别(例如,RGBA = 200,200,200,128),用半透明的光标,一个简单的填充圆形,更改光标光标。 / p>
Qt可以实现这一切吗?如果没有,它是Qt或底层库的限制吗?您是否有关于如何通过其他方式完成此操作的建议,例如,隐藏光标并在光标位置覆盖透明像素图(尽管速度较慢)? TIA
答案 0 :(得分:1)
QCursor可以采用支持alpha通道的QPixmap。所以我不明白为什么不能这样做。
答案 1 :(得分:1)
我只是想出了一个属于我自己的项目。我在相关小部件的构造函数中使用此代码完成了它:
m_LPixmap = new QPixmap(32,32);
m_LPixmap->fill(Qt::transparent); // Otherwise you get a black background :(
QPainter painter(m_LPixmap);
QColor red(255,0,0,128);
painter.setPen(Qt::NoPen); // Otherwise you get an thin black border
painter.setBrush(red);
painter.drawEllipse(0,0,32,32);
m_Cursor = QCursor(*m_LPixmap);
setCursor(m_Cursor);