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 07-07-2006
Avatar de destrukthor
destrukthor destrukthor is offline
Miembro
 
Registrado: may 2006
Posts: 57
Poder: 19
destrukthor Va por buen camino
Como definir Funciones Globales

Hola a tods.
Nuevamente yo los molesto con preguntas q a lo mejor ya estan respondidas de muy basicas, pero soy principiante como antes mensione en otras preguntas.
Bien , al punto quiero definir una funciones globales q retornen valores tantos Booleano como numericos mi problema radica donde las creo ya q las ocupare en distintos formularios y como son todas iguales solo con mandar los valores me comprobaria sus validaciones o resultados.
Si me puedes ayudar, ¿lo mismo tendria q hacer con los procedimientos q son similares? desde ya Gracias.
__________________
Solo se q nada Se, Cada dia es un aprendisaje y asi siempre sera.
Responder Con Cita
  #2  
Antiguo 07-07-2006
Avatar de Bicho
[Bicho] Bicho is offline
Miembro Premium
 
Registrado: jul 2003
Ubicación: Inca - Mallorca
Posts: 1.776
Poder: 22
Bicho Va por buen camino
Si lo que deseas es que tu crees una funcion/procedimiento en una unit y sea accesible desde otras, lo más sencillo es que declares estas funciones en la parte public de la unit. Y en las demás units (siempre que sean del mismo proyecto) que tengan que usar las funciones debes añadir en el uses de cada unit, el nombre de la unit que contiene esas funciones, y ya podrás usarlas.

Un ejemplo:

Código Delphi [-]
unit Unit1;

interface

uses
....

type
  ...
  private
      ...
  public 
     procedure miprocedimiento(parametro1: string);
     function mifuncion(parametro2:integer) : Boolean;
  end;

implementation
...
//aqui pones la funcion y/o procedimientos


Y para usarla desde otro formulario tuyo (del mismo proyecto)
Código Delphi [-]
unit Unit2;

interface

uses Unit1
....

type
  ...
      procedure Boton1Click(Sender: TObject);
  private
      ...
  end;

implementation
...

procedure Boton1Click(Sender : TObject);
begin
  //para usar tu funcion de la unit
  Form1.Miprocedimiento(edit.text);
end;

Espero haya quedado claro.

Saludos
Responder Con Cita
  #3  
Antiguo 07-07-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Aclarar que al hacerlo así tienes que incluir el código de la rutina en cada Formulario.

La otra solución es crear una Unidad (File -> New -> Unit), igual que en un Formulario, y allí en la parte interface pones el prototipo de la funcion, despues en la parte implementation añades el código.

La ventaja es que esa funcion no pertenece a un objeto determinado, ni a Form1, ni al Form2 etc; por tanto con solo añadir el "uses" de esa nueva unidad, ya puedes usarla en cualquier ventana.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #4  
Antiguo 07-07-2006
Avatar de destrukthor
destrukthor destrukthor is offline
Miembro
 
Registrado: may 2006
Posts: 57
Poder: 19
destrukthor Va por buen camino
Muuuuchas Gracias

Muhcas gracias a los dos.
Ati bicho por el proceso para declarar las funciones.
Y a ti lepe por el proceso global q me entregas, y esta es la q buscaba ya q la puedo llamar de cualquier parte del proyecto.
Vale muchas gracias..
... sin grande otro prblema resuelto por ustedes.
Cuidense y hasta otra oportunidad y espero aprender mucho para ayudar a otro en este foro.
__________________
Solo se q nada Se, Cada dia es un aprendisaje y asi siempre sera.
Responder Con Cita
  #5  
Antiguo 07-07-2006
Avatar de destrukthor
destrukthor destrukthor is offline
Miembro
 
Registrado: may 2006
Posts: 57
Poder: 19
destrukthor Va por buen camino
Aqui esta mi ejemplo q use

Use este ejemplo sencillo y rapido para verificar su utilidad, y lo precento para aquellos novatos como yo lo pruebe para resolver algun problema similar al mio.


Código Delphi [-]
 
unit ProcGlob;
interface
FUNCTION f_VerMsg(f_Num :Integer): Boolean;
implementation
FUNCTION f_VerMsg(f_Num :Integer): Boolean;
BEGIN
  IF f_Num=0 THEN
    Result:=True
  ELSE
    Result:=False;
END;
end.
Otro Formulario lo llamo asi
Código Delphi [-]
 
 
  IF f_VerMsg(0)=True THEN
    ShowMessage('Es Igual a 0')
  ELSE
    ShowMessage('Es Distinto a Cero');
__________________
Solo se q nada Se, Cada dia es un aprendisaje y asi siempre sera.
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
Problemas al definir UDF (Funciones en una DLL) pcicom Firebird e Interbase 2 21-06-2006 05:49:15
Funciones/variables Globales Jad C++ Builder 3 15-05-2006 19:22:41
Definir funciones y procedimientos en FastReport???? burasu Impresión 1 16-05-2005 21:47:37
Como definir un campo Memo manuelpr Conexión con bases de datos 4 12-04-2005 20:01:45
Como definir la impresora en rave 5? danytorres Impresión 0 23-10-2003 20:08:30


La franja horaria es GMT +2. Ahora son las 01:20:42.


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