Ver Mensaje Individual
  #1  
Antiguo 30-10-2008
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Reputación: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
¿Cómo puedo colorear un TButton?

Es muy fácil, usas un TPanel y en su evento OnMouseDown le pones la propiedad BevelOuter:=bvLowered y en OnMouseUp BevelOuter:=bvRaised
y ya tienes un ColorButton. Y de propina.. me he entretenio en hacer un componente con la idea expuesta, aquí tienes el código, sólo tienes que guardarlo en una unit llamada ColorBoton.pas.

Código Delphi [-]
unit ColorBoton;

interface

uses Windows, Messages, SysUtils, Classes, Controls, Forms, extctrls;

// igual sobra alguna unit en el uses

type
  TColorBoton = class(TPanel)
  private
   { Private declarations }
  protected
   { Protected declarations }
  procedure MouseDown(Button: TMouseButton;
       Shift: TShiftState; X, Y: Integer);override;
  procedure MouseUp(Button: TMouseButton;
       Shift: TShiftState; X, Y: Integer);override;
public
  { Public declarations }
published
  { Published declarations }
end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('ClubDelphi', [TColorBoton]);
end;

{ TColorBoton }
procedure TColorBoton.MouseDown;
begin
  inherited;
  BevelOuter:=bvLowered;
end;

procedure TColorBoton.MouseUp;
begin
  inherited;
  BevelOuter:=bvRaised;
end;

end.
Responder Con Cita