![]() |
Controlar componentes creados en tiempo de ejecución.
Buenas a todos.
Mi problema es el siguiente: he creado una aplicación que tiene un componente TPageControl que crea sus correspondientes TTabSheet en tiempo de ejecución mediante un botón. Además incluye dentro de ella un TFrame con un componente TEdit. [code] var NuevaPestaña:TTabSheet; n:integer; begin NuevaPestaña:=TTabSheet.Create(PageControl1); NuevaPestaña.PageControl:= PageControl1; n:=PageControl1.PageCount; NuevaPestaña.Caption := 'Panel'+ IntToStr(n); NuevaPestaña.Name:= 'Panel'+ IntToStr(n); NuevaPestaña.Show; with TFrame1.Create(nil) do begin Parent:= NuevaPestaña; Edit1.Text:=NuevaPestaña.Name; end; [code] Mi pregunta es la siguiente: ¿Cómo puedo hacer para acceder al contenido de ese Edit desde cualquier otra parte del formulario, por ejemplo si lo quisiese copiar en otro Edit situado fuera del TPageControl, en tiempo de ejecución? Muchas gracias a todos. |
Al igual que cuando creas la pestaña, le asignas un nombre, cuando creas el frame, asignale un nombre también.
De esta forma podrás acceder como:
Suponiendo que el frame ya contenga el edit y que se llame Edit1. Si va a crear varios frames utilizando la misma variable, deberás buscarlos por el nombre (FindComponent) o crearte una lista de objetos (TObjectList) donde almacenarlos para poder accederlos más fácilmente. |
La franja horaria es GMT +2. Ahora son las 04:35:56. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi