Name
set_drawing_object_callbackset_drawing_object_callbackSetDrawingObjectCallbackset_drawing_object_callbackSetDrawingObjectCallbackSetDrawingObjectCallback — Hinzufügen einer Callback-Funktion zu einem Zeichenobjekt.
set_drawing_object_callbackset_drawing_object_callbackSetDrawingObjectCallbackset_drawing_object_callbackSetDrawingObjectCallbackSetDrawingObjectCallback fügt die Rückruffunktion
CallbackFunctionCallbackFunctionCallbackFunctionCallbackFunctionCallbackFunctioncallbackFunction zu einem Zeichenobjekt hinzu, die bei
einem definierten Event DrawObjectEventDrawObjectEventDrawObjectEventDrawObjectEventDrawObjectEventdrawObjectEvent ausgeführt wird.
Ein Event ist eine Aktion die vom Benutzer oder einem HALCON-Operator,
wie z.B. attach_drawing_object_to_windowattach_drawing_object_to_windowAttachDrawingObjectToWindowattach_drawing_object_to_windowAttachDrawingObjectToWindowAttachDrawingObjectToWindow,
ausgelöst wird und den Status des Zeichenobjekts verändert. Der Operator
set_drawing_object_callbackset_drawing_object_callbackSetDrawingObjectCallbackset_drawing_object_callbackSetDrawingObjectCallbackSetDrawingObjectCallback ermöglicht es zu definieren, wie auf
solche Events reagiert wird.
Die vordefinierten Events sind:
- 'on_attach'"on_attach""on_attach""on_attach""on_attach""on_attach"
Die entsprechende Rückruffunktion wird gleich nach
dem Anhängen des Zeichenobjekts ans Fenster aufgerufen.
- 'on_detach'"on_detach""on_detach""on_detach""on_detach""on_detach"
Die entsprechende Rückruffunktion wird gleich nach
dem Entfernen des Zeichenobjekts vom Fenster aufgerufen.
- 'on_drag'"on_drag""on_drag""on_drag""on_drag""on_drag"
Die entsprechende Rückruffunktion wird gleich nach
dem Verschieben des Zeichenobjekts aufgerufen.
- 'on_resize'"on_resize""on_resize""on_resize""on_resize""on_resize"
Die entsprechende Rückruffunktion wird gleich nach
dem Anpassen der Größe des Zeichenobjekts aufgerufen.
- 'on_select'"on_select""on_select""on_select""on_select""on_select"
Die entsprechende Rückruffunktion wird gleich nach
dem Auswählen und Aktivierung vom Zeichenobjekt aufgerufen.
Es ist möglich eine bestimmte Rückruffunktion für jedes gewünschte
Event zu setzten. Dafür müssen die Eingabeparameter
DrawObjectEventDrawObjectEventDrawObjectEventDrawObjectEventDrawObjectEventdrawObjectEvent und CallbackFunctionCallbackFunctionCallbackFunctionCallbackFunctionCallbackFunctioncallbackFunction die gleiche
Länge haben. Es ist ebenso möglich die gleiche Rückruffunktion für
verschiedene Events zu definieren. Dann kann DrawObjectEventDrawObjectEventDrawObjectEventDrawObjectEventDrawObjectEventdrawObjectEvent
eine beliebige Länge haben und CallbackFunctionCallbackFunctionCallbackFunctionCallbackFunctionCallbackFunctioncallbackFunction enthält
einen einzigen Wert.
Die Rückruffunktion ist ein Integer vom Typ long und beinhaltet einen Pointer
zu einer C-Funktion folgender Signatur:
Herror HDrawObjCallback(long DrawID, long WindowHandle, char* type)
Unter Windows 32 bit Systemen, wird die __stdcall Namenskonvention benutzt:
Herror (__stdcall HDrawObjCallback)(long DrawID, long WindowHandle, char* type)
Der erste Parameter der Rückruffunktion enthält das Handle des Zeichenobjekts,
das das Event auslöst. Der zweite Parameter enthält das Handle zu dem Fenster,
in dem das Event ausgelöst wurde. Der Dritte gibt an, welches Event
geschehen ist.
Es darf kein graphischer Operator innerhalb der Rückruffunktion aufgerufen
werden, wie. z.B. disp_objdisp_objDispObjdisp_objDispObjDispObj, da sonst ein Deadlock vorkommen könnte.
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Wird ohne Parallelisierung verarbeitet.
Handle des Zeichenobjekts.
Liste der zu setzenden Events.
Wertevorschläge: 'on_resize'"on_resize""on_resize""on_resize""on_resize""on_resize", 'on_drag'"on_drag""on_drag""on_drag""on_drag""on_drag", 'on_delete'"on_delete""on_delete""on_delete""on_delete""on_delete", 'on_select'"on_select""on_select""on_select""on_select""on_select"
Liste entsprechenden Callback-Funktionen.
set_drawing_object_callbackset_drawing_object_callbackSetDrawingObjectCallbackset_drawing_object_callbackSetDrawingObjectCallbackSetDrawingObjectCallback liefert den Wert 2 (H_MSG_TRUE), falls DrawIDDrawIDDrawIDDrawIDDrawIDdrawID
und DrawObjectEventDrawObjectEventDrawObjectEventDrawObjectEventDrawObjectEventdrawObjectEvent gültig sind. Ansonsten wird eine Fehlerbehandlung
durchgeführt.
attach_drawing_object_to_windowattach_drawing_object_to_windowAttachDrawingObjectToWindowattach_drawing_object_to_windowAttachDrawingObjectToWindowAttachDrawingObjectToWindow
close_windowclose_windowCloseWindowclose_windowCloseWindowCloseWindow,
clear_drawing_objectclear_drawing_objectClearDrawingObjectclear_drawing_objectClearDrawingObjectClearDrawingObject,
detach_drawing_object_from_windowdetach_drawing_object_from_windowDetachDrawingObjectFromWindowdetach_drawing_object_from_windowDetachDrawingObjectFromWindowDetachDrawingObjectFromWindow,
get_drawing_object_iconicget_drawing_object_iconicGetDrawingObjectIconicget_drawing_object_iconicGetDrawingObjectIconicGetDrawingObjectIconic,
get_drawing_object_paramsget_drawing_object_paramsGetDrawingObjectParamsget_drawing_object_paramsGetDrawingObjectParamsGetDrawingObjectParams
create_drawing_object_rectangle1create_drawing_object_rectangle1CreateDrawingObjectRectangle1create_drawing_object_rectangle1CreateDrawingObjectRectangle1CreateDrawingObjectRectangle1,
attach_drawing_object_to_windowattach_drawing_object_to_windowAttachDrawingObjectToWindowattach_drawing_object_to_windowAttachDrawingObjectToWindowAttachDrawingObjectToWindow,
detach_drawing_object_from_windowdetach_drawing_object_from_windowDetachDrawingObjectFromWindowdetach_drawing_object_from_windowDetachDrawingObjectFromWindowDetachDrawingObjectFromWindow
Foundation