我正在覆盖 QDial 的绘画事件并显示图像以使其焕然一新。现在我想根据当前值旋转图像。我正在使用以下代码进行操作。
m_PixmapFound=m_Qpixmap.load(fileName);
if (m_PixmapFound)
{
QMatrix rm;
rm.rotate(value()*5);
m_Qpixmap = m_Qpixmap.transformed(QPixmap::trueMatrix(rm,this->width(),this->height()));
m_Qpixmap = m_Qpixmap.scaled(QSize(163,163),Qt::KeepAspectRatio,Qt::SmoothTransformation);
QPainter myPainter(&m_Qpixmap);
}
图像确实会旋转,但它会在不同的刻度盘值上缩放到不同的大小。因此,当我旋转 QDial 时,表盘会变大和变小。
请让我知道如何解决此问题。
有一种方法是获取每个 QDial 值的图像并根据旋钮值更新图像,但我不想这样做,因为旋钮范围是 0-1000。
谢谢