IVisStyleProvider.PaletteColors

Синтаксис Fore

PaletteColors(PaletteID: String): Array;

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

PaletteColors(PaletteID: string): System.Array;

Параметры

PaletteID. Идентификатор палитры.

Описание

Метод PaletteColors используется для получения массива основных цветов по идентификатору палитры.

Комментарии

Для получения массива строк с идентификаторами альтернативных наборов палитр используйте метод IVisStyleProvider.PaletteIDs.

Пример Fore

Для выполнения примера предполагается наличие формы, содержащей компонент ComboBox с идентификатором «ComboBox1», компонент UiTabSheet с идентификатором «UiTabSheet1», компонент TabSheetBox с идентификатором «TabSheetBox1». Укажите «UiTabSheet1» в качестве источника данных для «TabSheetBox1». Компонент «ComboBox1» содержит список стилей.

Пример является обработчиком события OnChange для компонента «ComboBox1».

Добавьте ссылку на системную сборку Drawing.

Sub ComboBox1OnChange(Sender: Object; Args: IEventArgs);
Var
    sp: IVisStyleProvider;
    TabSheet: ITabSheet;
    count, i, Index: Integer;
    Item:  String;
    PaletteColor: Array Of Integer;
Begin
    sp := New VisStyleProvider.Create;
    TabSheet := UiTabSheet1.TabSheet;
    Index := ComboBox1.ItemIndex;
    Item := ComboBox1.Items.Item(Index);
    PaletteColor := sp.PaletteColors((Item="default")?"":Item);
    For i := 0 To sp.PaletteIDs.Length-1 Do
        TabSheet.Cell(i,count).Style.BackgroundColor := GxColor.FromValue(PaletteColor[i]*-1);
    End For;
    count := count + 1;
End Sub ComboBox1OnChange;

При выборе стиля из раскрывающегося списка «ComboBox1» происходит заливка ячеек табличного листа согласно выбранному стилю.

Пример Fore.NET

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

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

Private Sub comboBox1_SelectedValueChanged(sender: System.Object; e: System.EventArgs);
Var
    sp: IVisStyleProvider;
    TabSheet: ITabSheet;
    count, i, Index: Integer;
    Item: object;
    PaletteColor: Array Of Integer;
    GxColor: GxColorClassClass = New GxColorClassClass();
    value: uinteger;
Begin
    sp := New VisStyleProvider.Create();
    TabSheet := uiTabSheetNet1.TabSheetUi.TabSheet;
    Index := comboBox1.SelectedIndex;
    Item := comboBox1.Items.Item[Index];
    PaletteColor := sp.PaletteColors((Item="default")?"":Item);
    For i := 0 To sp.PaletteIDs().Length-1 Do
        value := (PaletteColor[i]*-1As uinteger;
        TabSheet.Cell[i,count].Style.BackgroundColor := GxColor.FromValue(value);
    End For;
    count := count + 1;
End Sub;

См. также:

IVisStyleProvider