Ver Mensaje Individual
  #1  
Antiguo 12-08-2011
jsc jsc is offline
Miembro
 
Registrado: nov 2003
Posts: 144
Reputación: 21
jsc Va por buen camino
mostrar una u otra form segun boton pulsado

he llegado a conseguir lo que quiero pero quisiera todavia reducir más código
a ver si podeis ayudarme

adjunto un ejemplo tonto para ver lo que quiero conseguir (delphi 7)

pulsando el boton 1 se muestra form2
pulsando el boton 2 se muestra form3

se podria reducir el codigo
Cita:
if (sender as TButton) = form1.Button1 then form := TForm2.Create (Form2) ;
if (sender as TButton).caption = form1.Button2 then form := Tform3.Create (Form3) ;
if (sender as TButton).caption = form1.Button3 then form := Tform4.Create (Form4) ;
de manera que
Código:
form:=TForm2.Create(Form2)
valdria para todos los forms?
algo asi:
Cita:
form := ('T'+variable).Create(variable)
donde "variable" seria por ejemplo el caption del boton; en este caso, form2, form3,form4

podria hacerse algo ó lo máximo que puede reducirse es como en el ejemplo que he puesto?

he hecho pruebas pero luego me da problemas al acceder a componentes de la form que se muestra, con el codigo que tenga dicha form
pongo ejemplo tonto:

Cita:
procedure inicializarvariables () ;
begin
//codigo
Form2.edit1.clear ;
end;

procedure TForm2.Form2.OnCreate (sender:Tobject)
begin
Form2.Button1.caption := 'hola'
end;

procedure TForm2.Form2.OnShow (sender:Tobject)
begin
//codigo cuando se muestra la form
inicializarvariables () ;
end;
gracias de antemano
Archivos Adjuntos
Tipo de Archivo: rar pruebaprog.rar (11,6 KB, 3 visitas)
Responder Con Cita