0
私は2つのボタンを持っています:再生と一時停止。そしてスライダーバー。QEventLoopを使って関数を呼び出す
イベントが発行されるまで、または一時停止ボタンが押されるまで、スライドの位置を変更するにはプレーヤーを押します。このため私はQEventLoopを使用しています。
void MainWindow::slider()
{
for(min_value = ui->horizontalSlide->value(); min_value <= max_value; min_value++){
//msleep(2000);
ui->horizontalSlide->setValue(min_value);
}
}
void MainWindow::on_playButton_clicked()
{
QEventLoop loop2;
QObject::connect(this, SIGNAL(quitLoop()), &loop2... ?);
loop2.exec();
}
void MainWindow::on_pauseButton_clicked()
{
emit quitLoop();
}
しかし、私はon_playButton_clicked機能にQEventLoopを接続するかどうかはわかりません....どれ例またはアドバイスはありますか?
ありがとうございました!
なぜありませんシンプルなQTimerは、スライダーと信号を開始し、もう1つはタイマーを停止するように更新しますか? – Marco
@Marcoスライダが変化すると、関数が呼び出されて画面に描画されます。したがって、スライダは図面が終了したときにのみ位置を変更できます。 QTimerを使ってこれを行うことはできますか? –
QTimer信号を最初の描画関数に接続することができます。それが終わったら、スライダを動かす信号を出します。 – Marco