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

📄 scomboboxes.hpp

📁 I mComputermaster programmisDelphi+pascal
💻 HPP
📖 第 1 页 / 共 2 页
字号:
// CodeGear C++Builder
// Copyright (c) 1995, 2007 by CodeGear
// All rights reserved

// (DO NOT EDIT: machine generated header) 'Scomboboxes.pas' rev: 11.00

#ifndef ScomboboxesHPP
#define ScomboboxesHPP

#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 <Dialogs.hpp>	// Pascal unit
#include <Stdctrls.hpp>	// Pascal unit
#include <Comctrls.hpp>	// Pascal unit
#include <Toolwin.hpp>	// Pascal unit
#include <Extctrls.hpp>	// Pascal unit
#include <Sconst.hpp>	// Pascal unit
#include <Acntutils.hpp>	// Pascal unit
#include <Sgraphutils.hpp>	// Pascal unit
#include <Types.hpp>	// Pascal unit
#include <Math.hpp>	// Pascal unit
#include <Scommondata.hpp>	// Pascal unit
#include <Imglist.hpp>	// Pascal unit
#include <Sdefaults.hpp>	// Pascal unit
#include <Scombobox.hpp>	// Pascal unit
#include <Acsbutils.hpp>	// Pascal unit
#include <Sdialogs.hpp>	// Pascal unit
#include <Menus.hpp>	// Pascal unit

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

namespace Scomboboxes
{
//-- type declarations -------------------------------------------------------
class DELPHICLASS TsCustomComboBoxStrings;
class DELPHICLASS TsCommonCombo;
class DELPHICLASS TsCustomListControl;
class PASCALIMPLEMENTATION TsCustomListControl : public Controls::TWinControl 
{
	typedef Controls::TWinControl inherited;
	
private:
	Scommondata::TsBoundLabel* FBoundLabel;
	
protected:
	Scommondata::TsCommonData* FCommonData;
	virtual int __fastcall GetCount(void) = 0 ;
	virtual int __fastcall GetItemIndex(void) = 0 ;
	virtual void __fastcall SetItemIndex(const int Value) = 0 /* overload */;
	virtual void __fastcall Loaded(void);
	
public:
	virtual void __fastcall AfterConstruction(void);
	virtual void __fastcall AddItem(AnsiString Item, System::TObject* AObject) = 0 ;
	virtual void __fastcall Clear(void) = 0 ;
	virtual void __fastcall ClearSelection(void) = 0 ;
	__fastcall virtual TsCustomListControl(Classes::TComponent* AOwner);
	__fastcall virtual ~TsCustomListControl(void);
	virtual void __fastcall WndProc(Messages::TMessage &Message);
	virtual void __fastcall CopySelection(TsCustomListControl* Destination) = 0 ;
	virtual void __fastcall DeleteSelected(void) = 0 ;
	virtual void __fastcall MoveSelection(TsCustomListControl* Destination);
	virtual void __fastcall SelectAll(void) = 0 ;
	__property Scommondata::TsCommonData* SkinData = {read=FCommonData, write=FCommonData};
	__property int ItemIndex = {read=GetItemIndex, write=SetItemIndex, nodefault};
	
__published:
	__property Scommondata::TsBoundLabel* BoundLabel = {read=FBoundLabel, write=FBoundLabel};
public:
	#pragma option push -w-inl
	/* TWinControl.CreateParented */ inline __fastcall TsCustomListControl(HWND ParentWindow) : Controls::TWinControl(ParentWindow) { }
	#pragma option pop
	
};


typedef TMetaClass* TsCustomComboBoxStringsClass;

class PASCALIMPLEMENTATION TsCommonCombo : public TsCustomListControl 
{
	typedef TsCustomListControl inherited;
	
private:
	Graphics::TCanvas* FCanvas;
	int FMaxLength;
	int FDropDownCount;
	int FItemIndex;
	Classes::TNotifyEvent FOnChange;
	Classes::TNotifyEvent FOnSelect;
	Classes::TNotifyEvent FOnDropDown;
	Classes::TNotifyEvent FOnCloseUp;
	int FItemHeight;
	Classes::TStrings* FItems;
	Stdctrls::TMeasureItemEvent FOnMeasureItem;
	bool FShowButton;
	MESSAGE void __fastcall WMCreate(Messages::TWMCreate &Message);
	MESSAGE void __fastcall CMCancelMode(Controls::TCMCancelMode &Message);
	HIDESBASE MESSAGE void __fastcall CMCtl3DChanged(Messages::TMessage &Message);
	MESSAGE void __fastcall CNCommand(Messages::TWMCommand &Message);
	HIDESBASE MESSAGE void __fastcall WMDrawItem(Messages::TWMDrawItem &Message);
	HIDESBASE MESSAGE void __fastcall WMDeleteItem(Messages::TWMDeleteItem &Message);
	MESSAGE void __fastcall WMGetDlgCode(Messages::TWMNoParams &Message);
	MESSAGE void __fastcall CNMeasureItem(Messages::TWMMeasureItem &Message);
	virtual void __fastcall MeasureItem(int Index, int &Height);
	void __fastcall SetShowButton(const bool Value);
	
protected:
	HWND lboxhandle;
	Acsbutils::TacScrollWnd* ListSW;
	HWND FListHandle;
	HWND FDropHandle;
	void *FEditInstance;
	void *FDefEditProc;
	void *FListInstance;
	void *FDefListProc;
	bool FDroppingDown;
	bool FFocusChanged;
	bool FIsFocused;
	int FSaveIndex;
	virtual void __fastcall AdjustDropDown(void);
	virtual void __fastcall ComboWndProc(Messages::TMessage &Message, HWND ComboWnd, void * ComboProc);
	void __fastcall EditWndProc(Messages::TMessage &Message);
	virtual TMetaClass* __fastcall GetItemsClass(void) = 0 ;
	virtual int __fastcall GetItemHt(void) = 0 ;
	virtual void __fastcall SetItemHeight(int Value);
	virtual int __fastcall GetCount(void);
	virtual int __fastcall GetItemCount(void) = 0 ;
	virtual int __fastcall GetItemIndex(void);
	bool __fastcall GetDroppedDown(void);
	int __fastcall GetSelLength(void);
	int __fastcall GetSelStart(void);
	virtual void __fastcall CreateWnd(void);
	void __fastcall ListWndProc(Messages::TMessage &Message);
	DYNAMIC void __fastcall Change(void);
	DYNAMIC void __fastcall Select(void);
	DYNAMIC void __fastcall DropDown(void);
	DYNAMIC void __fastcall CloseUp(void);
	virtual void __fastcall DestroyWindowHandle(void);
	void __fastcall SetDroppedDown(bool Value);
	void __fastcall SetSelLength(int Value);
	void __fastcall SetSelStart(int Value);
	void __fastcall SetMaxLength(int Value);
	virtual void __fastcall SetDropDownCount(const int Value);
	virtual void __fastcall SetItemIndex(const int Value)/* overload */;
	virtual void __fastcall SetItems(const Classes::TStrings* Value);
	virtual void __fastcall UpdateMargins(void);
	virtual void __fastcall Loaded(void);
	__property int DropDownCount = {read=FDropDownCount, write=SetDropDownCount, default=14};
	__property int ItemCount = {read=GetItemCount, nodefault};
	__property int ItemHeight = {read=GetItemHt, write=SetItemHeight, default=16};
	__property HWND ListHandle = {read=FListHandle, nodefault};
	__property int MaxLength = {read=FMaxLength, write=SetMaxLength, default=0};
	__property ParentColor  = {default=0};
	__property Classes::TNotifyEvent OnChange = {read=FOnChange, write=FOnChange};
	__property Classes::TNotifyEvent OnDropDown = {read=FOnDropDown, write=FOnDropDown};
	__property Classes::TNotifyEvent OnSelect = {read=FOnSelect, write=FOnSelect};
	__property Classes::TNotifyEvent OnCloseUp = {read=FOnCloseUp, write=FOnCloseUp};
	__property Stdctrls::TMeasureItemEvent OnMeasureItem = {read=FOnMeasureItem, write=FOnMeasureItem};
	
public:
	HWND FEditHandle;
	__fastcall virtual TsCommonCombo(Classes::TComponent* AOwner);
	__fastcall virtual ~TsCommonCombo(void);
	virtual void __fastcall WndProc(Messages::TMessage &Message);
	virtual void __fastcall AddItem(AnsiString Item, System::TObject* AObject);
	virtual void __fastcall Clear(void);
	virtual void __fastcall ClearSelection(void);
	virtual void __fastcall CopySelection(TsCustomListControl* Destination);
	virtual void __fastcall DeleteSelected(void);
	DYNAMIC bool __fastcall Focused(void);
	virtual void __fastcall PaintButton(void);
	Types::TRect __fastcall ButtonRect();
	virtual void __fastcall SelectAll(void);
	__property HWND EditHandle = {read=FEditHandle, nodefault};
	__property Graphics::TCanvas* Canvas = {read=FCanvas};
	__property bool DroppedDown = {read=GetDroppedDown, write=SetDroppedDown, nodefault};
	__property Classes::TStrings* Items = {read=FItems, write=SetItems};
	__property int SelLength = {read=GetSelLength, write=SetSelLength, nodefault};
	__property int SelStart = {read=GetSelStart, write=SetSelStart, nodefault};
	__property TabStop  = {default=1};
	__property Height  = {default=22};
	__property bool ShowButton = {read=FShowButton, write=SetShowButton, default=1};
public:
	#pragma option push -w-inl
	/* TWinControl.CreateParented */ inline __fastcall TsCommonCombo(HWND ParentWindow) : TsCustomListControl(ParentWindow) { }
	#pragma option pop
	
};


class PASCALIMPLEMENTATION TsCustomComboBoxStrings : public Classes::TStrings 
{
	typedef Classes::TStrings inherited;
	
private:
	TsCommonCombo* FComboBox;
	
protected:
	virtual int __fastcall GetCount(void);
	virtual AnsiString __fastcall Get(int Index);
	virtual System::TObject* __fastcall GetObject(int Index);
	virtual void __fastcall PutObject(int Index, System::TObject* AObject);
	virtual void __fastcall SetUpdateState(bool Updating);
	__property TsCommonCombo* ComboBox = {read=FComboBox, write=FComboBox};
	
public:
	virtual void __fastcall Clear(void);
	virtual void __fastcall Delete(int Index);
	virtual int __fastcall IndexOf(const AnsiString S);
public:
	#pragma option push -w-inl
	/* TStrings.Destroy */ inline __fastcall virtual ~TsCustomComboBoxStrings(void) { }
	#pragma option pop
	
public:
	#pragma option push -w-inl
	/* TObject.Create */ inline __fastcall TsCustomComboBoxStrings(void) : Classes::TStrings() { }
	#pragma option pop
	
};


class DELPHICLASS TsComboBoxStrings;
class PASCALIMPLEMENTATION TsComboBoxStrings : public TsCustomComboBoxStrings 
{
	typedef TsCustomComboBoxStrings inherited;
	
public:
	virtual int __fastcall Add(const AnsiString S);
	virtual void __fastcall Insert(int Index, const AnsiString S);
public:
	#pragma option push -w-inl
	/* TStrings.Destroy */ inline __fastcall virtual ~TsComboBoxStrings(void) { }
	#pragma option pop
	
public:
	#pragma option push -w-inl
	/* TObject.Create */ inline __fastcall TsComboBoxStrings(void) : TsCustomComboBoxStrings() { }
	#pragma option pop
	
};


class DELPHICLASS TsCommonComboBox;
class PASCALIMPLEMENTATION TsCommonComboBox : public TsCommonCombo 
{
	typedef TsCommonCombo inherited;
	
private:
	bool FAutoComplete;
	bool FAutoDropDown;
	unsigned FLastTime;
	AnsiString FFilter;
	Stdctrls::TEditCharCase FCharCase;
	bool FSorted;
	Stdctrls::TComboBoxStyle FStyle;
	Classes::TStringList* FSaveItems;
	Stdctrls::TDrawItemEvent FOnDrawItem;
	Stdctrls::TMeasureItemEvent FOnMeasureItem;
	Sconst::TsDisabledKind FDisabledKind;
	bool FReadOnly;
	void __fastcall SetCharCase(Stdctrls::TEditCharCase Value);
	void __fastcall SetSelText(const AnsiString Value);
	void __fastcall SetSorted(bool Value);
	HIDESBASE MESSAGE void __fastcall WMEraseBkgnd(Messages::TWMEraseBkgnd &Message);
	HIDESBASE MESSAGE void __fastcall CMParentColorChanged(Messages::TMessage &Message);
	MESSAGE void __fastcall CNDrawItem(Messages::TWMDrawItem &Message);
	HIDESBASE MESSAGE void __fastcall WMLButtonDown(Messages::TWMMouse &Message);
	HIDESBASE MESSAGE void __fastcall WMPaint(Messages::TWMPaint &Message);
	HIDESBASE MESSAGE void __fastcall WMLButtonDblClk(Messages::TMessage &Message);
	virtual void __fastcall SkinPaint(HDC DC);
	void __fastcall SetDisabledKind(const Sconst::TsDisabledKind Value);
	
protected:
	virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
	virtual void __fastcall CreateWnd(void);
	virtual void __fastcall DestroyWnd(void);
	virtual void __fastcall DrawItem(int Index, const Types::TRect &Rect, Windows::TOwnerDrawState State);
	virtual void __fastcall DrawSkinItem(int Index, const Types::TRect &Rect, Windows::TOwnerDrawState State);
	virtual int __fastcall GetItemHt(void);
	virtual TMetaClass* __fastcall GetItemsClass(void);
	AnsiString __fastcall GetSelText();
	DYNAMIC void __fastcall KeyPress(char &Key);
	virtual void __fastcall MeasureItem(int Index, int &Height);
	bool __fastcall SelectItem(const AnsiString AnItem);
	virtual void __fastcall SetStyle(Stdctrls::TComboBoxStyle Value);
	__property bool Sorted = {read=FSorted, write=SetSorted, default=0};
	__property Stdctrls::TDrawItemEvent OnDrawItem = {read=FOnDrawItem, write=FOnDrawItem};
	__property Stdctrls::TMeasureItemEvent OnMeasureItem = {read=FOnMeasureItem, write=FOnMeasureItem};
	virtual int __fastcall GetItemCount(void);
	
public:
	__property Align  = {default=0};
	__fastcall virtual TsCommonComboBox(Classes::TComponent* AOwner);
	__fastcall virtual ~TsCommonComboBox(void);
	virtual void __fastcall WndProc(Messages::TMessage &Message);
	__property Stdctrls::TComboBoxStyle Style = {read=FStyle, write=SetStyle, default=0};
	__property bool AutoComplete = {read=FAutoComplete, write=FAutoComplete, default=1};
	__property bool AutoDropDown = {read=FAutoDropDown, write=FAutoDropDown, default=0};
	__property Stdctrls::TEditCharCase CharCase = {read=FCharCase, write=SetCharCase, default=0};
	__property AnsiString SelText = {read=GetSelText, write=SetSelText};
	__property Sconst::TsDisabledKind DisabledKind = {read=FDisabledKind, write=SetDisabledKind, default=1};
	
__published:
	__property bool ReadOnly = {read=FReadOnly, write=FReadOnly, default=0};
public:
	#pragma option push -w-inl
	/* TWinControl.CreateParented */ inline __fastcall TsCommonComboBox(HWND ParentWindow) : TsCommonCombo(ParentWindow) { }
	#pragma option pop
	
};


#pragma option push -b-
enum TsColorBoxStyles { cbStandardColors, cbExtendedColors, cbSystemColors, cbIncludeNone, cbIncludeDefault, cbCustomColor, cbPrettyNames, cbCustomColors };
#pragma option pop

typedef Set<TsColorBoxStyles, cbStandardColors, cbCustomColors>  TsColorBoxStyle;

⌨️ 快捷键说明

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