Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > отображение эллементов управления


Автор: Kirill89 18.2.2008, 15:40
в модуле в классе CArea
Код

Protected VisualArea(0, 0) As System.Windows.Forms.PictureBox
For i = 0 To 5
                For j = 0 To 5
                    VisualArea(i, j) = New System.Windows.Forms.PictureBox
                    VisualArea(i, j).BackColor = Color.White
                    VisualArea(i, j).Width = 10
                    VisualArea(i, j).Height = 10
                    VisualArea(i, j).Top = i * 10
                    VisualArea(i, j).Left = j * 10
                    VisualArea(i, j).Show()
                Next
            Next

на форме(form1) я picturebox не вижу... как это исправить?

Автор: Ctrl 18.2.2008, 17:01
И не увидишь, т.к. просто создать PictureBox недостато, 
надо его еще на форму поместить:

VisualArea(i, j).Parent = form1,

 а только потом задавать размеры и все остальное. 
И еще:
 VisualArea(i, j).Show() убери нафиг...

Автор: bogys 18.2.2008, 17:03
Для того что отображать элементы управления в некотором контейнерном элементе  ( в данном случае Form1 )  нужно включить их в коллекцию Controls этого контейнера
Добавьте перед завершением цикла строчку:
Код

Controls.Add(VisualArea(i, j))


Автор: Kirill89 18.2.2008, 20:08
Ctrl, пашет) большое спасибо! я подозревал, что нужно установить некое свойство, но незнал какое. +

bogys, спасибо за ответ. вариант Ctrl мне импонирует больше при работе с классами.

Автор: Raid 18.2.2008, 23:20
это равнозначный код, дело только в удобстве применения

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)