Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
 Программно менять вид подчиненной формы  [new]
AlexRom
Member

Откуда: СПб
Сообщений: 108
Есть главная форма "Форма1" в ней подчиненная форма "Форма2"
Как по выключателю "Выкл1" (расположенному в форме "Форма1") менять режим отображения подчиненной "Форма2" с табличной на ленточную?
15 ноя 06, 16:13    [3404886]     Ответить | Цитировать Сообщить модератору
 Re: Программно менять вид подчиненной формы  [new]
BULK INSERT
Member

Откуда: Ленинград
Сообщений: 4615
AlexRom
Есть главная форма "Форма1"


кажется нужно будет переключать подчиненную в DesignView, чтобы изменить свойство...
в принципе можно нарисовать две формы - у одной DefaultView Datasheet у другой Continuous

и менять по кнопке SourceObject элемента основной формы подставляя то одну, то другую форму когда нужно
15 ноя 06, 16:31    [3405030]     Ответить | Цитировать Сообщить модератору
 Re: Программно менять вид подчиненной формы  [new]
mds_world
Member

Откуда: Ташкент
Сообщений: 27548
Если свойство Допустимые режимы (ViewsAllowed) принято Все, то вы можете переключаться между режимами, например так:
Forms![].Form.ViewsAllowed = X
где Х
=0 - простая форма
=1 - ленточная
=2 - табличная
15 ноя 06, 16:32    [3405041]     Ответить | Цитировать Сообщить модератору
 Re: Программно менять вид подчиненной формы  [new]
mds_world
Member

Откуда: Ташкент
Сообщений: 27548
Не дописал. Отвлекли
Forms![Ваша форма].Form.ViewsAllowed = X
15 ноя 06, 16:33    [3405058]     Ответить | Цитировать Сообщить модератору
 Re: Программно менять вид подчиненной формы  [new]
osmor
Member

Откуда: hiprog.com
Сообщений: 1173
Forms![].Form.ViewsAllowed -позволяет переключать пользователю, но не переключает
посмотрите в сторону
RunCommand acCmdSubformFormView
RunCommand acCmdSubformDatasheetView
RunCommand acCmdSubformDatasheet
15 ноя 06, 16:59    [3405328]     Ответить | Цитировать Сообщить модератору
 Re: Программно менять вид подчиненной формы  [new]
AlexRom
Member

Откуда: СПб
Сообщений: 108
BULK INSERT
в принципе можно нарисовать две подформы - у одной DefaultView Datasheet у другой Continuous

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

mds_world
Не дописал. Отвлекли
Forms![Ваша форма].Form.ViewsAllowed = X

Я понял из этого, что [Ваша форма] - это "Форма2".
Попробовал - увы.
15 ноя 06, 17:01    [3405341]     Ответить | Цитировать Сообщить модератору
 Re: Программно менять вид подчиненной формы  [new]
osmor
Member

Откуда: hiprog.com
Сообщений: 1173
забыл добавить до использования
runcommand c указанными выше константами нудно передать фокус подформе
me.[форма2].setforus
runcommand ....
15 ноя 06, 17:04    [3405370]     Ответить | Цитировать Сообщить модератору
 Re: Программно менять вид подчиненной формы  [new]
AlexRom
Member

Откуда: СПб
Сообщений: 108
Спасибо osmor
Всё в кайф.
Такая конструкция работает как часы.
Private Sub Выкл7_AfterUpdate()
    If (Forms![Форма1].Controls![Выкл7].Value = 0) Then
        Me.[Форма2].SetFocus
        RunCommand acCmdSubformFormView
    End If
    If (Forms![Форма1].Controls![Выкл7].Value = -1) Then
        Me.[Форма2].SetFocus
        RunCommand acCmdSubformDatasheetView
    End If
End Sub
15 ноя 06, 17:13    [3405456]     Ответить | Цитировать Сообщить модератору
 Re: Программно менять вид подчиненной формы  [new]
BULK INSERT
Member

Откуда: Ленинград
Сообщений: 4615
AlexRom
Всё в кайф.


как вы умудряетесь такой горбатый код писать... б-р-р-р-р...

ЗЫ

осмору спасибо, конечно,
15 ноя 06, 17:23    [3405541]     Ответить | Цитировать Сообщить модератору
 Re: Программно менять вид подчиненной формы  [new]
AlexRom
Member

Откуда: СПб
Сообщений: 108
BULK INSERT

корявость поправить не проблема.
оптимизирую.
главное задачка решилась
15 ноя 06, 17:55    [3405764]     Ответить | Цитировать Сообщить модератору
 Re: Программно менять вид подчиненной формы  [new]
BULK INSERT
Member

Откуда: Ленинград
Сообщений: 4615
AlexRom
BULK INSERT

корявость поправить не проблема.
оптимизирую.
главное задачка решилась


по существу согласен извините за коммент
15 ноя 06, 18:03    [3405804]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Access Ответить