首页| 论坛| 消息

标题:QT4进度条的问题 [结贴]
作者:duancp
日期:2009-08-21 15:25
内容:

请问我在QT4里使用进度条,程序如下,问题是程序运行过程中进度条没有变化,只是在最后变成了100%,请问是什么原因?下面的程序是我简化了的,实际程序里面,每次调用setValue的时间间隔都足够的长,因此应该不会是程序来不及反应的问题。
ResultDlg.progressBar->setRange(0,10);
ResultDlg.progressBar->setMinimum(0);
ResultDlg.progressBar->setMaximum(100);
int ADCDlg::GetData()
{    
    ResultDlg.progressBar->setRange(0,10);
    for (i=0;isetValue(i);    
                          sleep(1);
    }
    return 0;
}


#1 [shiroki 08-22 12:02]
控件的绘制更新要进到事件循环才能进行。 你这样写代码只有函数结束才能进到事件循环,所以中间过程都不会有刷新。 可以试试在循环里加 qApp->processEvents();
#2 [duancp 08-22 14:39]
谢谢,果然是这个原因

回复 发表
主题 版块