Files
2026-06-13 00:05:19 +08:00

56 lines
1.7 KiB
C++

//---------------------------------------------------------------------------
#ifndef RadioBtnH
#define RadioBtnH
//---------------------------------------------------------------------------
#include <System.SysUtils.hpp>
#include <System.Classes.hpp>
#include <Vcl.Controls.hpp>
#include <Vcl.ExtCtrls.hpp>
//---------------------------------------------------------------------------
class PACKAGE TRadioBtn :public TPanel {
private:
bool FChecked;
bool FEnabled;
String FCaption;
void __fastcall SetCaption(String FCaptionTmp);
void __fastcall SetFont(TFont *FFontTmp);
void __fastcall SetChecked(bool bChecked);
void __fastcall SetEnabled(bool bEnabled);
TLabel *m_lbCaption;
TRadioButton *m_pRaBtn;
void __fastcall Onclicked(TObject *Sender);
void __fastcall SetCheckedSameparent(TWinControl* pCtrl);
void __fastcall SetChildBounds();
COLORREF __fastcall TransformColor(COLORREF icolor, int nNum, bool bplus=true);
void __fastcall MouseMoveEvent(System::TObject* Sender, System::Classes::TShiftState Shift, int X, int Y);
virtual void __fastcall CreateWnd();
virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
virtual void __fastcall Paint(void);
DYNAMIC void __fastcall Click(void);
MESSAGE void __fastcall WMSize(Winapi::Messages::TWMSize &Message);
BEGIN_MESSAGE_MAP
MESSAGE_HANDLER(WM_SIZE, TWMSize, WMSize)
END_MESSAGE_MAP( TPanel )
public:
__fastcall TRadioBtn(System::Classes::TComponent* AOwner);
__fastcall ~TRadioBtn(void);
__published:
__property Font = {write=SetFont};
__property String Caption = {read=FCaption, write=SetCaption};
__property bool Checked = {read=FChecked, write=SetChecked, default=false};
__property bool Enabled = {read=FEnabled, write=SetEnabled, default=true};
};
#endif