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

Форум: MS ACCESS

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

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

 
 

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

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

тема: Чекбокс и картинка
 
 автор: Andrey410   (23.01.2010 в 18:32)   личное сообщение
 
 

Подскажите как сделать!
В форме на один из параметров клиента есть чекбокс, нужно сделать так что если галка стоит то в форме отбражается одна картинка, а если нет то другая, дополнительная сложность в том чтобы это работало в том числе и в формах не связанных с изначальной, там где чекбокс.

  Ответить  
 
 автор: Lukas   (23.01.2010 в 20:02)   личное сообщение
50 Кб.
 
 

Можно так:

  Ответить  
 
 автор: Lukas   (23.01.2010 в 20:04)   личное сообщение
13 Кб.
 
 

Пример в Zip-е:

  Ответить  
 
 автор: Andrey410   (24.01.2010 в 00:31)   личное сообщение
 
 

Спасибо за то что откликнулись на просьбу!
Первую часть проблемы удалось решить, но вот со второй не выходит.
Хотел прикрепить файл с примером к сообщению, фигня какая то... база всего то из 2-х простейших форм и 2-х пустых таблиц весит почти 7 мегов...
Ссылка на пример: http://slil.ru/28537203

  Ответить  
 
 автор: Lukas   (24.01.2010 в 01:26)   личное сообщение
 
 

1. Создать копию
2. Меню "Сервис" => "Служебные программы" => "Сжать и восстановить базу данных..."
3. в ZIP.

Качать 7 мег. мусора влом.

  Ответить  
 
 автор: час   (23.01.2010 в 20:06)   личное сообщение
 
 

Можно просто положить на нужное место 2 картинки и установить у них свойство вывод на экран - False
(нет)
А потом на событие флажка - Click проверку
If Флаг = 0 then
Картинка_1.Visible = True
Картинка_2.Visible = False
else
Картинка_1.Visible = False
Картинка_2.Visible = True
end if

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

1 У вас на второстепенной форме есть комбобокс он вытаскивает id таблицы1 у комбобокса есть событие - после обновления ну и последнее что вам понадобиться это функция DLookUp

таким образом последовательность примерно такая

при выборе значения в комбобоксе (возникает событие после обновления)
используя значение комбобокса вытаскиваем значение чекбокса из таблицы1 (при помощи DLookUP) теперь в зависимости от значения возвращенного DLookUp показываем картинку

2.Сервис-Параметры вкладка Общие поставте галочку в строчке сжимать при закрытии
и база у вас расти как на дрожжах перестанет

  Ответить  
 
 автор: Lukas   (24.01.2010 в 13:08)   личное сообщение
20 Кб.
 
 

1. Зачем доменные функции, если и без них легко можно обойтись?
2. Зачем кодить, когда можно не кодить?
3. Зачем дублировать картинки на каждую форму?
4. Если захочется поменять картинку, придется шерстить все формы.

Вот еще продолжение примера для разных таблиц и форм:

  Ответить  
 
 автор: час   (24.01.2010 в 13:18)   личное сообщение
 
 

Хорошо - кода в выходной расслабуха...........

  Ответить  
 
 автор: Andrey410   (24.01.2010 в 15:03)   личное сообщение
 
 

Lukas спасибо за примеры, но всё таки это немного не то о чём я писал.
В этом примере http://slil.ru/28538868 две разные формы, но одна тянет данные из другой, менять структуру форм нельзя, потому что в реальном приложении они завязаны на кучу всего.
(архив весит 63 кб)
Там на самом деле у меня только 1 затруднение: как получить из первой таблицы значение флажка соответствующее конкретному ID клиента, чтобы можно было с ним работать

  Ответить  
 
 автор: час   (24.01.2010 в 15:38)   личное сообщение
 
 

Вон там на верху

1 У вас на второстепенной форме есть комбобокс он вытаскивает id таблицы1 у комбобокса есть событие - после обновления ну и последнее что вам понадобиться это функция DLookUp



Получить значение из таблицы с помощью DLookUp, и всё.....
или FindFirst(
или DFirst
почитайте про эти функции и возмите на вооружение понравившуюся

  Ответить  
 
 автор: Andrey410   (24.01.2010 в 15:44)   личное сообщение
 
 

А не будет наглостью попросить пример? Справка на английском а с ним у меня не очень...

  Ответить  
 
 автор: snipe   (24.01.2010 в 16:27)   личное сообщение
56 Кб.
 
 

Держи

  Ответить  
 
 автор: Andrey410   (24.01.2010 в 17:05)   личное сообщение
 
 

Snipe большое спасибо!
Теперь понял свою ошибку. В моём варианте было вот так
= DLookup("[polefpsr]", "[таблица 1]", "[ID клиента]=" & Me!ПолеСоСписком15)
Me.RisOsnova.PictureData = Me.Ptichka_img.PictureData
Me.Refresh
Else

Me.RisOsnova.PictureData = Me.Blanc_img.PictureData
Me.Refresh

  Ответить  
 
 автор: Lukas   (24.01.2010 в 16:46)   личное сообщение
 
 

Посмотрел.


...две разные формы, но одна тянет данные из другой...


...Простите, кто на ком стоял?...


...менять структуру форм нельзя...


Согласен, надо выкидывать сразу, чего время зря терять.


...как получить из первой таблицы значение флажка соответствующее конкретному ID клиента,
чтобы можно было с ним работать...


Объединить таблицы в запросе - источнике данных формы.

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