W sumie nie wiem czy dobrze określiłem problem w temacie. Mam okno pomiarowe, które w trakcie pracy prezentuje się mniej więcej tak:
http://i56.tinypic.com/24uwdch.jpg
W trakcie pomiaru, czyli wypełniania QTableWidget nie mogę kliknąć żadnego buttona, nawet counter u góry nie startuje mimo że rozpoczęcie jego pracy jest wywoływane przed pomiarem. Gdy próbuję kliknąć buttona okno wygląda tak:
http://i55.tinypic.com/2m5i45v.jpg
Nie dostaję jakiegoś krytyka, po prostu okno się blokuje na dobre i dostaję do niego dostęp gdy pomiar się skończy, wtedy też wyświetlane są wszystkie wartości pomiaru. Pętla pomiarowa wygląda tak:
counter->Start();
ui->measEndButton->setEnabled(true);
int row=0;
for(int i=1;i<=10;i++)
{
if(!device->PrepareRequest(i,500)){
break;
}
device->SendRequest();
QString text=device->GetData();
table->InsertValue(row,0,text);
++row;
if(measBreak){
break;
}
this->repaint();
}
ui->measEndButton->setEnabled(false);
Gdzie 'table' jest typu dziedziczącego z QTableWidget. Dane z 'device' przychodzą z opóźnieniem i na początku poszczególne komórki nie chciały się wyświetlić, dopiero po wyjściu z pętli pojawiały się wartości. Dodanie repaint() pomogło ale podejrzewam że ta metoda coś tu jednak psuje. 'counter' też zacznie odliczać dopiero gdy program wyjdzie z pętli.