Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как передать в открываемую форму ссылку на другую форму / 4 сообщений из 4, страница 1 из 1
04.02.2003, 11:20
    #32100759
RiliR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как передать в открываемую форму ссылку на другую форму
Может кто знает как?
Через OpenArgs не получается - тип не тот :(
А если передавать имя, то как по имени создать объект типа Form? Через AllForms тоже что-то не выходит.
Заранее спасибо за советы.
...
Рейтинг: 0 / 0
04.02.2003, 11:58
    #32100800
Savik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как передать в открываемую форму ссылку на другую форму
Если необходимо передать ССЫЛКУ, значит фрма уже существует, или как?
Если существует, то
1. Через переменную типа form с областью действия Public
2. Через OpenArgs передать имя и обращаться к ней Forms![Имя]
...
Рейтинг: 0 / 0
04.02.2003, 12:54
    #32100876
ДиД
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как передать в открываемую форму ссылку на другую форму
>1. если ссылок много, то создавать некоторое количество переменных с запасом невыгодно.
>2. создавать одну функцию, конечно, можно, но это сработает, если нужно вернуть значение на одно поле, а если в форме несколько подформ, то вариант уже не прокатит

я делал через коллекцию.
объявил в общем модуле

Public colChoose As New Collection

а в форме добавляю в коллекцию

Dim ctl As Control
On Error GoTo Err_DblClick
Set ctl = [Счет]
colChoose.Add ctl, "1111"
DoCmd.OpenForm "Счет", , , , , , "ИмяФормы;1111"

Exit_Err_DblClick:
Exit Sub

Err_DblClick:
If Err = 457 Then Resume Next
MsgBox Err.Description
Resume Exit_Err_DblClick

а потом вызываю из коллекции

Dim strFormName As String
Dim strChoose As String
If Len(Me.Parent.OpenArgs) > 0 Then
Me.Dirty = False
strFormName = Split(Me.Parent.OpenArgs, ";")(0)
strChoose = Split(Me.Parent.OpenArgs, ";")(1)
If IsLoaded(strFormName) Then
colChoose.Item(strChoose) = [Код документа]
colChoose.Item(strChoose).Requery
colChoose.Remove strChoose
End If
DoCmd.Close acForm, Me.Parent.Name
End If

Хотя это мой вариант несколько сложноват, зато есть универсальность.
...
Рейтинг: 0 / 0
04.02.2003, 13:02
    #32100887
RiliR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как передать в открываемую форму ссылку на другую форму
2 All
Спасибо за советы.
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как передать в открываемую форму ссылку на другую форму / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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