Когда я создаю слоты по имени с таким синтаксисом:
on_<widgetname>_clicked();
Если я хочу отобразить определенный виджет Внутри этой функции он не будет отображаться, пока не достигнет конца функции.
То есть, когда я создаю следующую функцию:
void MyWindow::on_myWidget_clicked()
{
// the stackedWidget is composed of:
// page_1 with myWidget
// page_2
ui->stackedWidget->setCurrentWidget(ui->page_2);
waitSomeTime();
}
с
void MyWindow::waitSomeTime()
{
QThread t;
t.sleep(2); // Wait 2 seconds to see which line is going to be executed first.
}
Когда код запускается, сначала проходят 2 секунды и только затем страница_2
Почему строка
ui->stackedWidget->setCurrentWidget(ui->page_2);
не выполняется первой?