powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Еще вопрос по открытию нескольких экз. формы
9 сообщений из 9, страница 1 из 1
Еще вопрос по открытию нескольких экз. формы
    #32095036
AlexEburg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Создаем новый экземпляр формы.

Тут все понятно:

Dim Frm As Form
Set Frm = New Form_МояФорма
Frm.Visible = True

А если имя формы передается через переменную типа String - как тогда?


Dim Name As Sring
Dim Frm As Form

Name = "МояФорма"

Set Frm = New ?????????????
...
Рейтинг: 0 / 0
Еще вопрос по открытию нескольких экз. формы
    #32095076
IgorM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никак имхо
...
Рейтинг: 0 / 0
Еще вопрос по открытию нескольких экз. формы
    #32095144
AlexEburg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Опять похоже уперся я.


Необязательно использовать указанную конструкцию. Может есть какие нибудь варианты обхода в решении этой задачи:

Во внешний модуль передается имя формы, а он создает ее новый эксземпляр.
...
Рейтинг: 0 / 0
Еще вопрос по открытию нескольких экз. формы
    #32095255
Вакшуль Сергей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
обходным вариантом, по-моему может быть только один, примерно такой:

Function ttt(strИмя As String) As Form
Select Case strИмя
Case "ИмяФормы1"
Set ttt = New Form_ИмяФормы1
Case "ИмяФормы2"
Set ttt = New Form_ИмяФормы2
Case "ИмяФормы3"
Set ttt = New Form_ИмяФормы3
End Select
End Function
...
Рейтинг: 0 / 0
Еще вопрос по открытию нескольких экз. формы
    #32095302
AlexEburg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Благодарю.
Действительно вариант пока единственный. Придется все возможные формы добавлять в функцию.
...
Рейтинг: 0 / 0
Еще вопрос по открытию нескольких экз. формы
    #32095317
Фотография AlexJuice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй программно создавать модуль с нужным текстом и фиксированным именем процедуры, а потом запускать эту процедуру на исполнение (уже из подготовленной заранее постоянной процедуры). Не забыть удалить временную после использования!
...
Рейтинг: 0 / 0
Еще вопрос по открытию нескольких экз. формы
    #32095719
AlexEburg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AlexJuice
Идею понял так: если Access не принимает имя класса собранное в функции из переменных, то создаем во время работы функцию с уже готовым именем и подсовываем ее Access. Правильно?

Кстати, эта "небольшая проблемка" - огромное препятсвтвие для создания для проекта цивилизованного мультиформенного интерфейса.

А если так:
При старте проекта создавать Collection из всех форм базы с индексом - имя формы, при закрытии - убиваем. Во время работы - для создания нового экземпляра формы обращаться к этой Collection, вытягивая из нее форму по ее имени.

Извиняюсь, что дальше только мысли не пробовал. Бред это или нет (слабовато я с классами и их коллекциями еще разбираюсь)? Можно ли по этому варианту что-то сказать?
...
Рейтинг: 0 / 0
Еще вопрос по открытию нескольких экз. формы
    #32095833
Фотография Savik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Такая коллекция есть - Forms. Но если ВСЕ формы у тебя уже созданы, нахрена огород городить?
...
Рейтинг: 0 / 0
Еще вопрос по открытию нескольких экз. формы
    #32096399
Фотография AlexJuice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да честно говоря, я тоже так далеко не копал (просто нужды не было).
Поэтому просто ответил по конкретной задаче (или, точнее, по ее части).
Идея была понята правильно.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Еще вопрос по открытию нескольких экз. формы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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