ITabSheet.CreateExpander

Синтаксис Fore

CreateExpander(Row: Integer; Column: Integer; Length; Integer; ExpanderKind: TabExpanderKind);

Синтаксис Fore.NET

CreateExpander(Row: integer; Column: integer; Length; integer; ExpanderKind:  Prognoz.Platform.Interop.Tab.TabExpanderKind);

Параметры

Row. Индекс строки, в которой располагается ячейка с экспандером. Допустимое значение параметра находится в диапазоне [0;ITabSheet.RowsCount).

Column. Индекс столбца, в котором располагается ячейка с экспандером. Допустимое значение параметра находится в диапазоне [0; ITabSheet.ColumnsCount);

Length. Количество строк/столбцов, попадающих под действие экспандера. Параметр может принимать и отрицательные значения;

ExpanderKind. Тип знака иерархии.

Описание

Метод CreateExpander позволяет создать экспандер в ячейке, координаты которой передаются в качестве входных параметров Row и Column.

Комментарии

Если параметр Length принимает положительное значение, то экспандер раскрывается вниз и вправо, если отрицательное значение - то вверх и влево.

Для изменения пиктограммы экспандера используйте свойства ITabSheet.ExpanderOnPicture и ITabSheet.ExpanderOffPicture.

Пример Fore

Для выполнения примера в репозитории предполагается наличие регламентного отчета с идентификатором «REP_TABSHEET». В файловой системе должны присутствовать два изображения: «C:/On.gif» и «C:/Off.gif».

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

Sub UserProc;
Var
    MB: IMetabase;
    Rep: IPrxReport;
    SheetT: IPrxTable;
    Tab: ITabSheet;
    TImg: ITabImages;
    ExpOn, ExpOff: Integer;
Begin
    MB := MetabaseClass.Active;
    Rep := MB.ItemById("REP_TABSHEET").Edit As IPrxReport;
    SheetT := Rep.Sheets.Item(0As IPrxTable;
    Tab := SheetT.TabSheet;
    Tab.CreateExpander(004, TabExpanderKind.Rows);
    TImg := Tab.Images;
    ExpOn := TImg.Add(GxImage.FromFile("C:/On.gif"));
    ExpOff := TImg.Add(GxImage.FromFile("C:/Off.gif"));
    Tab.ExpanderOnPicture := ExpOn;
    Tab.ExpanderOffPicture := ExpOff;
    (Rep As IMetabaseObject).Save;
End Sub UserProc;

После выполнения примера для свернутого и развернутого экспандера будут назначены новые пиктограммы, соответствующие изображениям «C:/On.gif» и «C:/Off.gif».

Пример Fore.NET

Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.

Imports Prognoz.Platform.Interop.Drawing;
Imports Prognoz.Platform.Interop.Report;
Imports Prognoz.Platform.Interop.Tab;

Public Shared Sub Main(Params: StartParams);
Var
    MB: IMetabase;
    Rep: IPrxReport;
    SheetT: IPrxTable;
    Tab: ITabSheet;
    TImg: ITabImages;
    ExpOn, ExpOff: Integer;
    GxImg: GxImageClassClass = New GxImageClassClass.create();
Begin
    MB := Params.Metabase;
    Rep := MB.ItemById["REP_TABSHEET"].Edit() As IPrxReport;
    SheetT := Rep.Sheets.Item[0As IPrxTable;
    Tab := SheetT.TabSheet;
    Tab.CreateExpander(004, TabExpanderKind.tekRows);
    TImg := Tab.Images;
    ExpOn := TImg.Add(GxImg.FromFile("C:/On.gif"));
    ExpOff := TImg.Add(GxImg.FromFile("C:/Off.gif"));
    Tab.ExpanderOnPicture := ExpOn;
    Tab.ExpanderOffPicture := ExpOff;
    (Rep As IMetabaseObject).Save();
End Sub;

См. также:

ITabSheet