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

📄 winskinform.hpp

📁 delphi皮肤控件,很好的.我正在使用当中
💻 HPP
📖 第 1 页 / 共 2 页
字号:
// Borland C++ Builder
// Copyright (c) 1995, 2005 by Borland Software Corporation
// All rights reserved

// (DO NOT EDIT: machine generated header) 'Winskinform.pas' rev: 10.00

#ifndef WinskinformHPP
#define WinskinformHPP

#pragma delphiheader begin
#pragma option push
#pragma option -w-      // All warnings off
#pragma option -Vx      // Zero-length empty class member functions
#pragma pack(push,8)
#include <System.hpp>	// Pascal unit
#include <Sysinit.hpp>	// Pascal unit
#include <Windows.hpp>	// Pascal unit
#include <Messages.hpp>	// Pascal unit
#include <Sysutils.hpp>	// Pascal unit
#include <Classes.hpp>	// Pascal unit
#include <Graphics.hpp>	// Pascal unit
#include <Controls.hpp>	// Pascal unit
#include <Forms.hpp>	// Pascal unit
#include <Extctrls.hpp>	// Pascal unit
#include <Stdctrls.hpp>	// Pascal unit
#include <Comctrls.hpp>	// Pascal unit
#include <Menus.hpp>	// Pascal unit
#include <Buttons.hpp>	// Pascal unit
#include <Imglist.hpp>	// Pascal unit
#include <Grids.hpp>	// Pascal unit
#include <Commctrl.hpp>	// Pascal unit
#include <Winskindata.hpp>	// Pascal unit
#include <Winsubclass.hpp>	// Pascal unit
#include <Consts.hpp>	// Pascal unit
#include <Typinfo.hpp>	// Pascal unit

//-- user supplied -----------------------------------------------------------

namespace Winskinform
{
//-- type declarations -------------------------------------------------------
struct NMCSBCUSTOMDRAW
{
	
public:
	#pragma pack(push,1)
	tagNMHDR hdr;
	#pragma pack(pop)
	unsigned dwDrawStage;
	HDC hdc;
	#pragma pack(push,1)
	Types::TRect rc;
	#pragma pack(pop)
	unsigned uItem;
	unsigned uState;
	unsigned nBar;
} ;

typedef NMCSBCUSTOMDRAW *pNMCSBCUSTOMDRAW;

class DELPHICLASS TNCObject;
class DELPHICLASS TWinSkinForm;
class DELPHICLASS TMenuBtn;
class DELPHICLASS TWinSysButton;
class DELPHICLASS TWinSkinMenu;
class PASCALIMPLEMENTATION TWinSkinMenu : public Classes::TComponent 
{
	typedef Classes::TComponent inherited;
	
private:
	void __fastcall Copymenu(HMENU source, HMENU dst);
	
public:
	DynamicArray<TMenuBtn* >  Buttons;
	Menus::TMainMenu* menu;
	#pragma pack(push,1)
	Types::TRect Bar;
	#pragma pack(pop)
	Winskindata::TSkinData* FSD;
	TWinSkinForm* SF;
	Graphics::TBitmap* bkmap;
	int count;
	bool topmenu;
	HMENU hmenu;
	__fastcall virtual TWinSkinMenu(Classes::TComponent* AOwner);
	__fastcall virtual ~TWinSkinMenu(void);
	void __fastcall UpdataBtn(void);
	void __fastcall UpdataBtn1(void);
	void __fastcall UpdataBtn2(unsigned newmenu);
	void __fastcall UpdataBtn3(void);
	void __fastcall DrawMenu(HDC dc, const Types::TRect &rc);
	TNCObject* __fastcall FindBtn(const Types::TPoint &p);
	void __fastcall MouseMove(const Types::TPoint &p);
	void __fastcall SetMenuRect(void);
};


#pragma option push -b-
enum TSkinFormStyle { sfsNormal, sfsMDIform, sfsMDIChild, sfsChild };
#pragma option pop

#pragma option push -b-
enum TSkinFormBorder { sbsSizeable, sbsSingle, sbsNone, sbsDialog };
#pragma option pop

#pragma option push -b-
enum TSkinFormIcon { sbiMax, sbiMin, sbiHelp, sbisystem, sbicaption };
#pragma option pop

typedef Set<TSkinFormIcon, sbiMax, sbicaption>  TSkinFormIcons;

#pragma option push -b-
enum TSkinWindowState { swsNormal, swsMax, swsMin };
#pragma option pop

class PASCALIMPLEMENTATION TWinSkinForm : public Classes::TComponent 
{
	typedef Classes::TComponent inherited;
	
private:
	bool done;
	bool done2;
	Classes::TWndMethod OldWndProc;
	void *FPrevWndProc;
	void *FObjectInst;
	void *FMDIWndProc;
	void *FMDIObjectInst;
	Graphics::TFont* CaptionFont;
	bool FActive;
	Forms::TBorderIcons BorderIcons;
	bool FOverrideOwnerDraw;
	Extctrls::TTimer* timer;
	WideString bstr;
	WideString astr;
	AnsiString classname;
	bool hassysbtn;
	bool menuauto;
	bool sMainMenu;
	#pragma pack(push,1)
	Types::TRect fClientRect;
	#pragma pack(pop)
	int msglock;
	unsigned poptime;
	int DoubleTime;
	int charwidth;
	unsigned parenthwnd;
	HICON DefIcon;
	int Iconx;
	void __fastcall GetIcon(Graphics::TBitmap* &bmp);
	void __fastcall DeleteControls(void);
	void __fastcall SetActive(const bool Value);
	void __fastcall WinWndProc(Messages::TMessage &aMsg);
	void __fastcall NewWndProc(Messages::TMessage &aMsg);
	void __fastcall Default(Messages::TMessage &Msg);
	void __fastcall WMActive(Messages::TMessage &Msg);
	void __fastcall WMNCCalcSize(Messages::TMessage &Msg);
	void __fastcall WMNCActive(Messages::TMessage &Msg);
	void __fastcall WMNCPaint(Messages::TMessage &Msg);
	void __fastcall WMNCMouseMove(Messages::TMessage &Msg);
	void __fastcall WMNCLButtonDown(Messages::TMessage &Msg);
	void __fastcall WMNCLBUTTONDBLCLK(Messages::TMessage &Msg);
	void __fastcall WMNCLButtonUp(Messages::TMessage &Msg);
	void __fastcall WMNCRButtonUp(Messages::TMessage &Msg);
	void __fastcall WMMouseMove(Messages::TMessage &Msg);
	void __fastcall WMNCHitTest(Messages::TMessage &Msg);
	void __fastcall WMSysCommand(Messages::TMessage &Msg);
	void __fastcall WMCommand(Messages::TMessage &Msg);
	void __fastcall WMINITMENU(HMENU hm);
	void __fastcall WMMEASUREITEM(Messages::TMessage &Msg);
	void __fastcall WMMEASUREITEMH(Messages::TMessage &Msg);
	void __fastcall WMDRAWITEM(Messages::TMessage &Msg);
	void __fastcall WMERASEBKGND(Messages::TMessage &Msg);
	void __fastcall WMSize(Messages::TMessage &Msg);
	void __fastcall WMGetMinMaxInfo(Messages::TMessage &Msg);
	void __fastcall CMDialogChar(Messages::TMessage &Message);
	void __fastcall WMCtlcolor(Messages::TMessage &Msg);
	void __fastcall WMWINDOWPOSCHANGED(Messages::TMessage &Msg);
	void __fastcall WMWindowPosChanging(Messages::TMessage &Msg);
	void __fastcall WMMDIACTIVATE(Messages::TMessage &aMsg);
	void __fastcall WMMDIACTIVATE2(Messages::TMessage &Msg);
	void __fastcall WMMDITile(Messages::TMessage &aMsg);
	void __fastcall WMReCreateWnd(Messages::TMessage &Msg);
	void __fastcall DrawLine(Graphics::TCanvas* acanvas, const Types::TRect &rc);
	void __fastcall CreateCaptionFont(void);
	void __fastcall Drawborder(int n, const Types::TRect &Rc, HDC dc);
	void __fastcall SetSysbtnRect(void);
	void __fastcall DrawAllSysbtn(Graphics::TCanvas* acanvas, const Types::TRect &rc);
	void __fastcall DrawMin(HDC dc);
	bool __fastcall SysBtnVisible(int i);
	TNCObject* __fastcall FindBtn(const Types::TPoint &Point);
	Types::TPoint __fastcall GetWinXY(short x, short y);
	void __fastcall SysBtnAction(short x, short y);
	void __fastcall UpdateNc(HDC adc = (HDC)(0x0));
	void __fastcall DrawFLine(HDC dc);
	void __fastcall ToolBarDrawButton(Comctrls::TToolBar* Sender, Comctrls::TToolButton* Button, Comctrls::TCustomDrawState State, bool &DefaultDraw);
	void __fastcall ToolBarDrawBackground(Comctrls::TToolBar* Sender, const Types::TRect &ARect, bool &DefaultDraw);
	void __fastcall MeasureItemPop(System::TObject* Sender, Graphics::TCanvas* ACanvas, int &Width, int &Height);
	Graphics::TBitmap* __fastcall GetMenuBG(void);
	void __fastcall DrawMenuCaption(Graphics::TCanvas* ACanvas, const Types::TRect &ARect);
	void __fastcall WMDrawMenuitem(Messages::TMessage &Msg);
	void __fastcall WMDrawMenuitemH(Messages::TMessage &Msg);
	void __fastcall DrawHMenuItem2(HMENU Amenu, System::TObject* Sender, Graphics::TCanvas* ACanvas, const Types::TRect &ARect, bool Selected);
	Menus::TMenuItem* __fastcall CreateMenuItem(HMENU amenu, int aid);
	void __fastcall DefaultMenuItem(System::TObject* Sender, Graphics::TCanvas* ACanvas, const Types::TRect &ARect, bool Selected);
	void __fastcall DrawItemText(Menus::TMenuItem* Item, Graphics::TCanvas* ACanvas, const Types::TRect &ARect, bool Selected);
	void __fastcall DoDrawText(Menus::TMenuItem* item, Graphics::TCanvas* ACanvas, const WideString ACaption, Types::TRect &Rect, bool Selected, int Flags);
	void __fastcall OnTimer(System::TObject* Sender);
	void __fastcall CancelMenu(void);
	TMenuBtn* __fastcall FindButtonFromAccel(Word Accel);
	void __fastcall CreateSysmenu(void);
	void __fastcall CreateSysmenu2(void);
	void __fastcall DoSysMenu(System::TObject* Sender);
	void __fastcall DoSysMenu2(System::TObject* Sender);
	bool __fastcall IsScrollControl(Classes::TComponent* acontrol);
	void __fastcall KeepClient(void);
	void __fastcall SelectMDIform(System::TObject* Sender);
	void __fastcall ChangeMDIStyle(void);
	Winsubclass::TSkinControl* __fastcall Lookupcontrol(unsigned ahwnd);
	void __fastcall GetWindowstate(void);
	void __fastcall GetFormstyle(void);
	void __fastcall PopSysmenu(const Types::TPoint &p);
	void __fastcall MDIChildAction(const int action);
	void __fastcall UnSubclassMDI(void);
	void __fastcall SubclassMDI(void);
	void __fastcall WinMDIProc(Messages::TMessage &aMsg);
	void __fastcall DefaultMDI(Messages::TMessage &Msg);
	void __fastcall DeleteSkinDeleted(void);
	void __fastcall InitToolbarMenu(Menus::TMenuItem* Item, bool enable);
	void __fastcall DrawIcon(HDC dc, const Types::TRect &rc);
	void __fastcall AfterSkin(void);
	void __fastcall DoSkinEdit(Controls::TWinControl* aEdit);
	void __fastcall GetBorderSize(void);
	void __fastcall UpdateStyle(bool b);
	void __fastcall DisableControl(Controls::TControl* Comp);
	bool __fastcall CheckSysmenu(void);
	void __fastcall MenuSelect(Messages::TMessage &Msg);
	void __fastcall BeginUpdate(void);
	void __fastcall StopUpdate(void);
	void __fastcall InitSkin(Winskindata::TSkinData* afsd);
	
protected:
	WideString caption;
	#pragma pack(push,1)
	Types::TRect bw;
	#pragma pack(pop)
	#pragma pack(push,1)
	Types::TRect wTr;
	#pragma pack(pop)
	#pragma pack(push,1)
	Types::TRect ctr;

⌨️ 快捷键说明

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