讓VB使用彩色及動畫光標(biāo)的方法

字號:

VB本身不支持彩色光標(biāo)和動畫光標(biāo),但可以通過調(diào)用Windows的API函數(shù)實(shí)現(xiàn)這一目的。這里用到兩個API函數(shù),LoadCursorFromFile用于裝入新光標(biāo)(xin),需要指明新光標(biāo)的具體路徑及文件名;SetClassLong用于設(shè)置使用新光標(biāo)(xin)。這一函數(shù)使用時會返回一個代表前一個光標(biāo)的變量值(jiu),為我們關(guān)閉程序時得以方便的恢復(fù)原始光標(biāo)(jiu)
    Private Declare Function LoadCursorFromFile Lib "user32" Alias "LoadCursorFromFileA" (ByVal lpFileName As String) As Long
    Private Declare Function SetClassLong Lib "user32" Alias "SetClassLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
    Dim xin As Long
    Dim jiu As Long
    Private Sub Form_Load()
    xin = LoadCursorFromFile("C:\WINDOWS\CURSORS\Globe.ani")
    jiu = SetClassLong(hwnd, -12, xin)
    End Sub
    Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
    SetClassLong hwnd, -12, jiu
    End Sub