以编程方式向面板添加控件

时间:2010-07-10 12:17:21

标签: vb.net winforms

我正在尝试为表单添加一组四个单选按钮。还有其他单选按钮,所以我将它们放在Panel上进行分组。但是使用下面我只是将面板添加到没有单选按钮的表单中...我在这里做错了吗?

Dim arrRButton(3) As RadioButton
arrRButton(0) = New RadioButton
arrRButton(1) = New RadioButton
arrRButton(2) = New RadioButton
arrRButton(3) = New RadioButton           

With arrRButton(0)
  .AutoSize = True
  .Checked = True
  .Location = New System.Drawing.Point(77, 139)
  .Name = "RadioButton5"
  .Size = New System.Drawing.Size(55, 17)
  .TabIndex = 48
  .TabStop = True
  .Text = "NEAR"
  .UseVisualStyleBackColor = True
End With
'.... etc

'Panel2
Dim Panel2 As New Panel
With Panel2
  .Controls.Add(arrRButton(0))
  .Controls.Add(arrRButton(1))
  .Controls.Add(arrRButton(2))
  .Controls.Add(arrRButton(3))
  .Location = New System.Drawing.Point(61, 130)
  .Name = "Panel2"
  .Size = New System.Drawing.Size(300, 24)
End With

Me.Controls.Add(Panel2)

3 个答案:

答案 0 :(得分:5)

  

.Size = New System.Drawing.Size(300,24)

有你的问题,你让面板太小了。第一个单选按钮的位置位于(77,139),您必须将面板的高度设置为至少139 + 17 = 156才能完整查看。

这是一个让这种代码正确的技巧。在“解决方案资源管理器”窗口中,找到“显示所有文件”图标并单击它。这显示了解决方案中的所有文件。表单旁边会显示一个节点。单击它,然后双击.Designer.vb文件。找到InitializeComponent()方法。在删除窗体上的控件并设置其属性时,请观察此代码的更改方式。复制并粘贴代码。

使用UserControl也很有用。

答案 1 :(得分:3)

如果要向表单添加一组单选按钮,请使用RadioButtonGroup,而不是单选按钮数组。

答案 2 :(得分:-1)

你的问题就在这里:

您的设置仅适用于button(0),请更正!

for n=0 to 3
With arrRButton(n)
  .AutoSize = True
  .Checked = True
  .Location = New System.Drawing.Point((55*n) +5, 5)  '
  .Name = "RadioButton5"+ n.tostring()
  .Size = New System.Drawing.Size(55, 17)
  .TabIndex = 48
  .TabStop = True
  .Text = "NEAR"
  .UseVisualStyleBackColor = True
  End With

 next