0

シリーズの 1 つのバーにのみパターンを提供するにはどうすればよいでしょうか。たとえば、私のシリーズに 4 つのバーがあるとします。バーをクリックすると、パターンが変更されます。特定のポイントの色を変更する機能を知っています。

4

1 に答える 1

0

パターンを配列に保存し、OnGetSeriesBarStyleイベントで設定できます。ここに例があります:

Dim myPatterns() As Integer

Private Sub Form_Load()      
  TChart1.AddSeries scBar
  TChart1.Series(0).FillSampleValues

  ReDim myPatterns(TChart1.Series(0).Count)
  Dim i As Integer
  For i = LBound(myPatterns) To UBound(myPatterns)
    myPatterns(i) = 0
  Next i
End Sub


Private Sub TChart1_OnClickSeries(ByVal SeriesIndex As Long, ByVal ValueIndex As Long, ByVal Button As TeeChart.EMouseButton, ByVal Shift As TeeChart.EShiftState, ByVal X As Long, ByVal Y As Long)
  If SeriesIndex > -1 And ValueIndex > -1 Then
    myPatterns(ValueIndex) = (myPatterns(ValueIndex) + 1) Mod 20
  End If

  TChart1.Repaint
End Sub

Private Sub TChart1_OnGetSeriesBarStyle(ByVal SeriesIndex As Long, ByVal ValueIndex As Long, BarStyle As TeeChart.EBarStyle)
  If SeriesIndex > -1 And ValueIndex > -1 Then
    TChart1.Series(SeriesIndex).asBar.BarBrush.ClearImage
    TChart1.Series(SeriesIndex).asBar.BarBrush.Style = myPatterns(ValueIndex)
  End If
End Sub
于 2013-08-08T11:36:49.913 に答える