计算坐标,bitblt就可以了

解决方案 »

  1.   

    paintpicture页可以,如果你不想用API
      

  2.   

    Picture2.PaintPicture Picture1(1).Picture怎么错了?
      

  3.   

    Private Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As LongPrivate Sub Form_Load()
        Me.ScaleMode = 1
        Picture1.ScaleMode = 1
        Picture2.ScaleMode = 1
        Picture3.ScaleMode = 1
        
        Picture1.Move 0, 0, Me.Width, Me.Height / 2
        
        Picture2.Move 0, Me.Height / 2 + 50, Me.Width / 2, Me.Height / 2
        Picture3.Move Picture2.Width + 50, Picture2.Top, Picture2.Width, Picture2.Height
        
        Me.Height = Me.Height + 500
        Me.Width = Me.Width + 150
    End SubPrivate Sub Picture1_Paint()
        Dim pp As StdPicture
        Set pp = LoadPicture("C:\Documents and Settings\wxy\My Documents\My Pictures\样品.jpg")
                
        Picture1.PaintPicture pp, 0, 0, Picture1.Width, Picture1.HeightEnd SubPrivate Sub Picture1_Click()
        BitBlt Picture2.hDC, 0, 0, Picture1.Width / 2, Picture1.Height, Picture1.hDC, 0, 0, vbSrcCopy
        BitBlt Picture3.hDC, 0, 0, Picture1.Width / 2, Picture1.Height, Picture1.hDC, Picture1.Width / 2 / 15, 0, vbSrcCopyEnd Sub