set_drawing_object_callbackT_set_drawing_object_callbackSetDrawingObjectCallbackSetDrawingObjectCallback (Operator)

Name

set_drawing_object_callbackT_set_drawing_object_callbackSetDrawingObjectCallbackSetDrawingObjectCallback — Hinzufügen einer Callback-Funktion zu einem Zeichenobjekt.

Signatur

set_drawing_object_callback( : : DrawHandle, DrawObjectEvent, CallbackFunction : )

Herror T_set_drawing_object_callback(const Htuple DrawHandle, const Htuple DrawObjectEvent, const Htuple CallbackFunction)

void SetDrawingObjectCallback(const HTuple& DrawHandle, const HTuple& DrawObjectEvent, const HTuple& CallbackFunction)

void HDrawingObject::SetDrawingObjectCallback(const HTuple& DrawObjectEvent, const HTuple& CallbackFunction) const

void HDrawingObject::SetDrawingObjectCallback(const HString& DrawObjectEvent, void* CallbackFunction) const

void HDrawingObject::SetDrawingObjectCallback(const char* DrawObjectEvent, void* CallbackFunction) const

void HDrawingObject::SetDrawingObjectCallback(const wchar_t* DrawObjectEvent, void* CallbackFunction) const   (Nur Windows)

static void HOperatorSet.SetDrawingObjectCallback(HTuple drawHandle, HTuple drawObjectEvent, HTuple callbackFunction)

void HDrawingObject.SetDrawingObjectCallback(HTuple drawObjectEvent, HTuple callbackFunction)

void HDrawingObject.SetDrawingObjectCallback(string drawObjectEvent, IntPtr callbackFunction)

Beschreibung

set_drawing_object_callbackset_drawing_object_callbackSetDrawingObjectCallbackSetDrawingObjectCallbackSetDrawingObjectCallback fügt die Rückruffunktion CallbackFunctionCallbackFunctionCallbackFunctionCallbackFunctioncallbackFunction zu einem Zeichenobjekt hinzu, die bei einem definierten Event DrawObjectEventDrawObjectEventDrawObjectEventDrawObjectEventdrawObjectEvent 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_windowAttachDrawingObjectToWindowAttachDrawingObjectToWindowAttachDrawingObjectToWindow, ausgelöst wird und den Status des Zeichenobjekts verändert. Der Operator set_drawing_object_callbackset_drawing_object_callbackSetDrawingObjectCallbackSetDrawingObjectCallbackSetDrawingObjectCallback 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"

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"

Die entsprechende Rückruffunktion wird gleich nach dem Entfernen des Zeichenobjekts vom Fenster aufgerufen.

'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"

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"

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 DrawObjectEventDrawObjectEventDrawObjectEventDrawObjectEventdrawObjectEvent und CallbackFunctionCallbackFunctionCallbackFunctionCallbackFunctioncallbackFunction die gleiche Länge haben. Es ist ebenso möglich die gleiche Rückruffunktion für verschiedene Events zu definieren. Dann kann DrawObjectEventDrawObjectEventDrawObjectEventDrawObjectEventdrawObjectEvent eine beliebige Länge haben und CallbackFunctionCallbackFunctionCallbackFunctionCallbackFunctioncallbackFunction 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 DrawHandle, long WindowHandle, char* type)

Unter Windows 32 bit Systemen, wird die __stdcall Namenskonvention benutzt:

Herror (__stdcall HDrawObjCallback)(long DrawHandle, 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.

Achtung

Es darf kein graphischer Operator innerhalb der Rückruffunktion aufgerufen werden, wie. z.B. disp_objdisp_objDispObjDispObjDispObj, da sonst ein Deadlock vorkommen könnte.

Ausführungsinformationen

Parameter

DrawHandleDrawHandleDrawHandleDrawHandledrawHandle (input_control)  drawing_object HDrawingObject, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handle des Zeichenobjekts.

DrawObjectEventDrawObjectEventDrawObjectEventDrawObjectEventdrawObjectEvent (input_control)  string(-array) HTupleHTupleHtuple (string) (string) (HString) (char*)

Liste der zu setzenden Events.

Wertevorschläge: 'on_resize'"on_resize""on_resize""on_resize""on_resize", 'on_drag'"on_drag""on_drag""on_drag""on_drag", 'on_attach'"on_attach""on_attach""on_attach""on_attach", 'on_detach'"on_detach""on_detach""on_detach""on_detach", 'on_select'"on_select""on_select""on_select""on_select"

CallbackFunctionCallbackFunctionCallbackFunctionCallbackFunctioncallbackFunction (input_control)  pointer(-array) HTupleHTupleHtuple (integer) (IntPtr) (Hlong) (Hlong)

Liste entsprechenden Callback-Funktionen.

Ergebnis

set_drawing_object_callbackset_drawing_object_callbackSetDrawingObjectCallbackSetDrawingObjectCallbackSetDrawingObjectCallback liefert den Wert 2 (H_MSG_TRUE), falls DrawHandleDrawHandleDrawHandleDrawHandledrawHandle und DrawObjectEventDrawObjectEventDrawObjectEventDrawObjectEventdrawObjectEvent gültig sind. Ansonsten wird eine Fehlerbehandlung durchgeführt.

Vorgänger

attach_drawing_object_to_windowattach_drawing_object_to_windowAttachDrawingObjectToWindowAttachDrawingObjectToWindowAttachDrawingObjectToWindow

Nachfolger

close_windowclose_windowCloseWindowCloseWindowCloseWindow, clear_drawing_objectclear_drawing_objectClearDrawingObjectClearDrawingObjectClearDrawingObject, detach_drawing_object_from_windowdetach_drawing_object_from_windowDetachDrawingObjectFromWindowDetachDrawingObjectFromWindowDetachDrawingObjectFromWindow, get_drawing_object_iconicget_drawing_object_iconicGetDrawingObjectIconicGetDrawingObjectIconicGetDrawingObjectIconic, get_drawing_object_paramsget_drawing_object_paramsGetDrawingObjectParamsGetDrawingObjectParamsGetDrawingObjectParams

Siehe auch

create_drawing_object_rectangle1create_drawing_object_rectangle1CreateDrawingObjectRectangle1CreateDrawingObjectRectangle1CreateDrawingObjectRectangle1, attach_drawing_object_to_windowattach_drawing_object_to_windowAttachDrawingObjectToWindowAttachDrawingObjectToWindowAttachDrawingObjectToWindow, detach_drawing_object_from_windowdetach_drawing_object_from_windowDetachDrawingObjectFromWindowDetachDrawingObjectFromWindowDetachDrawingObjectFromWindow

Modul

Foundation