Может быть вам лучше сделать так?
TLabel* pl[HH_count]; // заводим массив pl для хранения указателей
for(int i=0; i<HH_count;i++) { TLabel* l= pl[i] = new TLabel(Form1); // вместе с аллокацией запоминаем указатель в массиве pl l->Caption="T:="+FloatToStr(i); l->Parent=Chart1; l->Name="Label" + IntToStr(i); l->Transparent=true; l->Font->Size=10; l->Font->Color=clGreen; l->Top=10; l->Left=40*i; l->BringToFront(); }
Когда не нужно, удаляем:
for(int i=0; i<HH_count;i++) delete pl[i];
P.S. Судя по тому, что родитель лайблов у вас Chart1, то ваша задача, видимо, сводится к созданию надписей на графике. Если это так, то есть и альтернативная возможность - добавить на тот же график лишнюю серию (Series), состоящую из отдельных точек. Заложить в эту серию точки с нужными вам координатами и именами, а в свойствах серии указать, чтобы имя каждой точки прописывалось на графике. Сами точки можно сделать невидимыми или под цвет фона графика, тогда будут видны только надписи.
|