TButton* but[10];
for(int i=0; i<sizeof(but)/sizeof(but[0]); i++)
{
but = new TButton(this);
but->Parent=this;
but->Caption=AnsiString("Button-")+AnsiString(i);
but->Top=i*25;
but->Left=100;
}
Объекты
............................
TButton *but;
for(int i=0;i<10;i++)
{
but=new TButton(this);
but->Parent=this;
but->Caption=AnsiString("Button-")+AnsiString(i);
but->Top=i*25;
but->Left=100;
}
..............................
Cоздаеться 10 объектов класса TButton.
Как я могу теперь обратиться к каждому созданному объекту по отдельности ? Очевидно что то связано с индексом, но синтаксис мне не известен....
Цитата:
Originally posted by Pennywise
Cоздаю кнопки по следущей схеме:
............................
TButton *but;
for(int i=0;i<10;i++)
{
but=new TButton(this);
but->Parent=this;
but->Caption=AnsiString("Button-")+AnsiString(i);
but->Top=i*25;
but->Left=100;
}
..............................
Cоздаеться 10 объектов класса TButton.
Как я могу теперь обратиться к каждому созданному объекту по отдельности ? Очевидно что то связано с индексом, но синтаксис мне не известен....
Cоздаю кнопки по следущей схеме:
............................
TButton *but;
for(int i=0;i<10;i++)
{
but=new TButton(this);
but->Parent=this;
but->Caption=AnsiString("Button-")+AnsiString(i);
but->Top=i*25;
but->Left=100;
}
..............................
Cоздаеться 10 объектов класса TButton.
Как я могу теперь обратиться к каждому созданному объекту по отдельности ? Очевидно что то связано с индексом, но синтаксис мне не известен....
Нормальным (обычным С++) способом никак.
Не знаю, как в VCL, а в MFC есть способ получить по хендлу окна указатель на связанного с ним экземпляром класса. Но это все "одевание штанов через голову".
Проще сразу сохранять указатели на созданные объекты, т.е. несколько переписать Ваш код:
Код: