⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 advglowbutton.hpp

📁 Delphi的Office 2007风格界面控件
💻 HPP
📖 第 1 页 / 共 2 页
字号:
	void __fastcall SetStyle(const TAdvButtonStyle Value);
	void __fastcall SetGroupIndex(const int Value);
	void __fastcall SetAllowAllUp(const bool Value);
	void __fastcall SetLayout(const TButtonLayout Value);
	void __fastcall SetDropDownButton(const bool Value);
	void __fastcall PopupBtnDown(void);
	void __fastcall SetDropDownPosition(const TDropDownPosition Value);
	void __fastcall SetDropDownDirection(const TDropDownDirection Value);
	void __fastcall SetAppearance(const TGlowButtonAppearance* Value);
	void __fastcall SetDisabledImages(const Controls::TImageList* Value);
	void __fastcall PictureChanged(System::TObject* Sender);
	void __fastcall DoDropDown(void);
	void __fastcall SetSpacing(const int Value);
	void __fastcall SetAutoSizeEx(const bool Value);
	void __fastcall SetShowDisabled(const bool Value);
	void __fastcall SetWordWrap(const bool Value);
	void __fastcall SetMarginVert(const int Value);
	void __fastcall SetMarginHorz(const int Value);
	void __fastcall SetRounded(const bool Value);
	void __fastcall PerformResize(void);
	HIDESBASE bool __fastcall IsFontStored(void);
	
protected:
	bool FDefaultPicDrawing;
	bool FDefaultCaptionDrawing;
	virtual void __fastcall DrawGlyphCaption(void);
	virtual void __fastcall GetToolImage(Graphics::TBitmap* bmp);
	void __fastcall SetDroppedDown(bool Value);
	virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
	virtual void __fastcall Paint(void);
	virtual void __fastcall Loaded(void);
	DYNAMIC void __fastcall DoEnter(void);
	DYNAMIC void __fastcall DoExit(void);
	DYNAMIC void __fastcall MouseMove(Classes::TShiftState Shift, int X, int Y);
	DYNAMIC void __fastcall MouseDown(Controls::TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
	DYNAMIC void __fastcall KeyDown(Word &Key, Classes::TShiftState Shift);
	DYNAMIC void __fastcall KeyUp(Word &Key, Classes::TShiftState Shift);
	DYNAMIC void __fastcall KeyPress(char &Key);
	DYNAMIC TMetaClass* __fastcall GetActionLinkClass(void);
	DYNAMIC void __fastcall ActionChange(System::TObject* Sender, bool CheckDefaults);
	virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation AOperation);
	__property TGlowState GlowState = {read=FGlowState, write=FGlowState, nodefault};
	__property bool Down = {read=FDownChecked, write=SetDown, default=0};
	__property TAdvButtonStyle Style = {read=FStyle, write=SetStyle, default=0};
	__property TAdvButtonState State = {read=FState, write=FState, nodefault};
	__property int GroupIndex = {read=FGroupIndex, write=SetGroupIndex, default=0};
	__property bool AllowAllUp = {read=FAllowAllUp, write=SetAllowAllUp, default=0};
	__property TButtonLayout Layout = {read=FLayout, write=SetLayout, default=0};
	__property bool DroppedDown = {read=FDroppedDown, nodefault};
	__property bool DropDownButton = {read=FDropDownButton, write=SetDropDownButton, default=0};
	__property TDropDownDirection DropDownDirection = {read=FDropDownDirection, write=SetDropDownDirection, default=0};
	__property TDropDownPosition DropDownPosition = {read=FDropDownPosition, write=SetDropDownPosition, default=0};
	__property bool DropDownSplit = {read=FDropDownSplit, write=FDropDownSplit, default=1};
	__property Menus::TPopupMenu* DropDownMenu = {read=FDropDownMenu, write=FDropDownMenu};
	__property Classes::TNotifyEvent OnDropDown = {read=FOnDropDown, write=FOnDropDown};
	virtual int __fastcall GetVersionNr(void);
	virtual bool __fastcall IsMenuButton(void);
	__property bool CheckLinked = {read=FCheckLinked, write=FCheckLinked, nodefault};
	__property Controls::TKeyEvent OnInternalKeyDown = {read=FOnInternalKeyDown, write=FOnInternalKeyDown};
	__property bool OverlappedText = {read=FOverlappedText, write=FOverlappedText, nodefault};
	__property bool DoAutoSize = {read=FDoAutoSize, write=FDoAutoSize, nodefault};
	
public:
	__fastcall virtual TAdvCustomGlowButton(Classes::TComponent* AOwner);
	__fastcall virtual ~TAdvCustomGlowButton(void);
	virtual void __fastcall CreateWnd(void);
	DYNAMIC void __fastcall Click(void);
	__property TGlowButtonAppearance* Appearance = {read=FAppearance, write=SetAppearance};
	void __fastcall ShowShortCutHint(void);
	void __fastcall HideShortCutHint(void);
	void __fastcall SetComponentStyle(Advstyleif::TTMSStyle AStyle);
	
__published:
	__property Align  = {default=0};
	__property Action ;
	__property Anchors  = {default=3};
	__property Advgdip::TAntiAlias AntiAlias = {read=FAntiAlias, write=SetAntiAlias, default=1};
	__property bool AutoSize = {read=FAutoSize, write=SetAutoSizeEx, default=0};
	__property Forms::TBorderStyle BorderStyle = {read=FBorderStyle, write=SetBorderStyle, default=1};
	__property bool Cancel = {read=FCancel, write=FCancel, default=0};
	__property Caption ;
	__property Constraints ;
	__property bool Default = {read=FDefault, write=SetDefault, default=0};
	__property Font  = {stored=IsFontStored};
	__property Imglist::TImageIndex ImageIndex = {read=FImageIndex, write=SetImageIndex, default=-1};
	__property Controls::TImageList* Images = {read=FImages, write=SetImages};
	__property Controls::TImageList* DisabledImages = {read=FDisabledImages, write=SetDisabledImages};
	__property Gdipicture::TGDIPPicture* DisabledPicture = {read=FIDisabledPicture, write=SetDisabledPicture};
	__property DragMode  = {default=0};
	__property DragKind  = {default=0};
	__property TFocusType FocusType = {read=FFocusType, write=FFocusType, default=0};
	__property Controls::TImageList* HotImages = {read=FHotImages, write=FHotImages};
	__property Gdipicture::TGDIPPicture* HotPicture = {read=FIHotPicture, write=SetHotPicture};
	__property int MarginVert = {read=FMarginVert, write=SetMarginVert, default=2};
	__property int MarginHorz = {read=FMarginHorz, write=SetMarginHorz, default=2};
	__property Controls::TModalResult ModalResult = {read=FModalResult, write=FModalResult, default=0};
	__property Advhintinfo::TAdvHintInfo* OfficeHint = {read=FOfficeHint, write=SetOfficeHint};
	__property ParentFont  = {default=1};
	__property Gdipicture::TGDIPPicture* Picture = {read=FIPicture, write=SetPicture};
	__property PopupMenu ;
	__property TButtonPosition Position = {read=FButtonPosition, write=SetButtonPosition, default=0};
	__property bool Rounded = {read=FRounded, write=SetRounded, default=1};
	__property AnsiString ShortCutHint = {read=FShortCutHintText, write=FShortCutHintText};
	__property TShortCutHintPos ShortCutHintPos = {read=FShortCutHintPos, write=FShortCutHintPos, default=1};
	__property bool ShowCaption = {read=FShowCaption, write=SetShowCaption, default=1};
	__property bool ShowDisabled = {read=FShowDisabled, write=SetShowDisabled, default=1};
	__property int Spacing = {read=FSpacing, write=SetSpacing, default=2};
	__property bool Transparent = {read=FTransparent, write=SetTransparent, default=0};
	__property AnsiString Version = {read=GetVersion, write=SetVersion, stored=false};
	__property bool WordWrap = {read=FWordWrap, write=SetWordWrap, default=1};
	__property ShowHint ;
	__property TabOrder  = {default=-1};
	__property TabStop  = {default=0};
	__property Visible  = {default=1};
	__property OnClick ;
	__property OnDragDrop ;
	__property OnDragOver ;
	__property OnEndDock ;
	__property OnStartDock ;
	__property OnStartDrag ;
	__property OnMouseDown ;
	__property OnMouseUp ;
	__property OnMouseMove ;
	__property OnKeyDown ;
	__property OnKeyUp ;
	__property OnKeyPress ;
	__property Classes::TNotifyEvent OnMouseEnter = {read=FOnMouseEnter, write=FOnMouseEnter};
	__property Classes::TNotifyEvent OnMouseLeave = {read=FOnMouseLeave, write=FOnMouseLeave};
	__property TGlowButtonDrawEvent OnDrawButton = {read=FOnDrawButton, write=FOnDrawButton};
public:
	#pragma option push -w-inl
	/* TWinControl.CreateParented */ inline __fastcall TAdvCustomGlowButton(HWND ParentWindow) : Controls::TCustomControl(ParentWindow) { }
	#pragma option pop
	
private:
	void *__ITMSStyle;	/* Advstyleif::ITMSStyle */
	
public:
	operator ITMSStyle*(void) { return (ITMSStyle*)&__ITMSStyle; }
	
};


class PASCALIMPLEMENTATION TAdvGlowButtonActionLink : public Controls::TControlActionLink 
{
	typedef Controls::TControlActionLink inherited;
	
protected:
	TAdvCustomGlowButton* FClient;
	virtual void __fastcall AssignClient(System::TObject* AClient);
	virtual bool __fastcall IsCheckedLinked(void);
	virtual bool __fastcall IsGroupIndexLinked(void);
	virtual void __fastcall SetGroupIndex(int Value);
	virtual void __fastcall SetChecked(bool Value);
	virtual void __fastcall SetImageIndex(int Value);
public:
	#pragma option push -w-inl
	/* TBasicActionLink.Create */ inline __fastcall virtual TAdvGlowButtonActionLink(System::TObject* AClient) : Controls::TControlActionLink(AClient) { }
	#pragma option pop
	#pragma option push -w-inl
	/* TBasicActionLink.Destroy */ inline __fastcall virtual ~TAdvGlowButtonActionLink(void) { }
	#pragma option pop
	
};


class DELPHICLASS TAdvGlowButton;
class PASCALIMPLEMENTATION TAdvGlowButton : public TAdvCustomGlowButton 
{
	typedef TAdvCustomGlowButton inherited;
	
public:
	__property State ;
	__property DroppedDown ;
	
__published:
	__property AllowAllUp  = {default=0};
	__property Appearance ;
	__property Down  = {default=0};
	__property Enabled  = {default=1};
	__property GroupIndex  = {default=0};
	__property Layout  = {default=0};
	__property Style  = {default=0};
	__property DropDownButton  = {default=0};
	__property DropDownPosition  = {default=0};
	__property DropDownDirection  = {default=0};
	__property DropDownSplit  = {default=1};
	__property DropDownMenu ;
	__property OnDropDown ;
public:
	#pragma option push -w-inl
	/* TAdvCustomGlowButton.Create */ inline __fastcall virtual TAdvGlowButton(Classes::TComponent* AOwner) : TAdvCustomGlowButton(AOwner) { }
	#pragma option pop
	#pragma option push -w-inl
	/* TAdvCustomGlowButton.Destroy */ inline __fastcall virtual ~TAdvGlowButton(void) { }
	#pragma option pop
	
public:
	#pragma option push -w-inl
	/* TWinControl.CreateParented */ inline __fastcall TAdvGlowButton(HWND ParentWindow) : TAdvCustomGlowButton(ParentWindow) { }
	#pragma option pop
	
};


#pragma option push -b-
enum TDBGlowButtonType { dbCustom, dbFirst, dbPrior, dbNext, dbLast, dbInsert, dbAppend, dbDelete, dbEdit, dbPost, dbCancel, dbRefresh };
#pragma option pop

#pragma option push -b-
enum TDBBDisableControl { drBOF, drEOF, drReadonly, drNotEditing, drEditing, drEmpty, drEvent };
#pragma option pop

typedef Set<TDBBDisableControl, drBOF, drEvent>  TDBBDisableControls;

typedef void __fastcall (__closure *TBeforeActionEvent)(System::TObject* Sender, bool &DoAction);

typedef void __fastcall (__closure *TAfterActionEvent)(System::TObject* Sender, bool &ShowException);

typedef void __fastcall (__closure *TGetConfirmEvent)(System::TObject* Sender, AnsiString &Question, Dialogs::TMsgDlgButtons &Buttons, int &HelpCtx);

typedef void __fastcall (__closure *TGetEnabledEvent)(System::TObject* Sender, bool &Enabled);

class DELPHICLASS TDBGlowButtonDataLink;
class PASCALIMPLEMENTATION TDBGlowButtonDataLink : public Db::TDataLink 
{
	typedef Db::TDataLink inherited;
	
private:
	Classes::TNotifyEvent FOnEditingChanged;
	Classes::TNotifyEvent FOnDataSetChanged;
	Classes::TNotifyEvent FOnActiveChanged;
	
protected:
	virtual void __fastcall EditingChanged(void);
	virtual void __fastcall DataSetChanged(void);
	virtual void __fastcall ActiveChanged(void);
	
public:
	__fastcall TDBGlowButtonDataLink(void);
	__property Classes::TNotifyEvent OnEditingChanged = {read=FOnEditingChanged, write=FOnEditingChanged};
	__property Classes::TNotifyEvent OnDataSetChanged = {read=FOnDataSetChanged, write=FOnDataSetChanged};
	__property Classes::TNotifyEvent OnActiveChanged = {read=FOnActiveChanged, write=FOnActiveChanged};
public:
	#pragma option push -w-inl
	/* TDataLink.Destroy */ inline __fastcall virtual ~TDBGlowButtonDataLink(void) { }
	#pragma option pop
	
};


class DELPHICLASS TDBAdvGlowButton;
class PASCALIMPLEMENTATION TDBAdvGlowButton : public TAdvCustomGlowButton 
{
	typedef TAdvCustomGlowButton inherited;
	
private:
	TDBGlowButtonDataLink* FDataLink;
	bool FAutoDisable;
	TDBBDisableControls FDisableControls;
	TAfterActionEvent FOnAfterAction;
	TBeforeActionEvent FOnBeforeAction;
	TDBGlowButtonType FDBButtonType;
	TGetConfirmEvent FOnGetConfirm;
	TGetEnabledEvent FOnGetEnabled;
	Classes::TNotifyEvent FOnEnabledChanged;
	bool FConfirmAction;
	AnsiString FConfirmActionString;
	bool FInProcUpdateEnabled;
	HIDESBASE MESSAGE void __fastcall CMEnabledChanged(Messages::TMessage &Message);
	void __fastcall OnDataSetEvents(System::TObject* Sender);
	Db::TDataSource* __fastcall GetDataSource(void);
	void __fastcall SetDataSource(const Db::TDataSource* Value);
	void __fastcall SetDBButtonType(const TDBGlowButtonType Value);
	void __fastcall SetConfirmActionString(const AnsiString Value);
	
protected:
	virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation AOperation);
	virtual void __fastcall Loaded(void);
	void __fastcall CalcDisableReasons(void);
	virtual void __fastcall DoBeforeAction(bool &DoAction);
	virtual void __fastcall DoGetQuestion(AnsiString &Question, Dialogs::TMsgDlgButtons &Buttons, int &HelpCtx);
	virtual bool __fastcall DoConfirmAction(void);
	virtual void __fastcall DoAction(void);
	virtual void __fastcall UpdateEnabled(void);
	virtual void __fastcall LoadGlyph(void);
	
public:
	__fastcall virtual TDBAdvGlowButton(Classes::TComponent* AOwner);
	__fastcall virtual ~TDBAdvGlowButton(void);
	DYNAMIC void __fastcall Click(void);
	
__published:
	__property Action ;
	__property Appearance ;
	__property Layout  = {default=0};
	__property Constraints ;
	__property bool AutoDisable = {read=FAutoDisable, write=FAutoDisable, nodefault};
	__property bool ConfirmAction = {read=FConfirmAction, write=FConfirmAction, nodefault};
	__property AnsiString ConfirmActionString = {read=FConfirmActionString, write=SetConfirmActionString};
	__property Db::TDataSource* DataSource = {read=GetDataSource, write=SetDataSource};
	__property TDBGlowButtonType DBButtonType = {read=FDBButtonType, write=SetDBButtonType, nodefault};
	__property TDBBDisableControls DisableControl = {read=FDisableControls, write=FDisableControls, nodefault};
	__property Enabled  = {default=1};
	__property TBeforeActionEvent OnBeforeAction = {read=FOnBeforeAction, write=FOnBeforeAction};
	__property TAfterActionEvent OnAfterAction = {read=FOnAfterAction, write=FOnAfterAction};
	__property TGetConfirmEvent OnGetConfirm = {read=FOnGetConfirm, write=FOnGetConfirm};
	__property TGetEnabledEvent OnGetEnabled = {read=FOnGetEnabled, write=FOnGetEnabled};
	__property Classes::TNotifyEvent OnEnabledChanged = {read=FOnEnabledChanged, write=FOnEnabledChanged};
public:
	#pragma option push -w-inl
	/* TWinControl.CreateParented */ inline __fastcall TDBAdvGlowButton(HWND ParentWindow) : TAdvCustomGlowButton(ParentWindow) { }
	#pragma option pop
	
};


//-- var, const, procedure ---------------------------------------------------
static const Shortint DropDownSectWidth = 0xd;
static const Shortint MAJ_VER = 0x1;
static const Shortint MIN_VER = 0x4;
static const Shortint REL_VER = 0x5;
static const Shortint BLD_VER = 0x0;

}	/* namespace Advglowbutton */
using namespace Advglowbutton;
#pragma option pop	// -w-
#pragma option pop	// -Vx

#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif	// AdvGlowButton

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -