FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
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. |
|
|
|