Для передачи данных по tcp\ip я использую отдельный поток, который я определяю отдельным классом. Чтобы отображать состояние использую отдельный VBox с ProgressBar - ом. В процедуре run() пишу:
...
while((ReadDataLength =Fl_OpenFile ->readBlock(cThreadBuffer,LENGTH_PACKET)) >0)
{
SumLength +=ReadDataLength;
Sct_ConnectSocket ->writeBlock(cThreadBuffer,ReadDataLength);
...
PBr_SendFileProgress ->setProgress(SumLength);
}
VBx_SendFileProgress ->hide();
...
Так вот эта программа приодически зависает, диалог с ProgressBar - ом не закрывается и вообще работает медленней чем хочется. И конечно если убрать строку "PBr_SendFileProgress ->setProgress(SumLength);" все работает зашибись как.
Вопрос: Что за хня?
Thread и ProgressBar в QT
Модератор: Модераторы разделов
-
TwisT
- Сообщения: 265
- ОС: Debian
Re: Thread и ProgressBar в QT
Кинь весь исходник, посидим посмотрим подумаем может быть
ЗЫ: Какая версия Qt?
ЗЫ: Какая версия Qt?
Linux user #432536.