Поделиться через


Chart.GetChartElement - метод

Возвращает информацию об элементе диаграммы, находящегося в точке, заданной координатами X и Y.

Пространство имен:  Microsoft.Office.Tools.Excel
Сборка:  Microsoft.Office.Tools.Excel (в Microsoft.Office.Tools.Excel.dll)

Синтаксис

'Декларация
Sub GetChartElement ( _
    x As Integer, _
    y As Integer, _
    ByRef ElementID As Integer, _
    ByRef Arg1 As Integer, _
    ByRef Arg2 As Integer _
)
void GetChartElement(
    int x,
    int y,
    ref int ElementID,
    ref int Arg1,
    ref int Arg2
)

Параметры

  • x
    Тип: System.Int32
    Координата X элемента диаграммы.
  • y
    Тип: System.Int32
    Координата Y элемента диаграммы.
  • ElementID
    Тип: System.Int32%
    По завершении выполнения метода этот аргумент содержит значение XlChartItem элемента диаграммы, находящегося по указанным координатам.Дополнительные сведения см. в разделе "Замечания".
  • Arg1
    Тип: System.Int32%
    По завершении выполнения этого метода данный аргумент содержит информацию, связанную с элементом диаграммы.Дополнительные сведения см. в разделе "Замечания".
  • Arg2
    Тип: System.Int32%
    По завершении выполнения этого метода данный аргумент содержит информацию, связанную с элементом диаграммы.Дополнительные сведения см. в разделе "Замечания".

Заметки

Необычность этого метода заключается в том, что необходимо указывать значения только для первых двух аргументов.Microsoft Office Excel автоматически присваивает значения остальным аргументам, которые должны проверяться в коде по завершении выполнения метода.

Значение аргумента ElementID по завершении выполнения метода определяет, содержат ли аргументы Arg1 и Arg2 какую-либо информацию, как показано в приведенной ниже таблице.

ElementID

Arg1

Arg2

xlAxis

AxisIndex

AxisType

xlAxisTitle

AxisIndex

AxisType

xlDisplayUnitLabel

AxisIndex

AxisType

xlMajorGridlines

AxisIndex

AxisType

xlMinorGridlines

AxisIndex

AxisType

xlPivotChartDropZone

DropZoneType

None

xlPivotChartFieldButton

DropZoneType

PivotFieldIndex

xlDownBars

GroupIndex

None

xlDropLines

GroupIndex

None

xlHiLoLines

GroupIndex

None

xlRadarAxisLabels

GroupIndex

None

xlSeriesLines

GroupIndex

None

xlUpBars

GroupIndex

None

xlChartArea

None

None

xlChartTitle

None

None

xlCorners

None

None

xlDataTable

None

None

xlFloor

None

None

xlLeaderLines

None

None

xlLegend

None

None

xlNothing

None

None

xlPlotArea

None

None

xlWalls

None

None

xlDataLabel

SeriesIndex

PointIndex

xlErrorBars

SeriesIndex

None

xlLegendEntry

SeriesIndex

None

xlLegendKey

SeriesIndex

None

xlSeries

SeriesIndex

PointIndex

xlShape

ShapeIndex

None

xlTrendline

SeriesIndex

TrendLineIndex

xlXErrorBars

SeriesIndex

None

xlYErrorBars

SeriesIndex

None

В следующей таблице поясняется значение аргументов Arg1 и Arg2 после завершения выполнения метода.

Аргумент

Описание

AxisIndex

Определяет ось как основную или дополнительную.Может быть одной из следующих констант XlAxisGroup: xlPrimary или xlSecondary.

AxisType

Определяет тип оси.Может принимать значение одной из следующих констант: XlAxisType: xlCategory, xlSeriesAxis или xlValue.

DropZoneType

Определяет тип области добавления: поле столбца, данных, страницы или строки.Может быть одной из следующих констант XlPivotFieldOrientation: xlColumnField, xlDataField, xlPageField или xlRowField.Поле столбца и поле строки определяют поле ряда и поле категории соответственно.

GroupIndex

Определяет смещение внутри коллекции ChartGroups для определенной группы диаграмм.

PivotFieldIndex

Определяет смещение внутри коллекции PivotFields для определенного поля столбца (ряда), данных, страницы или строки (категории).Принимает значение -1, если область добавления имеет тип xlDataField.

PointIndex

Определяет смещение внутри коллекции Points для определенной точки в ряде.Значение -1 указывает на то, что выбраны все точки данных.

SeriesIndex

Определяет смещение внутри коллекции Series для определенного ряда.

ShapeIndex

Определяет смещение внутри коллекции Shapes для определенной фигуры.

TrendlineIndex

Определяет смещение внутри коллекции Trendlines для определенной линии тренда в пределах ряда.

Примеры

В следующем примере кода создается объект Microsoft.Office.Tools.Excel.Chart, после чего метод GetChartElement используется для отображения элемента диаграммы, когда пользователь щелкает диаграмму мышью.

WithEvents elementChart As Microsoft.Office.Tools.Excel.Chart

Private Sub DisplayChartElement()
    Globals.Sheet1.Range("A1", "A5").Value2 = 22
    Globals.Sheet1.Range("B1", "B5").Value2 = 55

    elementChart = Me.Controls.AddChart(Me.Range("D2", "H12"), _
        "elementChart")
    elementChart.SetSourceData(Globals.Sheet1.Range("A1", "B5"), _
        Excel.XlRowCol.xlColumns)
    elementChart.ChartType = Excel.XlChartType.xl3DColumn
End Sub

Sub elementChart_MouseDownHandler(ByVal Button As Integer, ByVal Shift As Integer, _
    ByVal x As Integer, ByVal y As Integer) Handles elementChart.MouseDown

    Dim elementID As Integer = 0
    Dim arg1 As Integer = 0
    Dim arg2 As Integer = 0

    elementChart.GetChartElement(x, y, elementID, arg1, arg2)

    MsgBox("Chart element is: " & CType(elementID, Excel.XlChartItem).ToString() _
            & Constants.vbNewLine & "arg1 is: " & arg1.ToString() _
            & Constants.vbNewLine & "arg2 is: " & arg2.ToString())
End Sub
private Microsoft.Office.Tools.Excel.Chart elementChart;

private void DisplayChartElement()
{
    this.Range["A1", "A5"].Value2 = 22;
    this.Range["B1", "B5"].Value2 = 55;

    elementChart = this.Controls.AddChart(this.Range["D2", "H12"],
        "elementChart");

    elementChart.SetSourceData(this.Range["A1", "B5"],
        Excel.XlRowCol.xlColumns);
    elementChart.ChartType = Excel.XlChartType.xl3DColumn;
    elementChart.MouseDown +=
        new Excel.ChartEvents_MouseDownEventHandler(elementChart_MouseDown);
}

void elementChart_MouseDown(int Button, int Shift, int x, int y)
{
    Int32 elementID = 0;
    Int32 arg1 = 0;
    Int32 arg2 = 0;

    elementChart.GetChartElement(x, y, ref elementID, ref arg1, ref arg2);

    MessageBox.Show("Chart element is: " + ((Excel.XlChartItem)elementID).ToString()
        + "\n arg1 is: " + arg1.ToString() + "\n arg2 is: " + arg2.ToString());
}

Безопасность платформы .NET Framework

См. также

Ссылки

Chart Интерфейс

Microsoft.Office.Tools.Excel - пространство имен