crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> signals - slots
eldar85
  опции профиля:
сообщение 26.9.2010, 0:07
Сообщение #1


программист
***

Группа: Участник
Сообщений: 283
Регистрация: 2.1.2010
Из: Москва
Пользователь №: 1348

Спасибо сказали: 0 раз(а)




Репутация:   0  


может вопрос покажется глупым, но хотелось бы узнать у знающих людей возможно ли сделать так:

к примеру есть функция запуска других функций, по крайней мере мне нужно сделать такую.
Этот пример само собой не работает как мне нужно, вот и хочу узнать возможно ли как то по другому это сделать подобным образом.

в конструкторе соединения
connect(this, SIGNAL(funk1_signal()), this, SLOT(funk1());
....

void MainWindow::start()
{
emit funk1_signal();
emit funk2_signal();
emit funk3_signal();
}

void MainWindow::funk1()
{
    //долгое действие
}

void MainWindow::funk2()
{
   //долгое действие
}

void MainWindow::funk3()
{
   //долгое действие
}


но вот беда первый сигнал сработал а остальные срабатывают лишь тогда когда доработает первая функция, а мне нужно чтобы сразу все три были запущенны и функция start() вообще закончила свою работу а работали те функции которые запустились. реально ли такое?

Сообщение отредактировал eldar85 - 26.9.2010, 0:13
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
eldar85
  опции профиля:
сообщение 26.9.2010, 10:21
Сообщение #2


программист
***

Группа: Участник
Сообщений: 283
Регистрация: 2.1.2010
Из: Москва
Пользователь №: 1348

Спасибо сказали: 0 раз(а)




Репутация:   0  


да многопоточное приложение я и пишу, дело не в многопоточности, класс для потоков занят другим делом, хотел чтобы основной тоже несколько действий выполнял чтобы еще кучу классов не создавать, пришлось три класса QThread создавать, потому что каждый должен выполнять совершено разные задачи, а у QThread можно пользоваться как нормальной функцией только run(); )))) решил проблему, но не компактно)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 29.4.2024, 3:04