Как создавать объекты на форме в реалтайме я знаю, но вот, помогите разобраться:
1) как создать к примеру PictureBox в реалтайме именно в контейнере, например во Frame
2) и как создать несколько объектов одного имени, ну т.е. с Индексами
??? оооочень надо, потому что заранее создавать PictureBox - это не есть хорошо. Да и к тому же если придется создать 200 PB, а не 4 - лишний расход памяти и ресурсов, да и собственна размер программы прибавит в весе. Заранее благодарен
Всё понятно.. Как с пом. VB6 делать Пикчерсы в контейнерах.. Создай контрол: Picture в Frame, сделай нужные события и свойства, а дальше - по обычной схеме: контрол на форме + подгружаем все остальные. Есть способ чуть сложнее, но ещё лучше: создавай контролы и делай пикчерсы с пом. API. А вместо массива контролов создай массив LONG с hWnd родительских контролов.
о, GSerg, че перебрался на VBNet ( и че случилось с bbs.vbstreets.ru не знаешь?)
по поводу вопроса, GSerg какой смысл в этом ? зачем создавать PB с Index=0. Мне могут понадобиться много PB, но мне нужно чтобы они были в массиве. Ну раз нельзя так значит нельзя.
Суть идеи в том что, после драга на форме, проиходит "граб" ICON пришедшей ссылки на exe файл и в PB(он является контейнером) появляется ICON пришедшего файла, посредством рисования этой иконки в дочернем PB, но если файлов приходит несколько, то появляется необходимость создания нескольких PB чтобы в каждом прорисвать свою иконку.
mc-black я понял твою идею, попробую реализовать на сколько я ее понял. Спасибо за совет.
?? Это что же мне придется заранее прописать к примеру 200 Sub'ов для каждого PB - О УЖАС !!!
Вот тебе пример с Лабелом:
Сначала надо в design time создать массив этих контролов с одним элементом. Для этого надо нарисовать на форме элемент, назвать его, например t4xLabels, и
в свойство Index записать 0. Далее, настроить свойства этого элемента так, как почти будут выглядеть элементы, которые требуется загружать динамически.
После этого в окне кода в нужной подпрограмме написать следующее:
Load t4xLabels(1)
'Здесь задать положение и другие свойства новой метки.
t4xLabels(1).Visible = True 'По умолчанию загружаемый элемент не виден.
Выгрузить можно только так загруженные элементы. Делается это следующим образом:
Unload t4xLabels(1)
Понятно, что можно загрузить не один (как в этом примере) а много элементов.