关于AddressOf的问题
ShaB 2003-09-11 10:27:51 Private Function NotifyWindowProc(ByVal hWnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
If Msg = TRAY_CALLBACK Then
If lParam = WM_LBUTTONUP Then
Me.WindowState = 0
ElseIf lParam = WM_RBUTTONUP Then
Me.WindowState = 1
End If
End If
NotifyWindowProc = CallWindowProc(OldWindowProc, Me.hWnd, Msg, wParam, lParam)
End Function
Private Sub Form_Load()
With NotifyData
.uID = 0
.cbSize = Len(NotifyData)
.hIcon = Me.Icon.Handle
.hWnd = Me.hWnd
.szTip = "B哥"
.uCallbackMessage = TRAY_CALLBACK
.uFlags = .uFlags Or NIF_MESSAGE
.cbSize = Len(NotifyData)
End With
Shell_NotifyIcon NIM_ADD, NotifyData
OldWindowProc = SetWindowLong(Me.hWnd, GWL_WNDPROC, AddressOf NotifyWindowProc)
End Sub
上面第一个是函数定义,用来代替旧窗口处理函数,然后在最后面这里,让NotifyWindowProc开始代替旧窗口函数,可是提示AddressOf无效的信息,请高手帮忙解答,感谢!