![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Форумчанин
Регистрация: 03.01.2011
Сообщений: 233
|
![]()
Доброго времени суток. Я тут помышляю написать виджетов для форм ввода данных.
Например TSomeWidget - класс отвечающий за несколько компонентами на форме и обрабатывающий их события. И вот хочу спросить совета как лучше обрабатывать события. Базовый вариант конечно написать в TSomeWidget всех обработчиков для мыши, клавиатуры, фокуса, активации, перетаскивания и прочих. Но меня привлекает идея о том, чтобы поставить 1 обработчик событий мыши и 1 клавиатуры. Допустим какой-нить TAbstractWidget принимает набор компонентов и устанавливает им два типа событий OnMouseEvent, OnKeyboardEevent. А все наследуемые от него TSomeWidgtet просто их переопределяют. Понятно, что можно определить все события, а из них вызывать два заветных эвента, но может через какой-нить WndProc? Я назначил TEdit свой WindowProc - он вылетел в эксепшн "A call to an OS function failed". ![]() Как быть, посоветуйте.
пыжок
|
![]() |
![]() |
![]() |
#2 |
Лис
Старожил
Регистрация: 18.09.2015
Сообщений: 2,409
|
![]()
Разделяй и властей.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал . |
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 03.01.2011
Сообщений: 233
|
![]()
А если всё же попробовать как-то объединять.
Можно как-то слушать сообщения TControl'ов не наследуясь от них? Допустим у меня только WndProc на форме и я слушаю все события приходящие на форму предназначенные и для формы и для компонентов на ней. Можно из TMessage вычислить компонент которому пойдет событие? Обновление: (Быстрый гуглинг говорит, что нельзя)
пыжок
Последний раз редактировалось maloun; 21.08.2020 в 14:47. |
![]() |
![]() |
![]() |
#4 | |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,542
|
![]() Цитата:
программа — запись алгоритма на языке понятном транслятору
|
|
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 03.01.2011
Сообщений: 233
|
![]()
Кстати слушать TWinControl.WindowProc можно так:
Код:
пыжок
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Обработчик событий. VC++ MFC | Girei | Помощь студентам | 0 | 22.04.2016 23:58 |
Обработчик событий | strangegirlXX | JavaScript, Ajax | 7 | 06.04.2013 00:38 |
Обработчик событий | kostolomeo | Помощь студентам | 1 | 22.05.2012 07:49 |
обработчик событий | IIaJIbI4 | БД в Delphi | 2 | 07.06.2011 15:09 |
обработчик событий | ben95 | Помощь студентам | 5 | 28.01.2008 17:46 |