IWxShape.GroupBehaviour

Синтаксис

GroupBehaviour: WxGroupBehaviour;

GroupBehaviour: Prognoz.Platform.Interop.Andy.WxGroupBehaviour;

Описание

Свойство GroupBehaviour определяет поведение объекта при изменении размера группы, в которую он включен.

По умолчанию свойство установлено в ScaleWithGroup (при изменении размера группы размер объекта будет масштабироваться).

Пример

Для выполнения примера предполагается наличие формы, расположенной на ней кнопки с наименованием «Button1», компонента WorkspaceBox с наименованием «WorkspaceBox1» и какого-либо источника данных для «WorkspaceBox1».

Добавьте ссылки на системные сборки: Andy, Drawing, Workspace.

Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
Var
    Ws: IWxWorkspace;
    i: Integer;
    shape: IWxShape;
    Reg: IWxRegulargon;
    Rec: IWxRoundedRectangle;
Begin
    Ws := WorkspaceBox1.View.Workspace;
    Reg := Ws.CreateRegulargon;
    Reg.Id := "Reg1";
    Reg.PinPosition := New GxPointF.Create(122);
    Reg.NumberOfSides := 5;
    Reg.Text := "Трапеция";
    Rec := Ws.CreateRoundedRectangle;
    Rec.Id := "Rectangle1";
    Rec.PinPosition := New GxPointF.Create(12.3,-2);
    Rec.RoundingOffset := 9;
    Rec.Text := "Фигура";
    shape := Ws.Shapes.Item(0);
    shape.GroupBehaviour := WxGroupBehaviour.RepositionOnly;
    For i := 0 To Ws.Shapes.Count - 1 Do
        WorkspaceBox1.View.SelectedShapes.Add(Ws.Shapes.Item(i));
    End For;
    WorkspaceBox1.View.GroupSelectedShapes;
End Sub Button1OnClick;
Imports Prognoz.Platform.Interop.Andy;
Imports Prognoz.Platform.Interop.Drawing;
Imports Prognoz.Platform.Interop.Workspace;


Private Sub button1_Click(sender: System.Object; e: System.EventArgs);
Var
    Ws: IWxWorkspace;
    i: Integer;
    shape: IWxShape;
    Reg: IWxRegulargon;
    Rec: IWxRoundedRectangle;
    OutPoint: GxPointF = 
New GxPointFClass();
Begin
    Ws := workspaceBoxNet1.View.Workspace;
    Reg := Ws.CreateRegulargon();
    Reg.Id := 
"Reg1";
    OutPoint.Create(
122);
    Reg.PinPosition := OutPoint;
    Reg.NumberOfSides := 
5;
    Reg.Text := 
"Трапеция";
    Rec := Ws.CreateRoundedRectangle();
    Rec.Id := 
"Rectangle1";
    OutPoint.Create(
12.3,-2);
    Rec.PinPosition := OutPoint;
    Rec.RoundingOffset := 
9;
    Rec.Text := 
"Фигура";
    shape := Ws.Shapes.Item[
0];
    shape.GroupBehaviour := WxGroupBehaviour.wgbRepositionOnly;
    
For i := 0 To Ws.Shapes.Count - 1 Do
        workspaceBoxNet1.View.SelectedShapes.Add(Ws.Shapes.Item[i]);
    
End For;
    workspaceBoxNet1.View.GroupSelectedShapes();
End Sub;

 

После выполнения примера все объекты на рабочем пространстве будут сгруппированы, причем при изменении размера группы только первый объект не будет изменять свои размеры.

См. также:

IWxShape