Ver Mensaje Individual
  #15  
Antiguo 24-08-2005
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Reputación: 29
Lepe Va por buen camino
Edito: jajaja, ahora que está todo listo llego yo a rematarlo

Despues de todo el rollo, he creado un TcheckBox que no tiene ese comportamiento. Ha sido más facil de lo que creía. Os dejo la unidad.

Código Delphi [-]
unit CheckBoxNoClick;

interface

uses
  Windows, Messages, SysUtils, Classes, Controls, StdCtrls;

type
  TCheckBoxNoClick = class(tcheckBox)
  private
    { Private declarations }
  protected
    { Protected declarations }
  public
    { Public declarations }
  published
    { Published declarations }
    procedure SetChecked(Value:Boolean);
  end;

procedure Register;

implementation

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

{ TCheckBoxNoClick }

procedure TCheckBoxNoClick.SetChecked(Value: Boolean);
begin
  try
    clicksdisabled := True;
    inherited;
  finally
    ClicksDisabled:= False;
  end;
end;
end.

Cuando se quiera por código modificar el checked, se llama a SetChecked, que tiene el truco de inhabilitar el evento Click.

Saludos

Última edición por Lepe fecha: 24-08-2005 a las 21:06:24.
Responder Con Cita