Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Детский вопрос: Как отловить событие, когда форма становится видимой на экране, но не активной? / 18 сообщений из 18, страница 1 из 1
07.10.2004, 17:30:45
    #32728550
Bagin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Детский вопрос: Как отловить событие, когда форма становится видимой на экране, но не активной?
На главной форме есть вкладки, где расположены уже открытые и загруженные подформы. Как отловить событие, когда форма становится видимой на экране, но не активной?
События AfterRender и BeforeRender не помогают
...
Рейтинг: 0 / 0
07.10.2004, 17:32:33
    #32728558
Темный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Детский вопрос: Как отловить событие, когда форма становится видимой на экране, но не активной?
Т.е. тебе нужно отловить событие активизации вкладки?
...
Рейтинг: 0 / 0
07.10.2004, 17:46:59
    #32728599
Bagin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Детский вопрос: Как отловить событие, когда форма становится видимой на экране, но не активной?
ТемныйТ.е. тебе нужно отловить событие активизации вкладки?Нет, именно появления изображения подформы. Эта подформа используется во многих местах, и не обязательно, что подформа появившись на экране будет находится на активном элементе.
...
Рейтинг: 0 / 0
07.10.2004, 17:47:08
    #32728602
Галка
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Детский вопрос: Как отловить событие, когда форма становится видимой на экране, но не активной?
ТемныйТ.е. тебе нужно отловить событие активизации вкладки?

по-моему это и есть открытие
...
Рейтинг: 0 / 0
07.10.2004, 17:48:25
    #32728607
Галка
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Детский вопрос: Как отловить событие, когда форма становится видимой на экране, но не активной?
Bagin ТемныйТ.е. тебе нужно отловить событие активизации вкладки?Нет, именно появления изображения подформы. Эта подформа используется во многих местах, и не обязательно, что подформа появившись на экране будет находится на активном элементе.

значит на неё надо навесьти фокус
...
Рейтинг: 0 / 0
07.10.2004, 17:59:23
    #32728633
Bagin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Детский вопрос: Как отловить событие, когда форма становится видимой на экране, но не активной?
Галка ТемныйТ.е. тебе нужно отловить событие активизации вкладки?

по-моему это и есть открытие

В хелпе написано:
Событие Открытие не возникает при активизации уже открытой формы, например, при переходе в эту форму из другого окна Microsoft Access или при переводе открытой формы в верхний слой с помощью макрокоманды ОткрытьФорму (OpenForm)
...
Рейтинг: 0 / 0
07.10.2004, 22:39:40
    #32728965
Serge Gavrilov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Детский вопрос: Как отловить событие, когда форма становится видимой на экране, но не активной?
А чем не устраивает событие Change вкладки?
...
Рейтинг: 0 / 0
08.10.2004, 09:21:49
    #32729148
Daf
Daf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Детский вопрос: Как отловить событие, когда форма становится видимой на экране, но не активной?
А форма становиться видна сама по себе или после Visible=true в каком то коде? ...
...
Рейтинг: 0 / 0
08.10.2004, 09:56:01
    #32729207
Bagin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Детский вопрос: Как отловить событие, когда форма становится видимой на экране, но не активной?
Serge GavrilovА чем не устраивает событие Change вкладки?Эта подформа используется во многих других формах, а на некоторых даже несколько раз (всего больше в 20 местах). Есть два варианта:
1) попытаться отловить событие в самой подформе и прописать один раз в ее модуле
2) отлавливать событие во всех главных формах, т.е. прописать более 20 раз это событие, где будет вызов соответствующей функции.
Хочу попробовть сделать первый вариант
...
Рейтинг: 0 / 0
08.10.2004, 09:57:02
    #32729209
Bagin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Детский вопрос: Как отловить событие, когда форма становится видимой на экране, но не активной?
DafА форма становиться видна сама по себе или после Visible=true в каком то коде? ...Сама по себе.
...
Рейтинг: 0 / 0
08.10.2004, 10:21:21
    #32729251
paparome
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Детский вопрос: Как отловить событие, когда форма становится видимой на экране, но не активной?
Bagin Serge GavrilovА чем не устраивает событие Change вкладки?Эта подформа используется во многих других формах, а на некоторых даже несколько раз (всего больше в 20 местах). Есть два варианта:
1) попытаться отловить событие в самой подформе и прописать один раз в ее модуле
2) отлавливать событие во всех главных формах, т.е. прописать более 20 раз это событие, где будет вызов соответствующей функции.
Хочу попробовть сделать первый вариант
Предлагаю делать по человечески (смесь первого и второго вариантов)
Код пишете один раз в форме (типа Public Sub MySuperSub)
А в нужных 20 местах просто обращаетесь к вашей процедуре, а не копируете эти действия 20 раз :)
(типа Call Me.Sub1.MySuperSub)
...
Рейтинг: 0 / 0
08.10.2004, 10:35:46
    #32729305
Bagin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Детский вопрос: Как отловить событие, когда форма становится видимой на экране, но не активной?
paparomeА в нужных 20 местах просто обращаетесь к вашей процедуреВот этого я и хотел избежать, и если и дальше вставлять эту форму в другие, то чтобы не надо было заботиться о том, чтобы запускать необходимую процедуру.
...
Рейтинг: 0 / 0
08.10.2004, 11:23:13
    #32729474
Детский вопрос: Как отловить событие, когда форма становится видимой на экране, но не активной?
могабыть таймер? И в нем:

If me.Visble = true Then

или (с флажком предыдущего опроса)^

Static bMeVisible As Boolean
if bMeVisible <> me.Visble Then
bMeVisible = me.Visble

должно работать (вот только таймеры - вестчь противная в отладке прочего кода)
...
Рейтинг: 0 / 0
08.10.2004, 11:28:00
    #32729499
paparome
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Детский вопрос: Как отловить событие, когда форма становится видимой на экране, но не активной?
Bagin paparomeА в нужных 20 местах просто обращаетесь к вашей процедуреВот этого я и хотел избежать, и если и дальше вставлять эту форму в другие, то чтобы не надо было заботиться о том, чтобы запускать необходимую процедуру.
Э-э-э - лень?
Вы когда комбик вставляете - вы же не предполагаете, что он сам вам все свойства выставит так как вам хочется и подключит нужные события?
Нет?

А почему тогда вас смущает одно событие для каждой подформы с одной строкой в нем?
...
Рейтинг: 0 / 0
08.10.2004, 11:30:20
    #32729510
Bagin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Детский вопрос: Как отловить событие, когда форма становится видимой на экране, но не активной?
а таймер не помогет?могабыть таймер? И в нем:

If me.Visble = true Then

или (с флажком предыдущего опроса)^

Static bMeVisible As Boolean
if bMeVisible <> me.Visble Then
bMeVisible = me.Visble

должно работать (вот только таймеры - вестчь противная в отладке прочего кода)Тоже вариант, но почему-то я не люблю связываться с таймером, систему будет лишний раз грузить
...
Рейтинг: 0 / 0
08.10.2004, 11:38:10
    #32729536
Bagin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Детский вопрос: Как отловить событие, когда форма становится видимой на экране, но не активной?
paparome
Э-э-э - лень?
Вы когда комбик вставляете - вы же не предполагаете, что он сам вам все свойства выставит так как вам хочется и подключит нужные события?
Нет?
А почему тогда вас смущает одно событие для каждой подформы с одной строкой в нем? Когда я вставляю подформу, то в тэге контрола этой подформы прописываю параметры, и ВСЕ действия подформа выполняет сама (подключается к необходимым данным, подгоняет автоматом свой размер под заданный в конструкторе контрол и т.д.). И вот тут появляется исключение. Очень уж заманчиво реализовать отлов этого события в самой подформе.
...
Рейтинг: 0 / 0
08.10.2004, 11:56:21
    #32729604
А если
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Детский вопрос: Как отловить событие, когда форма становится видимой на экране, но не активной?
так-так так...
?А если:
В классе делаете что-нить (скорее всего - просто контрол) виз_эвентс
и отрабатываете Change этого контрола
при открытии формы (OnOpen) передаете в новый (AS NEW) экземпляр этого класса контрол парента, который содержит вас (т.е. саму форму; - как найти контрол, содержащий вызвавший экземпляр формы тут уже обсуждалось). И тогда весь код, похоже, разместится в классе + в самой форме.
...
Рейтинг: 0 / 0
08.10.2004, 12:25:11
    #32729686
Bagin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Детский вопрос: Как отловить событие, когда форма становится видимой на экране, но не активной?
А еслитак-так так...
?А если:
В классе делаете что-нить (скорее всего - просто контрол) виз_эвентс
и отрабатываете Change этого контрола
при открытии формы (OnOpen) передаете в новый (AS NEW) экземпляр этого класса контрол парента, который содержит вас (т.е. саму форму; - как найти контрол, содержащий вызвавший экземпляр формы тут уже обсуждалось). И тогда весь код, похоже, разместится в классе + в самой форме.
Ни разу не связывался с классами. Попробую, если получиться, то выложу, если нет, наверно таймер сделаю
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Детский вопрос: Как отловить событие, когда форма становится видимой на экране, но не активной? / 18 сообщений из 18, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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