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 02-06-2012
Avatar de martini002
martini002 martini002 is offline
Miembro
 
Registrado: may 2012
Ubicación: Puerto Ordaz - Venezuela
Posts: 175
Poder: 12
martini002 Va por buen camino
Llamar un procedimiento desde otro

Saludos Comunidad,

He estado haciendo algunos ejercicios de la universidad
y me he encontrado con un particular problema,
como siempre antes de preguntar he buscado y leido sobre el tema
pero sin la suerte de encontrar algo que realmente me funcione,

Tengo en mi codigo un procedimiento

Código Delphi [-]
procedure TFormEjercicio1.Image1Click(Sender: TObject);

el cual ejecuta algunas cosas
pero como esa imagen la converti en boton
tambien tiene un texto, que al ser clickeado no hace nada
entonces quiero en vez de copiar todo el procedimiento dentro del nuevo

Código Delphi [-]
Procedure TFormEjercicio1.Label3Click(Sender: TObject);

Me gustaria conocer la forma de llamar al primer procedimiento desde el segundo,
les dejo adicional el codigo completo sobre este sencillo programita

Espero esten bien
Best,
Martin


Código Delphi [-]
unit Ejercicio1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls;

type
  TFormEjercicio1 = class(TForm)
    FndPrncEjer1                : TImage;
    IngresarNumero              : TEdit;
    Label1                      : TLabel;
    Label2                      : TLabel;
    Image1                      : TImage;
    Label3                      : TLabel;
    SumaPares                   : TEdit;
    ProductoM5                  : TEdit;
    Label4                      : TLabel;
    Label5                      : TLabel;
    Label7: TLabel;
    procedure Image1Click(Sender: TObject);
    procedure Label3Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  FormEjercicio1            : TFormEjercicio1;
  I                         : Integer;
  Vector                    : Array [1..10] of Integer;
implementation

{$R *.dfm}

Procedure InicializarVector;
Var
   I                        :Integer;
Begin
for I := 1 to 10 do
    Vector[i]:=0;
End;

procedure TFormEjercicio1.Image1Click(Sender: TObject);
var
   Num, Suma, Producto : Integer;

begin
  Num:=StrToInt(IngresarNumero.Text);
  if Num > 0 then
    if I <= 9 then
      if Num MOD 5 = 0 then
        Begin
          Vector[i]:=Num;
          I:=I+1;
          Producto:=StrToInt(ProductoM5.Text)*Num;
          ProductoM5.Text:=IntToStr(Producto);
          Label7.Caption:='Restan '+IntToStr(10-I)+' Numeros';
          IngresarNumero.Text:='';
        End
      Else
        if Num MOD 2 = 0 then
          Begin
            I:=I+1;
            Suma:= StrToInt(SumaPares.Text)+Num;
            SumaPares.Text:=IntToStr(Suma);
            Label7.Caption:='Restan '+IntToStr(10-I)+' Numeros';
            IngresarNumero.Text:='';
          End
        Else
          Begin
            I:=I+1;
            Label7.Caption:='Restan '+IntToStr(10-I)+' Numeros';
            IngresarNumero.Text:='';
          End
    Else
      Begin
        ShowMessage('Solo 10 Numeros Maximo');
      End
  Else
    Begin
      ShowMessage('Numero NO Mayor a 0');
    End;
End;

procedure TFormEjercicio1.Label3Click(Sender: TObject);
begin
  procedure Image1Click(Sender: TObject);// Es lo que he intentado hacer
end;

End.
Responder Con Cita
  #2  
Antiguo 02-06-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola martini002.

Cita:
Me gustaria conocer la forma de llamar al primer procedimiento desde el segundo
Ejemplo:
Código Delphi [-]
...
procedure TForm1.Image1Click(Sender: TObject);
begin
 if Sender is TLabel then
    ShowMessage(TLabel(Sender).Name); // muestra Label3 cuando se invoca desde Label3Click
end;

procedure TForm1.Label3Click(Sender: TObject);
begin
  Image1Click(Sender) 
end;
...
Como ves, no estabas tan lejos...

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 02-06-2012
Avatar de martini002
martini002 martini002 is offline
Miembro
 
Registrado: may 2012
Ubicación: Puerto Ordaz - Venezuela
Posts: 175
Poder: 12
martini002 Va por buen camino
:O

Funciona!
Mil gracias Ecfisa, gracias por tu tiempo,
haz levantado mi animo

Saludos
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
Como mandar llamar un procedimiento almacenado desde delphi richy08 MS SQL Server 1 03-02-2010 01:06:23
Ayuda, como llamar a un procedimiento desde otro procedimiento? Ariatna Varios 1 01-02-2005 04:05:35
Intraweb: LLamar desde javascript a un procedimiento de un formulario Brewster Internet 0 03-07-2004 12:52:17
llamar a un procedure desde otro negama Conexión con bases de datos 1 28-08-2003 01:22:15
llamar a otro programa desde el mio sergionr Lazarus, FreePascal, Kylix, etc. 1 15-05-2003 18:35:06


La franja horaria es GMT +2. Ahora son las 12:10: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