У меня есть глобальная переменная, которую я установил в файле cpp в своем проекте qt. Я хочу проверять эту переменную каждые 100 мс в течение 5 секунд, и если переменная равна 0 через 5 секунд, я хочу создать окно сообщения. Вот пример моего кода:
БД.cpp:
if(case){
g_clickedObj.readFlag = 1 ;
}
else{
g_clickedObj.readFlag = 0 ;
}
главное окно.cpp
this->tmr = new QTimer();
connect(this->tmr,SIGNAL(timeout()),this,SLOT(callSearchMachine()));
tmr->start(5000);
g_clickedObj.readFlag == 1 ;
-- Это не может быть код, так как вы используете==
вместо=
. - person PaulMcKenzie   schedule 18.09.2020QTimer
для периодической проверки ее значения. Вместо этого установка переменной может выдать сигнал, и слот (подключенный к этому сигналу) может запустить таймер на 5 секунд, пока не появится окно сообщения. Если бы переменная могла/была бы установлена в другом потоке, это была бы другая история... SO: Как изменить виджеты Qt в потоках WINAPI ? - person Scheff's Cat   schedule 18.09.2020