做到这一点 -
- 创建一个新的VB.NET WinForms项目
- 广场形式
- 在面板控制设置在面板的“自动滚动”属性设置为“真”
- 在表格的加载事件中放置以下代码
For i As Integer = 1 To 100
Dim b As New Button()
b.Text = i.ToString()
b.Size = New Size(60, 40)
b.Location = New Point(0, (i * b.Height) - b.Height)
b.Parent = Panel1
Panel1.Controls.Add(b)
Next
您应该在面板控件中看到一个带有100个按钮的窗体。面板控件应该包含一个垂直滚动条。使用面板内的滚轮应滚动按钮。
希望这个例子有所帮助。
编辑
我添加了一个面板和垂直滚动条到它的右侧。
这不是正确的做法。您需要使用面板的autoscroll属性。
编辑 - 另一个例子
- 创建一个新的VB.NET项目
- 窗体上放置两个按钮
- 创建一个新的用户控件
- 设置用户控件的自动滚屏属性true
- 将以下代码粘贴到表单加载事件中
Dim uc As New UserControl1
uc.Parent = Me
Me.Controls.Add(uc)
uc.Size = New Size(100, 100)
uc.Location = New Point(0, 0)
For i As Integer = 1 To 100
Dim b As New Button()
b.Text = i.ToString()
b.Size = New Size(60, 40)
b.Location = New Point(0, (i * b.Height) - b.Height)
b.Parent = uc
uc.Controls.Add(b)
Next
- 运行该程序。点击按钮(在表单上)。注意,您必须单击usercontrol来设置其焦点并使用滚轮。
谢谢,设置该示例帮助我找出解决方法。我的问题完全来自于使用usercontrol。在窗体上执行面板的工作。 – dwidel 2009-03-04 22:28:21