Ver Mensaje Individual
  #1  
Antiguo 16-02-2005
animal animal is offline
Miembro
 
Registrado: ene 2005
Ubicación: Mendoza, Argentina
Posts: 14
Reputación: 0
animal Va por buen camino
Exclamation Ayuda!, casi listo.

Que tal, estoy creando este boton de tres estados con imagenes pero me faltan un par de detalles.

1- Cuando compilo el componente, me dice:
[Error] BotonJpg.pas(26): Declaration of 'MouseDown' differs from previous declaration
Y no se que tengo que hacer ya que lo he hecho igual al Move.
2- El MouseLeave me dice:
[Error] BotonJpg.pas(27): Method 'MouseLeave' not found in base class

Es lo ultimo que me falta!
Muchas gracias!.
Eduardo

unit BotonJpg;
interface

uses
SysUtils, Classes, Controls, ExtCtrls, Graphics, QControls, Messages;

type
TBotonJpg = class(TImage)
private
{ Private declarations }
FImagenNormal: TPicture;
FImagenHiLight: TPicture;
FImagenPresionado: TPicture;
procedure SetImagenNormal(Value: TPicture);
procedure SetImagenHiLight(Value: TPicture);
procedure SetImagenPresionado(Value: TPicture);
procedure Moused;
protected
{ Protected declarations }

public
{ Public declarations }
constructor Create(AOwner: TComponent); override;
Procedure MouseMove(Shift: TShiftState; X, Y: Integer); Override;
procedure MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer); Override;
Procedure MouseLeave(AControl: TControl);Override;
published
{ Published declarations }
property ImagenNormal: TPicture read FImagenNormal write SetImagenNormal;
property ImagenHiLight: TPicture read FImagenHiLight write SetImagenHiLight;
property ImagenPresionado: TPicture read FImagenPresionado write SetImagenPresionado;
end;

procedure Register;

implementation

procedure Register;
begin
RegisterComponents('Standard', [TBotonJpg]);
end;

constructor TBotonJpg.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
FImagenNormal := TPicture.Create;
FImagenHiLight := TPicture.Create;
FImagenPresionado := TPicture.Create;
Self.Picture := FImagenNormal;
end;

procedure TBotonJpg.SetImagenNormal(Value: TPicture);
begin
FImagenNormal.Assign(Value);
end;

procedure TBotonJpg.SetImagenHiLight(Value: TPicture);
begin
FImagenHiLight.Assign(Value);
end;

procedure TBotonJpg.SetImagenPresionado(Value: TPicture);
begin
FImagenPresionado.Assign(Value);
end;

Procedure TBotonJpg.MouseMove(Shift: TShiftState; X, Y: Integer);
Begin
if (Self.Picture <> FImagenHiLight) then
Self.Picture := FImagenHiLight;
Inherited; // y ejecutar el procedimiento Click del ascendiente
End;

Procedure TBotonJpg.MouseLeave(AControl: TControl);Override;
Begin
Self.Picture := FImagenNormal;
Inherited; // y ejecutar el procedimiento Click del ascendiente
End;

procedure MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer); Override;
Begin
if (Self.Picture <> FImagenHiLight) then
Self.Picture := FImagenHiLight;
Inherited; // y ejecutar el procedimiento Click del ascendiente
End;

end.
Responder Con Cita