Punteros a objetos
Hola, en un programa c++ Builder, tengo una matriz con 60 objetos TPanel y en ejecución les tengo que dar nombre (Panel1->Caption), pero como es lógico no quiero llamar uno a uno. ¿Cómo se puede hacer de una manera sencilla?. Es decir:
en vez de Panel1->Caption="1"; Panel2->Caption="2"; Panel3->Caption="3"; etc.. algo así: for(a=1;a<=60;a++){ Panel[a]->Caption=a; } Gracias. |
Pues esa parece la forma más razonable de hacerlo. Fíjate en este código. Las matrices en C comienzan en el elemento "CERO"
Código:
for(a=0; a<60; a++){ Creando, además los TPanel: Código:
TPanel Panel[60]; Saludos. |
no se crear los TPanel
Aquí tengo el problema, que no se crear los TPanel
al escribir el código: TPanel Panel[60]; me da un error. |
Si, no te lo explique lo suficientemente y asumí que sabias que NO puedes crear directamente una matriz de objetos VCL sino una matriz de punteros a objetos VCL (Un puntero a puntero)
Para crear: Código:
TPanel** Panel = new TPanel*[60]; Código:
for(int n=0; n<60; n++){ Aclaración: Creo los TPanel así new TPanel(this) asumiendo que this es un form (osea un TComponent*) En caso contrario, que this no sea un TComponent* fallará |
Ok, muchas gracias. Me ha valido perfectamente.
|
La franja horaria es GMT +2. Ahora son las 15:17:01. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi