Russian Qt Forum
Май 06, 2024, 06:05 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: [РЕШЕНО] QTimer::singleShot  (Прочитано 3438 раз)
unkeep
Гость
« : Ноябрь 04, 2015, 14:39 »

Код
C++ (Qt)
 
connect(timer, SIGNAL(timeout()), this, SLOT(someSlot()));
connect(timer, SIGNAL(timeout()), timer, SLOT(deleteLater()));
 

гарантирован ли вызов слота someSlot() до удаления объекта timer?

или может быть кто-нибудь знает, как проще по аналогии с QTimer::singleShot вызвать через промежуток времени любую функцию(не задекларированную как слот), в том числе и лямбду.
« Последнее редактирование: Ноябрь 04, 2015, 15:24 от unkeep » Записан
Racheengel
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2679


Я работал с дискетам 5.25 :(


Просмотр профиля
« Ответ #1 : Ноябрь 04, 2015, 15:18 »

гарантирован ли вызов слота someSlot() до удаления объекта timer?

Да. Из ассистанта:

If a signal is connected to several slots, the slots are activated in the same order in which the connections were made, when the signal is emitted.

или может быть кто-нибудь знает, как проще по аналогии с QTimer::singleShot вызвать через промежуток времени любую функцию(не задекларированную как слот), в том числе и лямбду.

QtConcurrent::run()
Записан

What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.

COVID не волк, в лес не уйдёт
unkeep
Гость
« Ответ #2 : Ноябрь 04, 2015, 15:24 »

спасибо. Всё просто оказывается)
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.117 секунд. Запросов: 23.