Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Formularios (https://www.clubdelphi.com/foros/showthread.php?t=23315)

Caro 13-07-2005 17:57:20

Formularios
 
Hola a todos

En mi aplicaciòn tengo muchos formularios, donde en el caption del form cargo el titulo de mi sistema, cuando me piden cambiar ese titulo debo entrar a todos los formularios y cambiarlos.
Existe alguna forma de hacer esto dinamicamente sin tener que entrar a cada formulario.

Les agradezco de antemano por su respuesta

delphi.com.ar 13-07-2005 17:59:53

Supongo que dices en tiempo de diseño... de ser así, si tus formularios no son heredados de alguna clase tuya, vas a tener que entrar uno por uno y cambiarlo.

Saludos!

Neftali [Germán.Estévez] 13-07-2005 18:07:37

Haz una cosa, déjalo en diseño como esté y en ejecución haz una llamada a un procedimiento (el mismo para todos los formularios) donde coloques el título correcto enel evento OnShow (por ejemplo de los form); De esa forma la próxima vez que debas cambiarlo sólo debes modificar ese procedimiento.

Supongo que no es importante que en diseño se vez incorrecto, siempre que en ejecución esté bien.

Yo lo que hago a veces es en diseño colocar un valor "neutro" para luego cambiarlo, por ejemplo:
<<Título del form...>>

maeyanes 13-07-2005 19:29:34

Tienes varias opciones, una constante global con el nombre del sistema, luego en cada FormShow o FormCreate del formulario haces: Caption := CONSTANTE_CON_EL_TITULO;

La otra es usar las opciones del proyecto, colocar ahí el título de tu sistema y en cada FormShow o FormCreate poner: Caption := Application.Title;

En cualquiera de los dos casos, solo tienes que modificar, ya sea la constante o las opciones del proyecto.



Saludos...

Lepe 14-07-2005 13:10:13

Siguiendo la lógica de Neftali, yo guardaría los títulos en una tabla, fichero ini camuflado o algo por el estilo.

el procedimiento que habla Neftali, simplemente tendría que hacer:
Código Delphi [-]

procedure Rescata_Titulo(Forma:Tform);
begin
  Forma.Caption := ini.ReadString('Titulos', Forma.Name, '<< Sin Titulo >> para '+ Forma.Name);
end;

Supongo que es a lo que se refería Neftali en su post. De esta forma, unicamente tienes que cambiar el fichero ini, sin tocar la aplicación.

En tiempo de ejecución identificas rapidamente si alguno no tiene nombre en el archivo ini.
Un saludo

Caro 14-07-2005 14:51:30

Muchisimas gracias a todos


La franja horaria es GMT +2. Ahora son las 00:20:15.

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