如何利用picturebox控件和scroll控件显示较大的图形,或在作图时滚动查看图形

解决方案 »

  1.   

    Option ExplicitPrivate Sub Form_Load()    '设置 ScaleMode 为像素。
        Form1.ScaleMode = vbPixels
        Picture1.ScaleMode = vbPixels    '将每个图片框的 BorderStyle 属性设置为 None。
        Picture1.BorderStyle = 0
        Picture2.BorderStyle = 0    '初始化两个图片框的位置。
        Picture1.Move 0, 0, ScaleWidth - VScroll1.Width, _
        ScaleHeight - HScroll1.Height
        Picture2.Width = 3000
        Picture2.Height = 3000
        Picture2.Move 0, 0    '将水平滚动条定位。
        HScroll1.Top = Picture1.Height
        HScroll1.Left = 0
        HScroll1.Width = Picture1.Width
        '设置水平滚动条的变化单位量
        HScroll1.LargeChange = 80
        HScroll1.SmallChange = 30    '将垂直滚动条定位。
        VScroll1.Top = 0
        VScroll1.Left = Picture1.Width
        VScroll1.Height = Picture1.Height
        '设置垂直滚动条的变化单位量
        VScroll1.LargeChange = 20
        VScroll1.SmallChange = 5    '设置滚动条的 Max 属性。
        HScroll1.Max = Picture2.Width - Picture1.Width
        VScroll1.Max = Picture2.Height - Picture1.Height    '判断子图片框是否将充满屏幕。
        '若如此,则无需使用滚动条。
        VScroll1.Visible = (Picture1.Height < Picture2.Height)
        HScroll1.Visible = (Picture1.Width < Picture2.Width)End SubPrivate Sub Form_Resize()
    '调整窗体大小时,改变 Picture1的尺寸。
        Picture1.Height = Form1.Height
        Picture1.Width = Form1.Width
        
      '重新初始化图片和滚动条的位置。
        Picture1.Move 0, 0, ScaleWidth - VScroll1.Width, _
        ScaleHeight - HScroll1.Height
        Picture2.Move 0, 0
        HScroll1.Top = Picture1.Height
        HScroll1.Left = 0
        HScroll1.Width = Picture1.Width
        VScroll1.Top = 0
        VScroll1.Left = Picture1.Width
        VScroll1.Height = Picture1.Height
        HScroll1.Max = Picture2.Width - Picture1.Width
        VScroll1.Max = Picture2.Height - Picture1.Height    '检查是否需要滚动条。
        VScroll1.Visible = (Picture1.Height < Picture2.Height)
        HScroll1.Visible = (Picture1.Width < Picture2.Width)End SubPrivate Sub HScroll1_Change()
          '令图形2向左移动,使用户观看其右边的图标
          Picture2.Left = -HScroll1.ValueEnd SubPrivate Sub HScroll1_Scroll()
          '令图形2向左移动,使用户观看其右边的图标
          Picture2.Left = -HScroll1.Value
         
    End Sub
    Private Sub VScroll1_Change()
         '令图形2向上移动,使用户观看其下边的图标
         Picture2.Top = -VScroll1.ValueEnd SubPrivate Sub VScroll1_Scroll()
       '令图形2向上移动,使用户观看其下边的图标
       Picture2.Top = -VScroll1.Value
    End Sub
      

  2.   

    picturebox控件装载的图片大小跟系统有关。
      

  3.   

    请问在TABSTRIP上怎么实现?