2014-10-20 118 views
0

下面的代码会导致访问冲突。谁能帮我这个。TeeChart中的访问冲突

for(long i = nTools-1; i > 0 ; i--) 
{ 
    if(m_spGraph.GetTools().GetItems(i).GetToolType() == 25 && m_spGraph.GetTools().GetItems(i).GetAsRectangle().GetAllowDrag() == TRUE) // Rectangle tool 
    { 
     m_spGraph.GetTools().Delete(i); 
    } 
} 

感谢 阿克沙伊

回答

1

在VB6中,我办这个,然后我打开一个编辑,我看到5个矩形工具和5个注释工具:

TChart1.AddSeries scBar 
    TChart1.Series(0).FillSampleValues 8 

    Dim i As Integer 
    For i = 0 To 9 
    If (i Mod 2 = 0) Then 
     TChart1.Tools.Add tcRectangle 
    Else 
     TChart1.Tools.Add tcAnnotate 
    End If 
    Next i 

然后,如果我跑这然后我再次打开编辑器,我只看到5个注释工具:

For i = TChart1.Tools.Count - 1 To 0 Step -1 
    If (TChart1.Tools.Items(i).ToolType = 25 And TChart1.Tools.Items(i).asRectangle.AllowDrag) Then 
     TChart1.Tools.Delete i 
    End If 
    Next i 

所以我我似乎在这里工作得很好。
您是否尝试过使用不同的TeeChart ActiveX版本?你们每个人都得到了不同的结果吗?

请编辑您的问题并添加一个SSCCE,这样我们就可以在这里重现问题并尝试计算代码或组件中是否存在问题。