LEADERSOFT.ru
Разработка на заказ программ и сайтов
Разработка
Заказ программы
Прайс-лист
Техническое задание
Проектная документация
Наши клиенты
Реклама и продвижение
Магазин
Перейти в магазин
Новинки магазина
Бизнес программы
Финансовый учет
Документооборот
Исходные коды
Интернет решения
Обучение
Перейти в раздел
Форумы по разработке
Примеры на Access
Рассылка статей
Магазин IT литературы
Блог
Все статьи
Microsoft Access (VBA)
Microsoft Access (Проекты)
Microsoft ASP.NET
Сервисы Google
Технические задания
Новости IT технологий
Сервисы
Форумы разработчика
Контакты
О компании
Регистрация на сайте
Подписка на новости по Email
Сообщество Google+
Подписка subscribe.ru
Новости в формате Атом
Загрузить
Загрузить каталог программ
Форумы по информационным технологиям
Начало
Forums
Регистрация
|
Вход
Forums
Обновлено ::
07 февраля 2005
Форумы
Поиск
Список форумов
Программирование
Microsoft Access. Файлы mdb и accdb
Тема: Как опред...
Тема: Как определить какая форма является родительской
15.06.2007 21:07:53
Luckiy
15 сообщения
Тема: Как определить какая форма является родительской
Разные формы (пример: документ Спецификация и документ Инвойс) запускают одну и ту же форму (Материалы). Работа сводиться к тому что производиться подбор элементов из формы Материалы в оба документа. Вопрос: Как определить из какой формы была открыта форма Материалы. Всем спасибо кто поможет.
P.S. Общий раздел по формам
Автор:
Lucky
от 12.01.2004 0:06:26
Источник ...
15.06.2007 21:07:53
ТимурРахимов
16 сообщения
RE: Как определить какая форма является родительской
Похоже, после того, как мы программно откроем форму, из этой формы узнать, в какой форме находился код, которым её открыли, уже невозможно. Выход видится в том, чтобы сразу после того, как откроем форму, следующими же строчками кода передать только что открытой форме нужную информацию (имя исходной формы в вашем случае), или воспользоваться параметром OpenArgs метода OpenForm.
Мне известны четыре способа сделать это:
1) Передать имя исходной формы через параметр OpenArgs (7-й параметр) метода OpenForm объекта DoCmd:
strThisFormName=Me.Name
DoCmd.OpenForm "Открываемая форма", , , , , , strThisFormName
Переданное значение потом можно извлечь в открытой форме из свойства OpenArgs:
strInitialForm=Me.OpenArgs
2) Заранее создать в вызываемой форме нужное свойство (например, InitialFormName), и заполнить его сразу же после открытия формы:
strNewFormName="Открываемая форма"
DoCmd.OpenForm strNewFormName
Application.Forms(strNewFormName).InitialFormName=Me.Name
3) Разновидность предыдущего (несколько проще технически). Вместо свойства в открываемой форме заранее объявляем метод с одним строковым параметром, и передаём через него имя вызывающей формы:
strNewFormName="Открываемая форма"
DoCmd.OpenForm strNewFormName
Application.Forms(strNewFormName).PassInitialFormName(Me.Name)
4) Заранее создаём в открываемой форме несвязанное поле (например, с именем InitialFormName) и делаем его скрытым (InitialFormName.Visible=False), чтобы в него записать имя вызывающей формы. Тогда соответствующий код в вызывающей форме будет выглядеть так:
strNewFormName="Открываемая форма"
DoCmd.OpenForm strNewFormName
Application.Forms(strNewFormName).Controls(InitialFormName).Value=Me.Name
P.S. Общий раздел по формам
Автор:
Тимур Рахимов
от 12.01.2004 2:06:16
Источник ...
Страница 1 из 1
Программирование
Microsoft Access. Файлы mdb и accdb
Тема: Как опред...
Одноуровневый вид
Древовидная структура
Самый старый из новых
Новейший из старых
Поиск
Список форумов
Начало
|
Forums
Copyright 2002-2016 Leadersoft.ru
::
Leadersoft
::
Соглашение о безопасности
::
Условия использования