martini002
02-06-2012, 04:12:15
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
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
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
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.
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
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
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
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.