Qt Dial направление

Помогите пожалуйста, новичок в Qt и не знаю как написать следующее: В Dial есть направление (предположим по часовой стрелке= 1, против= -1, а если находится в состояние покоя = 0). Мне нужно определить- куда пойдет направление (к примеру, min число 0, max число 99. Ползунок шагает вперед на 50 шагов по часой стрелке, потом возвращается на 25 против часовой стрелки, и остается там в состоянии покоя). Может есть какой-нибудь метод, который определяет направление ползунка? Заранее благодарю


Ответы (1 шт):

Автор решения: Alexander Chernin

Вам нужно сделать так:

class MainWindow : public QMainWindow {
    Q_OBJECT
public:
    MainWindow(...):... {
        //...
        // Инициализируем базовое/предыдущее значение
        prevDialValue = ui->dial->value();
         
        // получаем новое значение и сравниваем с предыдущим
        connect(ui->dial, &QDial::valueChanged, [&](int currentValue) {
            if (currentValue > prevDialValue) {
                // Идем "вправо"                
            } else {
                // Идем "влево"                
            }
            prevDialValue = currentValue;
        });
    }
 
private:
    int prevDialValue;
}
→ Ссылка