powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Поделитесь соображениями......... (две независимые SubForm, передать событие)
23 сообщений из 23, страница 1 из 1
Поделитесь соображениями......... (две независимые SubForm, передать событие)
    #32858897
Slava A. Odievich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
........ как решить следующую задачу:

Есть Form в которую вложены две независимые SubForm.

В одной из SubForm происходит некое событие.

Необходимо передать результат этого события в Form и в соседнюю SubForm.

Что еще можно придумать кроме как устроить в Form прерывание по таймеру, и отслеживать что там изменилось в подчиненных формах?
...
Рейтинг: 0 / 0
Поделитесь соображениями......... (две независимые SubForm, передать событие)
    #32858914
Dmitry Biryukov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а что мешает во вторую subform передать объект "первая subform" и там уже отслеживать все события ?
...
Рейтинг: 0 / 0
Поделитесь соображениями......... (две независимые SubForm, передать событие)
    #32858928
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если событие конкретное, то вешай на это событие соответствующи код.
Если "некое", тобишь, надо полагать, любое, то см. мессаг выше.
---
А лучше всего задавать вопрос, исходя из конкретного примера
...
Рейтинг: 0 / 0
Поделитесь соображениями......... (две независимые SubForm, передать событие)
    #32858938
Slava A. Odievich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Обе SubForm отображают один и тот же набор данных.

Но одна - ленточная и в там предусмотрено применение фильтров.

А вторая - некое графическое отображение объекта. Нужно чтобы она немедленно отобразила то, что быберется из базы данных после фильтрации.

Вложить одну в другую не получается. Ленточная форма несовместима с чем либо еще.
...
Рейтинг: 0 / 0
Поделитесь соображениями......... (две независимые SubForm, передать событие)
    #32858950
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
То есть формочки твои все же зависимые .
После задания фильтра генерируй SQL строку и пихай ее в рекордсурс зависимой сабформы, ну и Requery не забываем :)
...
Рейтинг: 0 / 0
Поделитесь соображениями......... (две независимые SubForm, передать событие)
    #32858951
Slava A. Odievich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
..... естественно отслеживается неким кодом.

Но из из этой SubForm я не могу сделать что то похожее на Form.RecordSource = <SQL запрос>
...
Рейтинг: 0 / 0
Поделитесь соображениями......... (две независимые SubForm, передать событие)
    #32858956
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Slava A. Odievich..... естественно отслеживается неким кодом.

Но из из этой SubForm я не могу сделать что то похожее на Form.RecordSource = <SQL запрос>
Почему?
...
Рейтинг: 0 / 0
Поделитесь соображениями......... (две независимые SubForm, передать событие)
    #32858963
Slava A. Odievich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
..... из одной SubForm я не вижу вторую. В смысле ее имени, которое видно из главной Form
...
Рейтинг: 0 / 0
Поделитесь соображениями......... (две независимые SubForm, передать событие)
    #32858970
Slava A. Odievich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
..... По отношении друг к другу - независимы
...
Рейтинг: 0 / 0
Поделитесь соображениями......... (две независимые SubForm, передать событие)
    #32858982
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Slava A. Odievich..... из одной SubForm я не вижу вторую. В смысле ее имени, которое видно из главной Form
Что значит "не вижу имени"? Зачем его видеть?
----
Ладно. Хорошо.
А применить тот же фильтр на 2-ю сабформу ты не можешь?
Фильтр применяется видимо по нажатии ну кнопку вот и работай с этим событием
...
Рейтинг: 0 / 0
Поделитесь соображениями......... (две независимые SubForm, передать событие)
    #32859004
Slava A. Odievich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
так в том то и фишка, что кнопка в одной SubForm, и событие обрабатывается именно в ней.

вторая это событие не видит, да и главная его так же не видит.

Я пока не вижу ничего более умного, как в главной делать прерывание по таймеру, и смотреть не произошло ли что либо интересное в подчиненной. Если произошло - то сделать для второй подчиненной <SF_Name>.RecordSource = <Sql_String>
...
Рейтинг: 0 / 0
Поделитесь соображениями......... (две независимые SubForm, передать событие)
    #32859013
sasha_1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вариант 1.
из любой формы (и сабформы)
forms!Главная!КонтролСабформы1.Form дает ссылку на первую сабформу
forms!Главная!КонтролСабформы2.Form соответственно на вторую

вариант 2.
из сабформы 2
Parent!КонтролСабформы1.Form дает ссылку на первую сабформу
и наоборот.

//есесьно названия форм и контролов должны быть твои
...
Рейтинг: 0 / 0
Поделитесь соображениями......... (две независимые SubForm, передать событие)
    #32859019
Фотография Программист-Любитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А почему не сделать просто Set Me.subForm2.Recordset = Me.subForm2.Recordset ?

И пусть у каждой будет свой вид и свой набор полей.
...
Рейтинг: 0 / 0
Поделитесь соображениями......... (две независимые SubForm, передать событие)
    #32859020
sasha_1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
соответственно в форме, в которой произошло событие на обработчике этого события и делаешь все необходимые действия со всеми 3 формами.
(доступ к ним см. моё предыдущ сообщение)
...
Рейтинг: 0 / 0
Поделитесь соображениями......... (две независимые SubForm, передать событие)
    #32859051
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Slava A. Odievichтак в том то и фишка, что кнопка в одной SubForm, и событие обрабатывается именно в ней.

вторая это событие не видит, да и главная его так же не видит.

Я пока не вижу ничего более умного, как в главной делать прерывание по таймеру, и смотреть не произошло ли что либо интересное в подчиненной. Если произошло - то сделать для второй подчиненной <SF_Name>.RecordSource = <Sql_String>
Тут какое-то глубокое непонимание друг друга.
---
Дак это чудесно, что событие обрабатывается именно в "ней".
С событием разобрались.
Теперь, что же все таки не ясно? Без слов "видит" и "не видит"
...
Рейтинг: 0 / 0
Поделитесь соображениями......... (две независимые SubForm, передать событие)
    #32859098
Фотография Программист-Любитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Предложенный мной вариант синхронизирует любые фильтрации, переходы по записям и др., а занимает всего одну строку кода.

Я так часто синхронизирую самостоятельные формы: табличную форму и форму в виде бланка с большим количеством деталей.
...
Рейтинг: 0 / 0
Поделитесь соображениями......... (две независимые SubForm, передать событие)
    #32859175
Slava A. Odievich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Me.SF02.Recordset у меня что то не получается.

Ругается Metthod or data member not found
...
Рейтинг: 0 / 0
Поделитесь соображениями......... (две независимые SubForm, передать событие)
    #32859365
Dmitry Biryukov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
F1 - форма, которая генерит события
SF1 - это её имя в главной форме
F2 - форма, которая обрабатывает события от F1

в коде F2:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Private WithEvents m_F1 as Form
Private Sub Form_Load()
    Set m_F1 = Me.Parent.SF1.Form
    m_F1.OnFilter="[Event Procedure]"
End Sub
Private Sub m_F1_Filter()
    msgbox "Работает!"
End Sub
вот и усё
...
Рейтинг: 0 / 0
Поделитесь соображениями......... (две независимые SubForm, передать событие)
    #32859441
Фотография Программист-Любитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор
что то не получается.


Точную цитату кода, в котором "что то не получается" покажите.

В коде главной формы пишем (в событии Load):
Set Ме.<имя второй субформы>.Form.Recodset = Ме.<имя первой субформы>.Form.Recodset

Должно работать. Формы будут как приклеенные.
...
Рейтинг: 0 / 0
Поделитесь соображениями......... (две независимые SubForm, передать событие)
    #32859581
Slava A. Odievich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...... я собрал все советы и все получилось:-))
...
Рейтинг: 0 / 0
Поделитесь соображениями......... (две независимые SubForm, передать событие)
    #32859591
Dmitry Biryukov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
товарищ Slava A. Odievich видимо совсем новичек в VBA и давать ему коды с опечатками - чревато, ибо будет скопировано в VBA Editor, а здесь появится ещё один пост "не работает!"

Slava A. OdievichMe.SF02.Recordset у меня что то не получаетсяздесь забыли Me.SF02. Form .Recordset
Программист-ЛюбительSet Ме.<имя второй субформы>.Form.Recodset = Ме.<имя первой субформы>.Form.Recodset
здесь Reco r dset неправильно написали
...
Рейтинг: 0 / 0
Поделитесь соображениями......... (две независимые SubForm, передать событие)
    #32859798
Фотография Программист-Любитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дык в форумной форме печатаю... :(
...
Рейтинг: 0 / 0
Поделитесь соображениями......... (две независимые SubForm, передать событие)
    #32859815
Slava A. Odievich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
:-)))

Именно когда я сам догадался вставить в середку .Form. все и заработало......

В любом случае я по полной воспользовался подсказками.
...
Рейтинг: 0 / 0
23 сообщений из 23, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Поделитесь соображениями......... (две независимые SubForm, передать событие)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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