1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
| unit Checkssss;
interface
uses
SysUtils, Classes, Controls, StdCtrls,ComCtrls;
type
TCheckssss = class(TCheckBox)
protected
procedure Click();override;
public
constructor Create(AOwner:TComponent);override;
end;
procedure Register;
implementation
procedure Register;
begin
RegisterComponents('Exemples', [TCheckssss]);
end;
{Forms.GetParentForm}
function GetParentTabSheet(Control: TControl):TTabSheet;
begin
while (Control <> nil) and not(Control is TTabSheet) do
Control := Control.Parent;
if Control is TTabSheet then
Result := TTabSheet(Control) else
Result := nil;
end;
constructor TCheckssss.Create(AOwner:TComponent);
begin
inherited Create(AOwner);
Caption:=Format('%s',[AOwner.Name]);
end;
procedure TCheckssss.Click();
var
ParentPage:TTabSheet;
begin
ParentPage:=GetParentTabSheet(Self);
if Assigned(ParentPage) then
with ParentPage do
if Checked then
Tag:=Tag+1
else
Tag:=Tag-1;
inherited;
end;
end. |
Partager