Seite 1 von 1
Callback
Verfasst: 02.11.2006 22:09
von man-in-black
moin,
weis nicht so wirklich, wie man ein Callback macht.
Wie kommt man denn auf die vier Parameter? Wozu sind die gut?
Und wie kann ich ein Callback zum laden einer Internetseite erstellen?
MIB

Verfasst: 03.11.2006 09:31
von Leonhard
Meinst du jetz einen Windows-Callback oder einen Eigengen Callback?
So funzt das mit einem eigenen Callback:
Code: Alles auswählen
Prototype.s pp_pCallback(Parameter1.s)
Global p_pCallback.pp_pCallback
Procedure SetMyCallback(*Callback.pp_pCallback)
p_pCallback = *Callback
EndProcedure
Procedure.s StartCallback(Parameter1.s)
If p_pCallback <> #Null
ProcedureReturn p_pCallback(Parameter1)
Else
ProcedureReturn "Kein Callback gesetzt"
EndIf
EndProcedure
; Beispiel
Procedure.s MyCallback(Parameter1.s)
ProcedureReturn "Hello "+Parameter1+"!"
EndProcedure
SetMyCallback(@MyCallback())
Debug StartCallback("World")
End
Wenn du nicht mit
Prototype arbeiten willst kannst du auch zum ausführen des Callbacks
CallFunctionFast(...) nehmen. Dabei musst du aber für die Rückgabe von Strings PeekS(...) verwenden:
Code: Alles auswählen
Global *p_pCallback
Procedure SetMyCallback(*Callback)
*p_pCallback = *Callback
EndProcedure
Procedure.s StartCallback(Parameter1.s)
If *p_pCallback <> #Null
ProcedureReturn PeekS(CallFunctionFast(*p_pCallback, Parameter1))
Else
ProcedureReturn "Kein Callback gesetzt"
EndIf
EndProcedure
; Beispiel
Procedure.s MyCallback(Parameter1.s)
ProcedureReturn "Hello "+Parameter1+"!"
EndProcedure
SetMyCallback(@MyCallback())
Debug StartCallback("World")
End
Verfasst: 04.11.2006 22:42
von man-in-black
Danke
kann mir einer aber auch sagen, wie ich das für das Laden einer Internetseite machen kann?
MIB