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

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

Страниц: 1 [2]   Вниз
  Печать  
Автор Тема: Вопрос по примеру QThread из офф. документации  (Прочитано 13569 раз)
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #15 : Июнь 08, 2016, 14:33 »

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

Раньше (в Qt 4) сигналы были protected. В 5ке добавили новый синтаксис коннекта. Чтобы он работал, пришлось сделать сигналы public (иначе, компилятор выдаёт ошибку несовместимости сигнатур). С++ говно, да.
Записан
Bepec
Гость
« Ответ #16 : Июнь 08, 2016, 16:15 »

И в 4 и в 5 можно было вызывать сигналы других классов, соединять их и так далее и тому подобное.
В каком они разделе находились - public или private неважно, ведь соединение создавал сам объект Веселый
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #17 : Июнь 08, 2016, 16:24 »

И в 4 можно было вызывать сигналы других классов

Напрямую - нельзя. #define signals protected
Записан
Bepec
Гость
« Ответ #18 : Июнь 08, 2016, 17:30 »

Это уже частность. создай свой сигнал и свяжи с любым приватным. Вуаля. Сделай invokeMethod и вызывай любой сигнал. Тадам. Но вот прямо вызвать - да, нельзя Веселый Но это уже фикция.
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #19 : Июнь 08, 2016, 17:55 »

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

#define private public
и можно вызывать всё что угодно, да...
Записан
Bepec
Гость
« Ответ #20 : Июнь 08, 2016, 21:50 »

То, что вы предложили - хак. То, что предложил я - публичная часть работы сигнал слотовой системы. Ну да и ладно Улыбающийся
Записан
Страниц: 1 [2]   Вверх
  Печать  
 
Перейти в:  


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