С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 25.12.2012
Сообщений: 12
1

Как перехватывать и обрабатывать события в динамически созданных классах?

05.02.2013, 15:07. Показов 649. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Приветствую!
Есть много разных классов и много динамически созданных экземпляров каждого из них. И вот в программе происходит какое-то событие (допустим клик мышью) и надо, чтобы всем экземплярам всех классов отправилось сообщение, несущее x,y клика, а те перехватили его и обработали.
Как такую задачу корректней реализовать? Есть ли в c++ какой-нибудь готовый механизм, или придется вручную писать что-то типа такого:
C++
1
2
3
4
5
6
7
void sendMessageClick(int x, inty){
int i;
for(i=0;i<n1;i++){myclass1[i].myfunction1(x,y);}
for(i=0;i<n2;i++){myclass2[i].myfunction2(x,y);}
...
for(i=0;i<nn;i++){myclassN[i].myfunctionN(x,y);}
}
Заранее благодарен.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.02.2013, 15:07
Ответы с готовыми решениями:

Как перехватывать события JavaScript при работе Internet Explorer (на С++)
Помогите !!!

Семафоры для динамически созданных потоков
Помогите разобраться, я динамически создаю поток, который имеет общие переменные с головным...

Освобождение памяти динамически созданных объектов
Подскажите, есть к примеру три класса: Class1, Class2, Class3. В Class2 имеется метод, в котором...

Запись динамически созданных объектов в файл
Всем привет. Хочу спросить, пока не наделал глупостей. Есть два класса. //первый класс,...

2
594 / 532 / 76
Регистрация: 22.03.2011
Сообщений: 1,585
05.02.2013, 15:21 2
в чистых плюсах разумеется такого нет, в надстройках вроде Qt можно обрабатывать события как душе угодно... конкретно для каждого класса по своему
0
576 / 559 / 47
Регистрация: 16.12.2011
Сообщений: 1,389
05.02.2013, 17:04 3
создать абстрактный класс с методом
C++
1
virtual void visit(int x, int y) = 0;
унаследовать от него все заинтересованные классы
а потом в случае очередного события запускать только один цикл, а не несколько

Добавлено через 1 минуту
если событий много и передаваемые параметры разные, то можно сделать свой класс event и передавать его в метод visit
2
05.02.2013, 17:04
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.02.2013, 17:04
Помогаю со студенческими работами здесь

[WPF] Как обрабатывать события динамически созданных, например, кнопок?
У меня есть DataGrid, и через код по нажатию кнопки &quot;добавить&quot; я добавляю одну кнопку в каждую...

События динамически созданных объектов
В программе динамически создаются вкладки с TWebBrowser. Если я просто кидаю на форму...

События в динамически созданных контроллах
Здравствуйте, у меня проблема. Не могу понять как сделать обработчик для динамических контролов....

События динамически созданных компонентов
В проекте динамически создаются компоненты TShape нажатием мыши на форме. Для компоненты необходимо...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru