在QT中可以用QProgressBar或着QProgressDialog來實現進度條。
QProgressBar的使用
首先在designer中拖一個按鈕和進度條部件,按下面初始化
//補充:下面兩句寫在MainWindow的構造函數里進行初始化
ui->progressBar->setRange(0,50000-1);
ui->progressBar->setValue(0);
按鈕的事件處理:
void MainWindow::on_pushButton_clicked()
{
for(int i=0;i<50000;i++)
{
for(int j=0;j<20000;j++);
ui->progressBar->setValue(i);
}
}
這樣就可以顯示進度條了,自動那個計算百分比,並顯示
QProgressDialog的使用方法
而用QProcessDialog也是類似的,只不過這是以對話框形式顯示;並且它還提供了一個取消按鈕,用來取消操作。QProcessDialog會自動那個計算百分比,並顯示。
void MainWindow::on_pushButton_clicked()
{
QProgressDialog process(this);
process.setLabelText(tr("processing..."));
process.setRange(0,50000);
process.setModal(true);
process.setCancelButtonText(tr("cancel"));
for(int i=0;i<50000;i++)
{
for(int j=0;j<20000;j++);
process.setValue(i);
if(process.wasCanceled())
break;
}
}

轉自:http://blog.sina.com.cn/s/blog_6151770b0100ndle.html
可用才轉!