unit main; {$mode objfpc}{$H+} interface uses Classes, SysUtils, Forms, Controls, Graphics, Dialogs, StdCtrls, ExtCtrls, ExCheckCtrls; type { TMainForm } TMainForm = class(TForm) CheckBoxEx1: TCheckBoxEx; CheckBoxEx2: TCheckBoxEx; CheckBoxEx3: TCheckBoxEx; ImageList1: TImageList; Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; RadioButtonEx1: TRadioButtonEx; RadioButtonEx2: TRadioButtonEx; RadioButtonEx3: TRadioButtonEx; RadioGroupEx1: TRadioGroupEx; procedure CheckBox1Change(Sender: TObject); procedure FormCreate(Sender: TObject); procedure RadioButtonEx1GetImageIndex(Sender: TObject; AHover, APressed, AEnabled: Boolean; AState: TCheckboxState; var AImgIndex: Integer); private public end; var MainForm: TMainForm; implementation {$R *.lfm} { TMainForm } procedure TMainForm.CheckBox1Change(Sender: TObject); begin CheckboxEx1.AutoSize := true; end; procedure TMainForm.FormCreate(Sender: TObject); begin RadioGroupEx1.Buttons[0].ThemedCaption := false; RadioGroupEx1.Buttons[1].ThemedCaption := false; RadioGroupEx1.Buttons[2].ThemedCaption := false; RadioGroupEx1.Buttons[0].Font.Color := clRed; RadioGroupEx1.Buttons[1].Font.Color := clGreen; RadioGroupEx1.Buttons[2].Font.Color := clBlue; RadioGroupEx1.Buttons[3].Enabled := false; Label6.Caption := 'This box contains ' + IntToStr(RadioGroupEx1.ButtonCount) + ' buttons'; end; procedure TMainForm.RadioButtonEx1GetImageIndex(Sender: TObject; AHover, APressed, AEnabled: Boolean; AState: TCheckboxState; var AImgIndex: Integer); begin if AState = cbChecked then AImgIndex := 1 else AImgIndex := 0; end; end.