Название: [Qt-3.3.4] Вопрос о событиях Отправлено: Kosh от Май 08, 2007, 15:48 в главном окне есть очень много виджетов, в том числе и вложенных друг в друга. Как послать событие, не конкретному виджету, а пустить через всех, чтобы, кому нужно получили и обработали его?
Название: [Qt-3.3.4] Вопрос о событиях Отправлено: pakulo от Май 09, 2007, 12:25 В принципе можно было бы получить указатели на все виджеты и через цикл послать событие. Но каждый виджет имеет свои события, поэтому не выйдет так. Только если у тебя виджеты не одного типа. Или можно проверять тип виджет и вызывать нужно событие. А так лучше послать сигнал.
Название: [Qt-3.3.4] Вопрос о событиях Отправлено: Kosh от Май 10, 2007, 09:57 Цитата: "pakulo" А так лучше послать сигнал. Для этого виджеты, посылающие сигнал надо делать глобальными, чтобы коннектиться к ним, тоже по-дурацки выглядит. Разве что, завести глобальный объект передатчик. Одни виджеты будут к нему коннектиться, чтобы передать сигнал, а другие, чтобы принять сигнал. Интересно, кто-нибуть иакими извратами занимался? Название: [Qt-3.3.4] Вопрос о событиях Отправлено: Alex03 от Май 10, 2007, 11:20 Можно по аналогии с рассылкой LanguageChange сделать.
Код: void QApplication::installTranslator( QTranslator * mf ) Код: bool QWidget::event( QEvent *e ) Название: [Qt-3.3.4] Вопрос о событиях Отправлено: Kosh от Май 10, 2007, 15:18 Alex03, спасибо, я посмотрю этот вариант. А пока неплохо обошлась маленьким глобальным объектиком.
|