IChart.DisplayMode

Синтаксис Fore

DisplayMode: ChartDisplayMode;

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

DisplayMode: Prognoz.Platform.Interop.Chart.ChartDisplayMode;

Описание

Свойство DisplayMode определяет режим отображения диаграммы.

Комментарии

Для каждого типа диаграммы возможны только некоторые режимы отображения.

Пример Fore

Для выполнения примера в репозитории необходимо наличие формы, содержащей компоненты:

    Sub Form_FormOnShow(Sender: Object; Args: IEventArgs);
    Var
        c: IChart;
    Begin
        UiChart1.PointCount := 5;
        UiChart1.SerieCount := 15;
        UiChart1.Style := ChartStyle.Mixed;
        UiChart1.DisplayMode := ChartDisplayMode.ModeManhattan3D;
        UiChart1.DisplayVolume3D := True;
        c := UiChart1.Chart;
        c.DisplayMode := ChartDisplayMode.ModeManhattan3D;
        c.DisplayZAxis := True;
        c.AxisZ.Selected := True;
    End Sub Form_FormOnShow;
    
    { OnGetDataValue }
    Sub UiChart1OnGetDataValue(Sender: Object; Args: IUiChartGetDataValueEventArgs);
    Begin
        Args.Result := True;
        Args.Value := Args.PointIndex + Args.SerieIndex + 5;
    End Sub UiChart1OnGetDataValue;
    
    { OnGetGroupCount }
    Sub UiChart1OnGetGroupCount(Sender: Object; Args: IUiChartGroupCountEventArgs);
    Begin
        Args.Result := 5;
        Debug.WriteLine("OnGetGroupCount: " + Args.Result.ToString);
    End Sub UiChart1OnGetGroupCount;
    
    { OnGetGroupName }
    Sub UiChart1OnGetGroupName(Sender: Object; Args: IUiChartGroupNameEventArgs);
    Begin
        Args.Result := "GroupName " + Args.GroupIndex.ToString;
        Debug.WriteLine("OnGetGroupName: " + Args.GroupIndex.ToString);
    End Sub UiChart1OnGetGroupName;
    
    { OnGetParentSerieIndex }
    Sub UiChart1OnGetParentSerieIndex(Sender: Object; Args: IUiChartParentSerieIndexEventArgs);
    Begin
        If Args.SerieIndex < 5 Then
            Args.Result := -1;
        End If;
        Select Case Args.SerieIndex
            Case 36912: Args.Result := 0;
            Case 471013: Args.Result := 1;
            Case 581114: Args.Result := 2;
        End Select;
    End Sub UiChart1OnGetParentSerieIndex;
    
    { OnGetSerieGroupIndex }
    Sub UiChart1OnGetSerieGroupIndex(Sender: Object; Args: IUiChartSerieGroupIndexEventArgs);
    Begin
        Select Case Args.SerieIndex //5 groups
            Case 012: Args.Result := 0;
            Case 345: Args.Result := 1;
            Case 678: Args.Result := 2;
            Case 91011: Args.Result := 3;
            Case 121314: Args.Result := 4;
        End Select;
    End Sub UiChart1OnGetSerieGroupIndex;
    
    { OnGetSerieGroupName }
    Sub UiChart1OnGetSerieGroupName(Sender: Object; Args: IUiChartSerieGroupNameEventArgs);
    Begin
        Args.Result := "SerieGroupName " + Args.SerieIndex.ToString;
        Debug.WriteLine("OnGetSerieGroupName: " + Args.SerieIndex.ToString);
    End Sub UiChart1OnGetSerieGroupName;
    
    { OnGetSerieName }
    Sub UiChart1OnGetSerieName(Sender: Object; Args: IUiChartSerieNameEventArgs);
    Begin
        Args.Result := "Serie " + Args.SerieIndex.ToString;
        Debug.WriteLine("OnGetSerieName: " + Args.SerieIndex.ToString);
    End Sub UiChart1OnGetSerieName;
    
    { OnGetPointName }
    Sub UiChart1OnGetPointName(Sender: Object; Args: IUiChartPointNameEventArgs);
    Begin
        Args.Result := "Point " + Args.PointIndex.ToString;
        Debug.WriteLine("OnGetPointName: " + Args.PointIndex.ToString);
    End Sub UiChart1OnGetPointName;
    
    { OnGetRelativeSerieEnabled }
    Sub UiChart1OnGetRelativeSerieEnabled(Sender: Object; Args: IUiChartRelativeSerieEnabledEventArgs);
    Begin
        Args.Result := True;
    End Sub UiChart1OnGetRelativeSerieEnabled;

После открытия формы в компоненте ChartBox отрисуется объемная гистограмма с выделенной осью Z:

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

Пример Fore.NET

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

Imports Prognoz.Platform.Interop.Chart;

    Private Sub Form_Shown(sender: System.Object; e: System.EventArgs);
    Var
        c: IChart;
    Begin
        UiChartNet1.PointCount := 5;
        UiChartNet1.SerieCount := 15;
        UiChartNet1.Style := ChartStyle.chsMixed;
        UiChartNet1.DisplayMode := ChartDisplayMode.cdModeManhattan3D;
        UiChartNet1.DisplayVolume3D := True;
        c := UiChartNet1.ChartUi.Chart;
        c.DisplayMode := ChartDisplayMode.cdModeManhattan3D;
        c.DisplayZAxis := True;
        c.AxisZ.Selected := True;
    End Sub;
    
    { OnGetDataValue }
    Private Sub uiChartNet1_OnGetDataValue(Sender: System.Object; Args: Prognoz.Platform.Interop.Chart.UiChartGetDataValueEventArgs);
    Begin
        Args.Result := True;
        Args.Value := Args.PointIndex + Args.SerieIndex + 5;
    End Sub;
    
    { OnGetGroupCount }
    Private Sub uiChartNet1_OnGetGroupCount(Sender: System.Object; Args: Prognoz.Platform.Interop.Chart.UiChartGroupCountEventArgs);
    Begin
        Args.Result := 5;
        System.Diagnostics.Debug.WriteLine("OnGetGroupCount: " + Args.Result.ToString());
    End Sub;
    
    { OnGetGroupName }
    Private Sub uiChartNet1_OnGetGroupName(Sender: System.Object; Args: Prognoz.Platform.Interop.Chart.UiChartGroupNameEventArgs);
    Begin
        Args.Result := "GroupName " + Args.GroupIndex.ToString();
        System.Diagnostics.Debug.WriteLine("OnGetGroupName: " + Args.GroupIndex.ToString());
    End Sub;
    
    { OnGetParentSerieIndex }
    Private Sub uiChartNet1_OnGetParentSerieIndex(Sender: System.Object; Args: Prognoz.Platform.Interop.Chart.UiChartParentSerieIndexEventArgs);
    Begin
        If Args.SerieIndex < 5 Then
            Args.Result := -1;
        End If;
        Select Case Args.SerieIndex
            Case 36912: Args.Result := 0;
            Case 471013: Args.Result := 1;
            Case 581114: Args.Result := 2;
        End Select;
    End Sub;
    
    { OnGetSerieGroupIndex }
    Private Sub uiChartNet1_OnGetSerieGroupIndex(Sender: System.Object; Args: Prognoz.Platform.Interop.Chart.UiChartSerieGroupIndexEventArgs);
    Begin
        Select Case Args.SerieIndex //5 groups
            Case 012: Args.Result := 0;
            Case 345: Args.Result := 1;
            Case 678: Args.Result := 2;
            Case 91011: Args.Result := 3;
            Case 121314: Args.Result := 4;
        End Select;
    End Sub;
    
    { OnGetSerieGroupName }
    Private Sub uiChartNet1_OnGetSerieGroupName(Sender: System.Object; Args: Prognoz.Platform.Interop.Chart.UiChartSerieGroupNameEventArgs);
    Begin
        Args.Result := "SerieGroupName " + Args.SerieIndex.ToString();
        System.Diagnostics.Debug.WriteLine("OnGetSerieGroupName: " + Args.SerieIndex.ToString());
    End Sub;
    
    { OnGetSerieName }
    Private Sub uiChartNet1_OnGetSerieName(Sender: System.Object; Args: Prognoz.Platform.Interop.Chart.UiChartSerieNameEventArgs);
    Begin
        Args.Result := "Serie " + Args.SerieIndex.ToString();
        System.Diagnostics.Debug.WriteLine("OnGetSerieName: " + Args.SerieIndex.ToString());
    End Sub;
    
    { OnGetPointName }
    Private Sub uiChartNet1_OnGetPointName(Sender: System.Object; Args: Prognoz.Platform.Interop.Chart.UiChartPointNameEventArgs);
    Begin
        Args.Result := "Point " + Args.PointIndex.ToString();
        System.Diagnostics.Debug.WriteLine("OnGetPointName: " + Args.PointIndex.ToString());
    End Sub;
    
    { OnGetRelativeSerieEnabled }
    Private Sub uiChartNet1_OnGetRelativeSerieEnabled(Sender: System.Object; Args: Prognoz.Platform.Interop.Chart.UiChartRelativeSerieEnabledEventArgs);
    Begin
        Args.Result := True;
    End Sub;

См. также:

IChart