Нужно обновлять UI в отдельном потоке (pthreads). Для этого нужно передать коллбек функцию (метод класса MainWindow) в
pthread_create
. Я не могу передать метод нестатического класса как коллбек. Можно сделать метод статическим, но тогда не знаю как из него обратиться к нестатическому ui. Задача вроде простая, обновить текст в label, но не могу понять как засунуть коллбек и обновить интерфейс из одной функции.
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
коллбек
void *MainWindow::status(void *a) {
ui->start->setEnabled(false);
while(true) {
ui->progressBar->setValue(progress); // из статического метода до ui не достучаться
ui->done->setText(QString::number(done));
ui->fail->setText(QString::number(fail));
Sleep(500);
}
}