如何让picture控件旋转一定的角度?比如让她倾斜30度,或者40度,或者图片倾斜也可以,我想让图片旋转,并且可以看到这个旋转的过程,

解决方案 »

  1.   

    微软的KB:
    http://support.microsoft.com/default.aspx?scid=kb;EN-US;186260
      

  2.   

    实现任意旋转:在窗体上加一个picture1(内加载一张图片), 一个picture2, 一个commandOption Explicit
    Const Pi = 3.14Private Sub Command1_Click()
        Dim x As Integer, y As Integer
        Dim X1 As Integer, Y1 As Integer
        Dim X2 As Double, Y2 As Double
        Dim X3 As Double, Y3 As Double
        Dim JiaoDu As Double
        Dim HuDu As Double
        JiaoDu = 45               ' 可以改动这个角 度
        HuDu = JiaoDu * Pi / 180    ' 弧 度
        Picture1.ScaleMode = vbPixels
        Picture2.ScaleMode = vbPixels
        For x = 0 To Picture2.ScaleWidth
            X1 = x - Picture2.ScaleWidth \ 2
            For y = 0 To Picture2.ScaleHeight
                Y1 = y - Picture2.ScaleHeight \ 2
                X2 = X1 * Cos(-HuDu) + Y1 * Sin(-HuDu)
                Y2 = Y1 * Cos(-HuDu) - X1 * Sin(-HuDu)
                X3 = X2 + Picture1.ScaleWidth \ 2
                Y3 = Y2 + Picture1.ScaleHeight \ 2
                If X3 > 0 And X3 < Picture1.ScaleWidth - 1 And Y3 > 0 And Y3 < Picture1.ScaleHeight - 1 Then
                Picture2.PSet (x, y), Picture1.Point(X3, Y3)
                End If
            Next y
        Next xEnd Sub