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

Форум: MS ACCESS

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

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

 
 

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

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

тема: Связка Image -> ImageList
 
 автор: snipe   (21.09.2009 в 07:17)   личное сообщение
 
 

Ни чего не понимаю
во многих местах (в том числе и на hiprog) написано что если у контрола есть свойство Picture то этому контролу можно подсунуть рисунок из ImageList

Пишу (как везде советуют)
Set Рисунок1.Picture=ImageList0.ListImages(1).Picture

получаю ошибку что не возможно найти рисунок (и далее идет номер рисунка)
но ведь Picture должно быть текстовой строкой ( а именно путь к файлу рисунка) а тут число

Вот и возник вопрос или я не туда полез и мой случай безнадёжен или у меня руки растут не оттуда

Заранее спасибо

  Ответить  
 
 автор: Alex   (21.09.2009 в 15:19)   личное сообщение
 
 

Вот так работает : http://webfile.ru/3938522

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

Спасибо Alex но вопрос не много в другом.....
в предложенном Вам варианте (т.е. когда рисунки храняться где то на диске) есть маленькая огреха которая мне не нравится, а именно в момент смены рисунка появляется progress bar Поскольку рисунки маленькие то эта зараза(в данном случае) появляется на очень маленькое время т.е мельтешит перед глазами - и это напрягает. Вот и полез искать способ избежать этого - глаз упал на ImageList который хранит рисунки внутри себя - вот только связать этот контейнер рисунков(ImageList ) с контролом отображения рисунков(Image) пока не получается

  Ответить  
 
 автор: Lukas   (22.09.2009 в 09:08)   личное сообщение
 
 

Если рисунки маленькие, может как вариант их хранить в разных Image-ах, а в отображаемом Image менять рисунок через PictureData?

  Ответить  
 
 автор: snipe   (22.09.2009 в 09:56)   личное сообщение
 
 

Спасибо Lukas

но удалось найти более интересный вариант
в комплект MS Access входит стандартный элемент ActiveX - Microsoft Forms2.0 Image
ставлю его на форму
ставлю ImageList - гружу его рисунками

далее в VBA пишу

me![имя Forms2.0 image].picture=me![имя ImageList].listimages(1).picture

и все получается

тему можно закрыть

  Ответить  
 
 автор: snipe   (22.09.2009 в 11:22)   личное сообщение
12 Кб.
 
 

Видимо поторопился не много с закрытием темы....
все работает и прекрасно работает....
вот только вокруг рисунка присутствует черная рамка
и как от её избавиться пока ума не приложу
подскажите плиз

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

Ура - убил рамку
оказывается у этого элемента две рамки
одна просто .borderstyle
a вторая .Object.borderstyle
вот второй рамке задал значение fmBorderStyleNone (при загрузке формы)
и вопрос решился
теперь точно можно тему закрывать
спасибо откликнувшимся

  Ответить  
 
 автор: Alex   (23.09.2009 в 12:27)   личное сообщение
 
 

Ага! Так и думал что дело нечисто - слишком простой вопрос, ответ на который знаю даже я
Про ImageList не знал - думал что это имя списка

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

это ActiveX
если точно то Microsoft ImageList Control - контейнер для хранения рисунков
хитрость его в том что при загрузке формы все рисунки запихиваются в память компа
(из-за этого может тормозить)
а так какие-нибудь мелкие рисунки в небольших количествах милое дело

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