powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / как получить ссылку на control, вызвавший событие %) (при том что он не активный)
15 сообщений из 15, страница 1 из 1
как получить ссылку на control, вызвавший событие %) (при том что он не активный)
    #32609151
?
...
Рейтинг: 0 / 0
как получить ссылку на control, вызвавший событие %) (при том что он не активный)
    #32609152
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Бред
Человек, задавший этот вопрос - не понимает, что такое события
На вопрос можно не отвечать, топик я удалю.
...
Рейтинг: 0 / 0
как получить ссылку на control, вызвавший событие %) (при том что он не активный)
    #32609158
лох, не могли бы вы все таки пояснить - чего я не понимаю.
есть надпись - по MouseMove хочется ее подчеркнуть - надписей таких много -единственный вариант - с перебором - всех контролов и проверкой координат?
...
Рейтинг: 0 / 0
как получить ссылку на control, вызвавший событие %) (при том что он не активный)
    #32609168
лох, может быть вас покоробило слово "вызвавший" - ок, элемент, которому принадлежит событие.
...
Рейтинг: 0 / 0
как получить ссылку на control, вызвавший событие %) (при том что он не активный)
    #32609193
Фотография Deminik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>>> есть надпись - по MouseMove хочется ее подчеркнуть

MouseMove, наверное и принадлежит этой надписи... правильно ?
...
Рейтинг: 0 / 0
как получить ссылку на control, вызвавший событие %) (при том что он не активный)
    #32609210
Фотография Shuhard
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
____Дмитрий___лох, не могли бы вы все таки пояснить - чего я не понимаю.
есть надпись - по MouseMove хочется ее подчеркнуть - надписей таких много -единственный вариант - с перебором - всех контролов и проверкой координат?
для "полётов" мышью других вариантов науке не известно
(либо один обработчик+координаты
либо каждой надписе по личному обработчику
либо каждой надписе при вызове общего обработчика имя контрола)
...
Рейтинг: 0 / 0
как получить ссылку на control, вызвавший событие %) (при том что он не активный)
    #32609815
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
еще специфическое решение
над контрлами прозрачная надпись у которой контролируется движение мыши
при загрузке формы создается массив в котором каждому значению горизонтальных координат соответствует имя контрола
...
Рейтинг: 0 / 0
как получить ссылку на control, вызвавший событие %) (при том что он не активный)
    #32609968
ячсм
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
лох, не могли бы вы все таки пояснить - чего я не понимаю.
Если вы перехватили событие - то вы уже знаете, от какого именно объекта оно пришло. Так что изначальный вопрос смысла не имеет.

Разумеется, это не относится к случаю, когда один и тот же обработчик используется для обработки одного и того же события от нескольких однотипных объектов. Во-первых средствами VB такую обработку сделать не получится. Во-вторых сами объекты и события (например ADODB.Recordset), спроектирование под такую обработку событий, обычно передают в обработчик события ссылку на объект-источник. Объекты аксеса таким умом и сообразительностью - не отличаются.

Сама среда аксеса позволяет это как-то обойти (назначить с качестве обработчика для кучи визуальных контролов какой-нибудь один макрос, либо какую-либо рукописную функцию), но таким образом все равно не получится новой функциональности, изначально отсутствующей в самих объектах, генерирующих событие. Поэтому - приходится использовать либо активный контрол, либо координаты мыши, либо расположение звезд на небе.
...
Рейтинг: 0 / 0
как получить ссылку на control, вызвавший событие %) (при том что он не активный)
    #32609973
ячсм
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
З.Ы. А чего это я злой как собака позавчера был?
...
Рейтинг: 0 / 0
как получить ссылку на control, вызвавший событие %) (при том что он не активный)
    #32610000
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
ячсмРазумеется, это не относится к случаю, когда один и тот же обработчик используется для обработки одного и того же события от нескольких однотипных объектов. Во-первых средствами VB такую обработку сделать не получится.
Получится. Не использовать один и тот же обработчик. Хотя бы передать ему параметр.
...
Рейтинг: 0 / 0
как получить ссылку на control, вызвавший событие %) (при том что он не активный)
    #32610039
ячсм
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Саныч, ты меня удивляешь
Я сказал, что средствами VB не получится использовать один обработчик - ты ответил что получится, причем НЕ использовать один обработчик
Ну да... отрицание отрицания :))
...
Рейтинг: 0 / 0
как получить ссылку на control, вызвавший событие %) (при том что он не активный)
    #32610171
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Обработчик бывает 3 видов.

1. [Event Procedure]. Проблем нет, в каждом событии ясно, к какому контролу оно относится.

2. =функция(). Обработчик один на всех, но есть возможность различать контролы при помощи параметра.

3. макрос. Обработчик один на всех, и нет возможности различать контролы.
...
Рейтинг: 0 / 0
как получить ссылку на control, вызвавший событие %) (при том что он не активный)
    #32610202
ячсм
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
СанычОбработчик бывает 3 видов.
Это как раз то, про что я сказал
яСама среда аксеса позволяет это как-то обойти
При каноническом использовании ActiveX никаких таких трех видов обработчиков не бывает. Это уже аксесовсая отсебятина.

Саныч2. =функция(). Обработчик один на всех, но есть возможность различать контролы при помощи параметра.
Ничем принципиально не отличается от "[Event Procedure]" c вызовом какой хочешь функции с каким хочешь параметром.
Правда, можно использовать синтаксис "=функция(Form.ActiveControl)" для передачи ссылки на активный контрол. Тоже блин аксесовская отсебятина, но только из-за этого можно вынести отдельным пунктом.
В рассматриваемом случае - не прокатывает (по причине отсутствия активного контрола). Остаются координаты мышки или расположение звезд
...
Рейтинг: 0 / 0
как получить ссылку на control, вызвавший событие %) (при том что он не активный)
    #32610258
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Пытаюсь телепятить, что у автора вопроса одна из ситуаций 2 или 3.
...
Рейтинг: 0 / 0
как получить ссылку на control, вызвавший событие %) (при том что он не активный)
    #32614666
>Если вы перехватили событие - то вы уже знаете, от какого именно объекта >оно пришло. Так что изначальный вопрос смысла не имеет.
>Разумеется, это не относится к случаю, когда один и тот же обработчик >используется для обработки одного и того же события от нескольких >однотипных объектов.

т.е. все-таки имеет Ж) ? и ответ тоже, насколько я понял, имеется - нет. видимо разработчики тоже рассматривали вопрос как изначальный ж)
а вообще, по-моему, удобное решение - однотипные префиксы на контролы - и программная расстановка обработчиков.
а что касается подсветки ссылок - так вообще непонятно как-это в 2002ом аксесе они до сих пор для этого специальной кнопки не придумали..
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / как получить ссылку на control, вызвавший событие %) (при том что он не активный)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]