изменить метки горизонтальной полосой прокрутки - PullRequest
0 голосов
/ 05 октября 2018

У меня есть горизонтальная полоса прокрутки, которая изменяет значение (число) двух меток при ее прокрутке.

Bul, я также хочу, чтобы при прокрутке она изменяла изображение в виджете стека.

одно изображение, когда значение становится равным 0-40, другое, когда оно составляет 41-70, а последнее - 71-100.

Единственное, чего я добиваюсь - это изменить изображение, нопо одному.Кто-нибудь может мне помочь?Я дам вам код этого:

wave++;
if(wave==1)
{
     ui->VolumeSWWave_5->setCurrentIndex(1);
}

if(wave>1)
{
 wave=0;
     ui->VolumeSWWave_5->setCurrentIndex(0);
}

{
    return;
    for (int i = 0; i < 10; ++i)
        qDebug("%1", i);
}

if(wave<1)
{
    wave=0;
    ui->VolumeSWWave_5->setCurrentIndex(2);
}

{
    return;
    for (int i = 0; i > 10; ++i)
        qDebug("%1", i);
}

1 Ответ

0 голосов
/ 05 октября 2018

QAbstractSlider имеет сигнал ( actionTriggered (int) ), если вы «поймаете» этот сигнал, то вы можете в блоке if else решить, какая картинка отображается:

void MainWindow::on_horizontalScrollBar_sliderMoved(int position)
{
    qDebug() << "position: " << position;
    if (position <= 40)
    {
        qDebug() << "set at index 1";
    }
    else if (position > 40 && position <= 71)
    {
        qDebug() << "set at index 2";
    }
    else
    {
        qDebug() << "set at index 3";
    }
}
...