اخوتي
ما الخطأ في الكود التالي حيث أنه يعلم السطر :
SetTimer Me.hwnd, 100, 500, AddressOf TimerProc
وبالضبط على :
AddressOf TimerProc
ورسالة الخطأ التي تظهر :
Invalid Use Of AddressOf Operator
Dim Wnd As Long
Private Declare Function SetTimer Lib "user32" (ByVal hwnd As Long, _
ByVal nIDEvent As Long, ByVal uElapse As Long, ByVal lpTimerFunc As _
Long) As Long
Private Declare Function KillTimer Lib "user32" (ByVal hwnd As Long, _
ByVal nIDEvent As Long) As Long
Private Declare Function FindWindow Lib "user32" _
Alias "FindWindowA" (ByVal lpClassName As String, ByVal _
lpWindowName As String) As Long
Sub TimerProc(ByVal hwnd As Long, ByVal nIDEvent As Long, ByVal uElapse As Long, ByVal lpTimerFunc As Long)
Wnd = FindWindow("ProgramClass", "آلة حاسبة")
If Wnd = 0 Then Shell "C:WINDOWSCALC.EXE", 1
End Sub
Private Sub Command1_Click()
KillTimer Me.hwnd, 100
End Sub
Private Sub Command2_Click()
SetTimer Me.hwnd, 100, 500, AddressOf TimerProc
End Sub
علما أنني جربت الكود في VB وفي الأكسس ونفس الخطأ يتكرر هنا وهناك .
وللجميع التحية