我的问题是:在picture里添加了较多的label和text控件,实现数据录入功能,但现在显示区域不够,想通过scrollbar控制显示区域,如何实现?急等,最好有源码,在线等.....!

解决方案 »

  1.   

    好办!!给我你的EMAIL,法给你原码!!
      

  2.   

    'pp1为你放控件的picturebox,将pp1(p1也是个picturebox)放在p1中。
    'Hs1是水平滚动条,VS1是垂直滚动条。分别放在p1的下方和右方。
    运行程序,拖动两个滚动条,就可看到pp1中的全部内容,虽然pp1比p1大!Private Sub Form_Load()
    HS1.Min = 1
    HS1.Value = 1
    HS1.SmallChange = 10
    HS1.LargeChange = 1000
    HS1.Max = Pp1.Width - P1.Width
    VS1.Min = 1
    VS1.Value = 1
    VS1.SmallChange = 10
    VS1.LargeChange = 1000
    VS1.Max = Pp1.Height - P1.Height
    End SubPrivate Sub HS1_Change()
    If Pp1.Width - Abs(Pp1.Left) - P1.Width > 0 Then
        Pp1.Left = -HS1.Value
    ElseIf Pp1.Width - Abs(Pp1.Left) - P1.Width < 0 Then
        Pp1.Left = HS1.Value
    ElseIf Pp1.Width - Abs(Pp1.Left) - P1.Width = 0 Then
        If HS1.Value <> 1 Then
            Pp1.Left = Pp1.Left + (HS1.Max - HS1.Value)
        Else
            Pp1.Left = 0
        End If
    End If
    End SubPrivate Sub VS1_Change()
    If Pp1.Height - Abs(Pp1.Top) - P1.Height > 0 Then
        Pp1.Top = -VS1.Value
    ElseIf Pp1.Height - Abs(Pp1.Top) - P1.Height < 0 Then
        Pp1.Top = VS1.Value
    ElseIf Pp1.Height - Abs(Pp1.Top) - P1.Height = 0 Then
        If VS1.Value <> 1 Then
            Pp1.Top = Pp1.Top + (VS1.Max - VS1.Value)
        Else
            Pp1.Top = 0
        End If
    End If
    End Sub