В Access пробую связать ImageList с загруженными иконками с ListView
Dim imgX As ListImage
Set imgX = ImageList1.ListImages. _
Add(, , LoadPicture("C:\student\Mlink\icon\mail01a.ico"))
ListView1.Icons = ImageList1 'Ошибка
ListView1.Object.Icons = ImageList1 'так тоже ошибка
Ошибка: Invalid object.
ListView1 и ImageList1 находятся на форме, но не связаны (тогда это будет связывание в режиме проектирования) (В MSDN пример дают именно такой ).
Здравствуйте Victor387, Вы писали:
V>В Access пробую связать ImageList с загруженными иконками с ListView
V> Dim imgX As ListImage
V> Set imgX = ImageList1.ListImages. _
V> Add(, , LoadPicture("C:\student\Mlink\icon\mail01a.ico"))
V> ListView1.Icons = ImageList1 'Ошибка
V> ListView1.Object.Icons = ImageList1 'так тоже ошибка
V>Ошибка: Invalid object. V>ListView1 и ImageList1 находятся на форме, но не связаны (тогда это будет связывание в режиме проектирования) (В MSDN пример дают именно такой ).
Наверное, нужно указать ключевое слово Set, всё ж объект передаётся.
Vi2>> Set ListView1.Object.Icons = ImageList1 ' ошибка?
Vi2>>
V>Так тоже будет ошибка, проверял. V>
V>Set ListView1.Icons = ImageList1 ' ошибка
V>
V>ListView & ImageView 6-ой версии, V>Microsoft DAO 3.51 Object Library у меня подключен.
Я же недаром написал ListView1.Object.Icons. В Access первый объект не является ListView-объектом, у него нет свойства Icons. Это какой-то псевдо-объект, у которого есть свойство Object, которое по существу и является ListView-объектом, у которого есть свойство Icons. Таков Access.
Здравствуйте Vi2, Вы писали: Vi2>Я же недаром написал ListView1.Object.Icons. В Access первый объект не является ListView-объектом, у него нет свойства Icons. Это какой-то псевдо-объект, у которого есть свойство Object, которое по существу и является ListView-объектом, у которого есть свойство Icons. Таков Access.
Вы пробовали свой пример? нет! А MSDN глядели? я незнаю Потому что
Set ListView1.Object.Icons = ImageList1
Неработает. Run-time error 35610.
Также не работает и следующий код
Set ListView1.Icons = ImageList1
та же ошибка, проверял, Но именно такой пример дан в MSDN.
Виктор
Re[5]: Динамическое связывание ImageList с ListView
Здравствуйте Victor387, Вы писали:
V>Вы пробовали свой пример? нет! А MSDN глядели? я незнаю Потому что V>Set ListView1.Object.Icons = ImageList1 V>Неработает. Run-time error 35610. V>Также не работает и следующий код V>Set ListView1.Icons = ImageList1 V>та же ошибка, проверял, Но именно такой пример дан в MSDN.
Ну, не проверял, ну, не дописал для всех ActiveX свойство Object.
Вот это устроит? Тут идея важна. В Access есть обёртка над объектом, у неё есть свойство Object, который и является тем объектом, для которого ты пишешь ActiveX функциональность.
Private Sub ListView1_Enter()
ImageList1.Object.ListImages.Add , , LoadPicture("C:\Test.ico")
Set ListView1.Object.Icons = ImageList1.Object
ListView1.Object.ListItems.Add , , "aaa", 1
End Sub
Не сомневайся, теперь проверил — работает и отображает.