Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 04-03-2010
Lenny Lenny is offline
Miembro
 
Registrado: jun 2007
Posts: 161
Poder: 17
Lenny Va por buen camino
Question Funciones desde otras Form

Hola y muchas gracias de antemano, tengo una duda.

Tengo varios "códigos" que me gustaría usar en más de una Form, por ejemplo:


Código Delphi [-]
procedure  TEmpresas.ColorOn;
var
  i: integer;
begin
  for i := 0 to  Pred(ComponentCount) do
  begin
    if Components[i] is TDBEdit  then
      begin
        TDBEdit(Components[i]).Color := $FBEFEF;
       end;
  end;
end;
La idea es crear otra Form que contenga todos estos códigos, para no tener que reescribirlos por cada ventana, ahora la pregunta, por el momento hago el llamado desde una Form pero al ejecutarlo los cambios los hace en el Form desde el cual fue llamado, ¿Que debo hacer para que este código cambie las propiedades solo del Form desde el cual fue llamado?, e leído algo de DLL y BPL, pero no tengo idea como se usan, ¿Seria mejor así? y si es así... ¿Cómo?.

De antemano muchísimas gracias
Responder Con Cita
  #2  
Antiguo 04-03-2010
Avatar de movorack
[movorack] movorack is offline
Miguel A. Valero
 
Registrado: feb 2007
Ubicación: Bogotá - Colombia
Posts: 1.346
Poder: 20
movorack Va camino a la famamovorack Va camino a la fama
Hola, Pasale el componente o variable como parametro al procedimiento o función:

Código Delphi [-]
//En el form1
procedure TForm1.CambiarTexto(Edit : TEDit; Texto : String);
begin
  Edit.text := Texto;
end;

//En el form 2
procedure TForm2.ButtonClick1(Sender : TObject);
begin
  Form2.CambiarTexto(Edit1, 'Cualquier cosa');
end;

Saludos!
__________________
Buena caza y buen remar... http://mivaler.blogspot.com
Responder Con Cita
  #3  
Antiguo 04-03-2010
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Hola Lenny, tienes que pasar como parámetro el formulario.

Código Delphi [-]
procedure TForm1.ColorOn(form : TForm);
var
  i: integer;
begin
  for i := 0 to  Pred(form.ComponentCount) do
  begin
    if form.Components[i] is TDBEdit  then
      begin
        TDBEdit(form.Components[i]).Color := $FBEFEF;
       end;
  end;
end;

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #4  
Antiguo 04-03-2010
Lenny Lenny is offline
Miembro
 
Registrado: jun 2007
Posts: 161
Poder: 17
Lenny Va por buen camino
Question Aun no me resulta...

Muchas gracias por responder, aun toy algo complicado.

Lo que me dices Caro Funciona pero me pide algo entre (), sorry por la ingorancia lo deje asi:

Código Delphi [-]
procedure TEmpresas.ColorOn(form : TForm);
var
  i: integer;
begin
  for i := 0 to  Pred(form.ComponentCount) do
  begin
    if form.Components[i] is TDBEdit  then
      begin
        TDBEdit(form.Components[i]).Color := $FBEFEF;
       end;
  end;
end;

y desde la otra Form lo llamo asi:

Código Delphi [-]
Empresas.ColorOn;

me manda error, de echo me sale que devo escribir algo entre()

Código Delphi [-]
Empresas.ColorOn();

¿Devo colocar algo entre()? ¿que?

Perdon por la ignorancia, quizas sea muy tonta la pregunta, de antemano muchas gracias....
Responder Con Cita
  #5  
Antiguo 04-03-2010
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Hola de nuevo Lenny, si debes pasarle el formulario del cual quieres que recorra todos sus componentes y haga el cambio, en tu caso, puedes colocar Self, que haría referencia al formulario actual.

Código Delphi [-]
  Empresas.ColorOn(Self);

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #6  
Antiguo 04-03-2010
Lenny Lenny is offline
Miembro
 
Registrado: jun 2007
Posts: 161
Poder: 17
Lenny Va por buen camino
Question Muchisimas gracias!!!

Muchísimas gracias!!! resulto impecable, me has ahorrado líneas y líneas de código, me permitirá mejorar el soft que estoy haciendo y corregir y mejorar anteriores, de veras gracias por compartir con nosotros ampliando nuestros conocimientos, ojala que esta info sea de utilidad a otras personas del foro, Byes y gracias nuevamente!!!
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Porque WaitForMultipleObjects bloquea mi aplicacion y otras funciones? JuanErasmo C++ Builder 2 09-12-2009 08:53:28
llamar al evento click de un boton q se encuentra en un form desde otro form TURBOIGOR OOP 6 02-12-2008 14:50:16
Como llamar form desde otros form y regresar a la linea que se estaba ejecutando Willy Rodrigo C++ Builder 1 03-08-2007 19:36:23
Por que no funciona SUM y otras funciones al jalarlo desde delphi? desve MySQL 2 11-06-2007 22:18:20
Abrir otras aplicaciones desde Delphi Moparova Varios 1 19-04-2007 21:47:30


La franja horaria es GMT +2. Ahora son las 03:23:26.


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
Copyright 1996-2007 Club Delphi