实现图片平铺于窗体中


【实例说明】
    很多软件的界面并不是单调的一种颜色填充的,而是有一幅美丽的底图平铺于窗体中。

【编程思路】
    调用API函数。

【设计步骤】
    1.新建一个标准工程,创建一个新窗体,默认名为Form1。
    2.在窗体上放置一个PictureBox控件。
    3.将Picture1载入图片,并将其ScaleMode属性设置为3-Pixel(像素)。

    4.源程序  [素材源程序下载]


Option Explicit

'常量声明
Private Const SRCCOPY = &HCC0020

'API函数声明
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 Long

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
        Call subPaint
End Sub

'图片平铺于窗体
Private Sub subPaint()
        Dim X As Integer, Y As Integer
        Dim pHeight As Integer, pWidth As Integer

        '这里最好设为图片的高度
        pHeight = 32
        '这里设为图片的宽度
        pWidth = 32

        For X = 0 To ScaleWidth Step pWidth
                For Y = 0 To ScaleHeight Step pHeight
                        BitBlt Me.hDC, X, Y, pWidth, pHeight, Picture1.hDC, 0, 0, SRCCOPY
                Next Y
        Next X
End Sub