Я переопределяю событие рисования 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.
Спасибо