Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Установки флажка
 
 автор: Волшебник   (31.10.2009 в 23:17)   личное сообщение
 
 

Вопрос. Как сделать чтобы при установки флажка с экрана исчезала кнопка, а при снятии - появлялась?

  Ответить  
 
 автор: Lukas   (31.10.2009 в 23:25)   личное сообщение
 
 

Если под экраном имелась в виду форма, и
флажок и кнопка на одной форме, то можно так:

Private Sub flg1_AfterUpdate()
    Me.btn1.Visible =Not Me.flg1
End Sub

  Ответить  
 
 автор: Волшебник   (31.10.2009 в 23:38)   личное сообщение
 
 

Спасибо Lukas! Всё работает.

  Ответить  
 
 автор: Волшебник   (01.11.2009 в 00:02)   личное сообщение
 
 

А можно сделать то же самое, только флажок на одной форме, а на другой кнопка,я попробовал добавить Me.[Forms]![Форма2]![Кнопка1].Visible = Not Me.Флажок1 не получается

  Ответить  
 
 автор: snipe   (01.11.2009 в 05:08)   личное сообщение
 
 

если вторая форма подчиненная
то вот так
Me![Форма2].Form![Кнопка1].Visible = Not Me.Флажок1

  Ответить  
 
 автор: Волшебник   (01.11.2009 в 05:16)   личное сообщение
 
 

не Вторая самостоятельная

  Ответить  
 
 автор: snipe   (01.11.2009 в 05:26)   личное сообщение
 
 

ну тогда там надо много сделать
1.
на событие флажка после обновления повешать
if me!флажок=true then
forms!форма2!кнопка.visible=true
else
forms!форма2!кнопка.visible=false
end if
2 этот же код повешать на событие Открытие - формы2

вот тут возникает маленькая проблемка
1 если форма1 не будет открыта и вы попытаетесь открыть форму2 то возникнет ошибка соответственно надо добавить обработку ошибки на этот случай
2 если форма2 не будет открыта и Вы попытаетесь поставить флажок в форме1 то тоже возникнет ошибка соотетственно ее тоже надо отловить

  Ответить  
 
 автор: snipe   (01.11.2009 в 05:30)   личное сообщение
 
 

с кодом наврал не много
вот так правильно
if forms!форма1!флажок=true then

  Ответить  
 
 автор: snipe   (01.11.2009 в 06:12)   личное сообщение
 
 

А еще лучше код вешать не на открытие формы2 а на событие Текущая запись формы2

  Ответить  
 
 автор: Волшебник   (01.11.2009 в 06:33)   личное сообщение
 
 

Сейчас проверил ВСЁ работает, Спасибо!

  Ответить  
 
 автор: Волшебник   (01.11.2009 в 06:35)   личное сообщение
 
 

А галочку сохранить можно ,чтоб при открытии она уже стояла?

  Ответить  
 
 автор: snipe   (01.11.2009 в 06:45)   личное сообщение
 
 

ну тут 2 варианта
1 флажок связан с таблицей (тогда для каждой записи будут как бы свои настройки)
2 установить значение флажка по умолчанию в True или False
или обрабатывать какое то событие формы1 (открытие или текущая запись)
и устанавливать значение флажка

  Ответить  
 
 автор: Волшебник   (01.11.2009 в 06:55)   личное сообщение
 
 

Сделал Второй вариант True

вот тут возникает маленькая проблемка
1 если форма1 не будет открыта и вы попытаетесь открыть форму2 то возникнет ошибка соответственно надо добавить обработку ошибки на этот случай
2 если форма2 не будет открыта и Вы попытаетесь поставить флажок в форме1 то тоже возникнет ошибка соотетственно ее тоже надо отловить

А с этим ошибок нет всё хорошо спасибо ещё раз

  Ответить  
 
 автор: Lukas   (01.11.2009 в 19:43)   личное сообщение
 
 

Для разных форм можно в форме2:
1. подписаться на события флажка в форме1, где и управлять видимостью кнопки,
2. (при необходимости) можно подписаться на события самой формы1.

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList