KlassenKlassenKlassenKlassen | | | | Operatoren

drag_region1drag_region1DragRegion1drag_region1DragRegion1DragRegion1 (Operator)

Name

drag_region1drag_region1DragRegion1drag_region1DragRegion1DragRegion1 — Interaktives Verschieben einer Region.

Signatur

drag_region1(SourceRegion : DestinationRegion : WindowHandle : )

Herror drag_region1(const Hobject SourceRegion, Hobject* DestinationRegion, const Hlong WindowHandle)

Herror T_drag_region1(const Hobject SourceRegion, Hobject* DestinationRegion, const Htuple WindowHandle)

Herror drag_region1(Hobject SourceRegion, Hobject* DestinationRegion, const HTuple& WindowHandle)

HRegionArray HRegionArray::DragRegion1(const HTuple& WindowHandle) const

void DragRegion1(const HObject& SourceRegion, HObject* DestinationRegion, const HTuple& WindowHandle)

HRegion HRegion::DragRegion1(const HWindow& WindowHandle) const

HRegion HWindow::DragRegion1(const HRegion& SourceRegion) const

void HOperatorSetX.DragRegion1(
[in] IHUntypedObjectX* SourceRegion, [out] IHUntypedObjectX*DestinationRegion, [in] VARIANT WindowHandle)

IHRegionX* HRegionX.DragRegion1([in] IHWindowX* WindowHandle)

IHRegionX* HWindowX.DragRegion1([in] IHRegionX* SourceRegion)

static void HOperatorSet.DragRegion1(HObject sourceRegion, out HObject destinationRegion, HTuple windowHandle)

HRegion HRegion.DragRegion1(HWindow windowHandle)

HRegion HWindow.DragRegion1(HRegion sourceRegion)

Beschreibung

drag_region1drag_region1DragRegion1drag_region1DragRegion1DragRegion1 dient dazu, die Region mit der Maus auf dem Bildschirm zu verschieben. Nach dem Aufruf von drag_region1drag_region1DragRegion1drag_region1DragRegion1DragRegion1 wird die Region sichtbar, sobald die linke Maustaste betätigt wird. Es wird dabei nur der Rand der Region dargestellt. Als Darstellungsmodus wird für die Dauer der Prozedur der Modus 'not' (siehe set_drawset_drawSetDrawset_drawSetDrawSetDraw) verwendet. Der Mauscursor befindet sich während des Verschiebens im Schwerpunkt der Region. Wird die Maus mit gedrückter linker Maustaste verschoben, folgt die dargestellte Region - verzögert - dieser Bewegung. Wird die rechte Maustaste gedrückt, so wird drag_region1drag_region1DragRegion1drag_region1DragRegion1DragRegion1 beendet. Unter OS X kann drag_region1drag_region1DragRegion1drag_region1DragRegion1DragRegion1 auch durch Drücken der Escape-Taste beendet werden. Die Darstellung der Region auf dem Bildschirm verschwindet. Ausgegeben wird eine Region, die der letzten Position auf dem Bildschirm entspricht. Es können auch mehrere Regionen auf einmal übergeben werden. Die Grauwerte können mit dem Operator affine_trans_imageaffine_trans_imageAffineTransImageaffine_trans_imageAffineTransImageAffineTransImage verschoben werden.

Achtung

Die Grauwerte der Regionen werden nicht verschoben. Da die Eingaberegion verschoben wird, ist nicht sichergestellt, dass die Grauwerte der Ausgaberegionen sinnvoll besetzt sind. Dieser Fall kann eintreten, wenn die Grauwerte der Eingaberegionen nicht das ganze Bild umfassen.

Parallelisierung

Parameter

SourceRegionSourceRegionSourceRegionSourceRegionSourceRegionsourceRegion (input_object)  region-array objectHRegionHRegionHRegionArrayHRegionXHobject

Zu verschiebende Regionen.

DestinationRegionDestinationRegionDestinationRegionDestinationRegionDestinationRegiondestinationRegion (output_object)  region-array objectHRegionHRegionHRegionArrayHRegionXHobject *

Verschobene Regionen.

WindowHandleWindowHandleWindowHandleWindowHandleWindowHandlewindowHandle (input_control)  window HWindow, HTupleHTupleHTupleHWindowX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

Fenster-Handle.

Beispiel (HDevelop)

draw_region(Obj,WindowHandle)
dev_set_color ('green')
drag_region1(Obj,New,WindowHandle)
dev_display(New)
get_region_runs (Obj, Rows1, ColumnBegins1, ColumnEnds1)
get_region_runs (New, Rows2, ColumnBegins2, ColumnEnds2)
Row1 := Rows1[0]
Column1 := ColumnBegins1[0]
Row2 := Rows2[0]
Column2 := ColumnBegins2[0]
dev_set_color ('white')
gen_arrow_contour_xld (Arrow, Row1,Column1,Row2,Column2, 5, 5)
dev_display (Arrow)

Beispiel (C)

draw_region(&Obj,WindowHandle) ;
drag_region1(Obj,&New,WindowHandle) ;
disp_region(New,WindowHandle) ;

Beispiel (HDevelop)

draw_region(Obj,WindowHandle)
dev_set_color ('green')
drag_region1(Obj,New,WindowHandle)
dev_display(New)
get_region_runs (Obj, Rows1, ColumnBegins1, ColumnEnds1)
get_region_runs (New, Rows2, ColumnBegins2, ColumnEnds2)
Row1 := Rows1[0]
Column1 := ColumnBegins1[0]
Row2 := Rows2[0]
Column2 := ColumnBegins2[0]
dev_set_color ('white')
gen_arrow_contour_xld (Arrow, Row1,Column1,Row2,Column2, 5, 5)
dev_display (Arrow)

Beispiel (HDevelop)

draw_region(Obj,WindowHandle)
dev_set_color ('green')
drag_region1(Obj,New,WindowHandle)
dev_display(New)
get_region_runs (Obj, Rows1, ColumnBegins1, ColumnEnds1)
get_region_runs (New, Rows2, ColumnBegins2, ColumnEnds2)
Row1 := Rows1[0]
Column1 := ColumnBegins1[0]
Row2 := Rows2[0]
Column2 := ColumnBegins2[0]
dev_set_color ('white')
gen_arrow_contour_xld (Arrow, Row1,Column1,Row2,Column2, 5, 5)
dev_display (Arrow)

Beispiel (HDevelop)

draw_region(Obj,WindowHandle)
dev_set_color ('green')
drag_region1(Obj,New,WindowHandle)
dev_display(New)
get_region_runs (Obj, Rows1, ColumnBegins1, ColumnEnds1)
get_region_runs (New, Rows2, ColumnBegins2, ColumnEnds2)
Row1 := Rows1[0]
Column1 := ColumnBegins1[0]
Row2 := Rows2[0]
Column2 := ColumnBegins2[0]
dev_set_color ('white')
gen_arrow_contour_xld (Arrow, Row1,Column1,Row2,Column2, 5, 5)
dev_display (Arrow)

Beispiel (HDevelop)

draw_region(Obj,WindowHandle)
dev_set_color ('green')
drag_region1(Obj,New,WindowHandle)
dev_display(New)
get_region_runs (Obj, Rows1, ColumnBegins1, ColumnEnds1)
get_region_runs (New, Rows2, ColumnBegins2, ColumnEnds2)
Row1 := Rows1[0]
Column1 := ColumnBegins1[0]
Row2 := Rows2[0]
Column2 := ColumnBegins2[0]
dev_set_color ('white')
gen_arrow_contour_xld (Arrow, Row1,Column1,Row2,Column2, 5, 5)
dev_display (Arrow)

Ergebnis

drag_region1drag_region1DragRegion1drag_region1DragRegion1DragRegion1 liefert den Wert 2 (H_MSG_TRUE), falls eine Region eingegeben wird, das Fenster gültig ist und der benötigte Zeichenmodus (siehe set_insertset_insertSetInsertset_insertSetInsertSetInsert) verfügbar ist. Ansonsten wird eine Fehlerbehandlung durchgeführt. Das Verhalten bei einer leeren Eingabe kann mit set_system(::'no_object_result',<Result>:)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>) bestimmt werden.

Vorgänger

open_windowopen_windowOpenWindowopen_windowOpenWindowOpenWindow

Nachfolger

reduce_domainreduce_domainReduceDomainreduce_domainReduceDomainReduceDomain, disp_regiondisp_regionDispRegiondisp_regionDispRegionDispRegion, set_coloredset_coloredSetColoredset_coloredSetColoredSetColored, set_line_widthset_line_widthSetLineWidthset_line_widthSetLineWidthSetLineWidth, set_drawset_drawSetDrawset_drawSetDrawSetDraw, set_insertset_insertSetInsertset_insertSetInsertSetInsert

Alternativen

get_mpositionget_mpositionGetMpositionget_mpositionGetMpositionGetMposition, move_regionmove_regionMoveRegionmove_regionMoveRegionMoveRegion

Siehe auch

set_insertset_insertSetInsertset_insertSetInsertSetInsert, set_drawset_drawSetDrawset_drawSetDrawSetDraw, affine_trans_imageaffine_trans_imageAffineTransImageaffine_trans_imageAffineTransImageAffineTransImage

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren