2014-10-20 2 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 

So i t, кажется, работает отлично для меня здесь.
Вы пробовали его с различными сборками TeeChart ActiveX? Получали ли вы разные результаты с каждым из них?

Пожалуйста, отредактируйте ваш вопрос, добавив SSCCE, чтобы мы могли воспроизвести проблему здесь и попытаться понять, есть ли проблемы в вашем коде или в компоненте.

Смежные вопросы