powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как узнать открыта форма или нет?
12 сообщений из 12, страница 1 из 1
Как узнать открыта форма или нет?
    #32317455
Ingvarwolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Собственно сабж...
Добавлю только, что мне надо узнать открыта форма или нет для неактивной формы. Хотя, признаться, не знаю как сделать это для активной формы.
Спасибо.
...
Рейтинг: 0 / 0
Как узнать открыта форма или нет?
    #32317465
Фотография PA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
CurrentProject.AllForms( "Calendar" ).IsLoaded
...
Рейтинг: 0 / 0
Как узнать открыта форма или нет?
    #32317467
Hummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Function IsLoadedFrm(strFormName As String) As Boolean
   Const conObjStateClosed =  0 
   Const conDesignView =  0 
   If SysCmd(acSysCmdGetObjectState, acForm, strFormName) <> conObjStateClosed Then
       If Forms(strFormName).CurrentView <> conDesignView Then
           IsLoadedFrm= True
       End If
   End If
End Function

Если в дизайне открыта - то будет FALSE.
...
Рейтинг: 0 / 0
Как узнать открыта форма или нет?
    #32317536
Ingvarwolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PA писал:
CurrentProject.AllForms("Calendar").IsLoaded

Это не работает в А97

2 Hummer
Спасибо, работает
...
Рейтинг: 0 / 0
Как узнать открыта форма или нет?
    #32317539
Bukovka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dim frm As Form
For Each frm In Forms
If (frm.NAME = "имя формы") Then 'форма открыта
End If
Next frm
...
Рейтинг: 0 / 0
Как узнать открыта форма или нет?
    #32317598
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще проще
Код: plaintext
1.
2.
3.
4.
5.
Function IsLoadedFrm(strFormName As String) As Boolean
On Error Resume Next
    Dim strTmp As String
    strTmp = Forms(strFormName).Name
    IsLoadedFrm = Err.Number =  0 
End Function
...
Рейтинг: 0 / 0
Как узнать открыта форма или нет?
    #32410955
graffiti
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А если нужно проверить открытие подчиненной формы из другой подчиненной?
...
Рейтинг: 0 / 0
Как узнать открыта форма или нет?
    #32411046
Lamo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ты имеешь виду открытие формы содержащей подчиненную???
...
Рейтинг: 0 / 0
Как узнать открыта форма или нет?
    #32752837
Фотография natalitvinenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
туточки посмотрите
http://books.kulichki.net/data/access/as1/Glava%2013/Index23.htm
...
Рейтинг: 0 / 0
Как узнать открыта форма или нет?
    #32752877
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лох ПозорныйЕще проще
Код: plaintext
1.
2.
3.
4.
5.
Function IsLoadedFrm(strFormName As String) As Boolean
On Error Resume Next
    Dim strTmp As String
    strTmp = Forms(strFormName).Name
    IsLoadedFrm = Err.Number =  0 
End Function


И еще короче:

Function IsLoadedFrm(strFormName As String) As Boolean
On Error GoTo Err_IsLoadedFrm
Dim fm As Form
Set fm = Forms(strFormName)

Err_IsLoadedFrm:
End Function

И в таком духе еще множество функций типа ExistsTable, ExistsReport, ExistsProperty ...
...
Рейтинг: 0 / 0
Как узнать открыта форма или нет?
    #32752882
Hummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Rivkin Dmitry
Мда - и это всегда у вас будет выдавать FALSE:)
...
Рейтинг: 0 / 0
Как узнать открыта форма или нет?
    #32752992
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hummer2 Rivkin Dmitry
Мда - и это всегда у вас будет выдавать FALSE:)
Точно! Забыл одну строчку! И в результате - оплошал, не короче выходит!
Исправляюсь:

Код: plaintext
1.
2.
3.
4.
5.
6.
Function IsLoadedFrm(strFormName As String) As Boolean
On Error GoTo Err_IsLoadedFrm
Dim fm As Form
Set fm = Forms(strFormName)
IsLoadedFrm = True
Err_IsLoadedFrm:
End Function
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как узнать открыта форма или нет?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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