Qt4 - 相同的连接为不同的progressBar,emit为每个进行相同的值

时间:2013-08-08 14:00:50

标签: qt4 progress-bar

我有多个QProgressBar*我连接如下:

void MainWindow::newProgressBar()
{
    QProgressBar *progressBar = new QProgressBar();

    QObject::connect(this, SIGNAL(changeProgressBarValue(int)), progressBar, SLOT(setValue(int)));

    emit changeProgressBarValue((_table->item(newRow, 3)->text().toDouble() - _table->item(newRow, 2)->text().toDouble()) / _table->item(newRow, 3)->text().toDouble() * 100);
}

问题在于,如果我emit changeProgressBarValue(52),则所有progressBars都将取值52。

我不知道会有多少进度条。它可能是零或一百。

如何为每个人制作一个特定的“监听/连接”? 我不想为每个人创造一个信号,必须有一个更简单的方法。

1 个答案:

答案 0 :(得分:1)

由于你有一个特定的QProgressBar,你想设置它的值,你可以简单地调用:

progressBar->setValue(52)