Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Pasarle un parameto al With ...??? (https://www.clubdelphi.com/foros/showthread.php?t=6923)

ingel 27-01-2004 21:34:38

Pasarle un parameto al With ...???
 
Hola ... despues de hoy prometo no escribir por unos dias ... ;)

Segun una var creo un form u otro y tengo un with que es igual para los 2
como se lo indico?

if lApaisada then Application.CreateForm(TFImpOcapa, FImpOcApa)
else Application.CreateForm(TFImpOc, FImpOc);

with FImpOcapa do begin
( o FImpOc )
....
end;

puedo hacer un procedimiento que reciba un form y escribir dentro lo del with o hay algo mas simple ...?

Gracias mil

marto 28-01-2004 11:38:14

Código:

var
  Frm: TForm;
begin
  if lApaisada then
    Frm :=TFImpOcapa.Create(Application)
  else
    Frm :=TFImpOc.Create(Application)

  with Frm do
  begin
    ....
  end;

Bienvenido al Polimorfismo :cool:

P.D: Dentro del with solo puedes usar propiedades / métodos de TForm, sinó, no te compilará. Si quieres usa lo de los dos forms que sean comunes tendrías que hacer que ambos heredasen de uno comun en el que se implementen esas propiedades / métodos.

marto 30-01-2004 20:41:08

Ingel, me has contestado via e-mail. Ante esto te he decir 2 cosas:

1.- Lee la guia de estilo (tienes el link en mi firma) y verás por qué no tienes que hacer eso

2.- Si me envias un e-mail pero en un tu perfil tienes deshabilitada la opción de recibir mensajes.... ¿como se supone que te tengo que contestar?

Reproduce aquí tus dudas y yo o cualquier otro compaañero que sepa cómo te ayudaremos con mucho gusto.

ingel 30-01-2004 22:12:14

disculpas ..
 
como no he respondido ningun mensaje , no sabia como hacerlo .. y lei la guia de estilo despues de enviarte el email ... disculpas nuevamente...
El problema es que al hacerlo como me indicaste ...

Frm: TForm;
begin

if lApaisada then
Frm :=TFImpOcapa.Create(Application)
else
Frm :=TFImpOc.Create(Application);

with Frm do begin

QRParam.Caption := EProveedor.text;
QREntEstimada.Caption := EFechaEstimada.Text;
....
end:

me dice que no reconoce QRParam ...(undeclared identifier) la primera instrucccion del with ...
probe poner a frm del tipo TFImpOcapa y paso bien ...pero no seria solucion ..verdad porque tambien necesito que sea TFImpoc ....

Gracias ...

jachguate 30-01-2004 22:29:41

Ya el amigo marto te ha explicado que solamente podes utilizar métodos y propiedades del TForm. QRParam, no es una propiedad del TForm y por tanto el código no compilará. Repitiendo:

Cita:

Bienvenido al Polimorfismo

P.D: Dentro del with solo puedes usar propiedades / métodos de TForm, sinó, no te compilará. Si quieres usa lo de los dos forms que sean comunes tendrías que hacer que ambos heredasen de uno comun en el que se implementen esas propiedades / métodos.
Hasta luego.

;)


La franja horaria es GMT +2. Ahora son las 02:49:13.

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