比如说1200*1600那种图片,他们显示的都不完全,假如采用image控件的stretch属性,则显示又会出现失真情况,请问如何解决这个问题啊?谢谢先

解决方案 »

  1.   

    当是picturebox时设置autosize=true
    当是IMAGE时设置stretch,,,你说的失真可能是你调为TRUE了,,当调为FALSE时,,这样就不会失真了,,
      

  2.   

    '一个简单的滚动条例子
    'Form1中放一个PictureBox:  Picture1
    'Picture1中放一个Image:    Image1
    '一个HScrollBar:           HScroll1
    '一个VScrollBar:           VScroll1Private Sub Form_Load()
        With Image1
            .Move 0, 0
            .Picture = LoadPicture("c:\windows\logow.sys")
            '如果这句出错,请改为其他的图片文件
            Picture1.Move 0, 0, .Width \ 2, .Height \ 2
        End With
        With Picture1
            HScroll1.Move 0, .ScaleHeight - 255, .ScaleWidth - 255, 255
            HScroll1.Max = .ScaleWidth + 255 + 255 \ 2
            HScroll1.LargeChange = .ScaleWidth / 50
            HScroll1.SmallChange = .ScaleWidth / 50
            VScroll1.Move .ScaleWidth - 255, 0, 255, .ScaleHeight - 255
            VScroll1.Max = .ScaleHeight + 255 + 255 \ 2
            VScroll1.LargeChange = .ScaleHeight / 50
            VScroll1.SmallChange = .ScaleHeight / 50
            Dim cmdMask As CommandButton
            Set cmdMask = Controls.Add("vb.commandbutton", "mask", Picture1)
            cmdMask.Move .ScaleWidth - 255, .ScaleHeight - 255, 255, 255
            cmdMask.Enabled = False
            cmdMask.Visible = True
        End With
    End SubPrivate Sub HScroll1_Change()
        Image1.Left = -HScroll1.Value
    End SubPrivate Sub VScroll1_Change()
        Image1.Top = -VScroll1.Value
    End Sub
      

  3.   

    '再加几行^_^Private Sub HScroll1_Scroll()
        Call HScroll1_Change
    End SubPrivate Sub VScroll1_Scroll()
        Call VScroll1_Change
    End Sub
      

  4.   

    BlueBeer的方法很好,我一直这么使!
      

  5.   

    但是不能显示啊
    好像picturebox把image覆盖了
    但什么都显示不出来
    请问是什么原因啊》?
    需要设置一些什么属性?