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

📄 advdblookupcombobox.hpp

📁 TMS component pack v4.2 for delphi
💻 HPP
📖 第 1 页 / 共 2 页
字号:
// CodeGear C++ Builder
// Copyright (c) 1995, 2007 by CodeGear
// All rights reserved

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

#ifndef AdvdblookupcomboboxHPP
#define AdvdblookupcomboboxHPP

#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 <Classes.hpp>	// Pascal unit
#include <Stdctrls.hpp>	// Pascal unit
#include <Extctrls.hpp>	// Pascal unit
#include <Controls.hpp>	// Pascal unit
#include <Messages.hpp>	// Pascal unit
#include <Sysutils.hpp>	// Pascal unit
#include <Forms.hpp>	// Pascal unit
#include <Graphics.hpp>	// Pascal unit
#include <Buttons.hpp>	// Pascal unit
#include <Grids.hpp>	// Pascal unit
#include <Db.hpp>	// Pascal unit
#include <Dialogs.hpp>	// Pascal unit
#include <Math.hpp>	// Pascal unit
#include <Imglist.hpp>	// Pascal unit
#include <Variants.hpp>	// Pascal unit
#include <Alxpvs.hpp>	// Pascal unit
#include <Menus.hpp>	// Pascal unit

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

namespace Advdblookupcombobox
{
//-- type declarations -------------------------------------------------------
class DELPHICLASS TFindList;
class DELPHICLASS TAdvDBLookupComboBox;
class DELPHICLASS TDropGridListButton;
class PASCALIMPLEMENTATION TDropGridListButton : public Buttons::TSpeedButton 
{
	typedef Buttons::TSpeedButton inherited;
	
private:
	Controls::TWinControl* FFocusControl;
	Classes::TNotifyEvent FMouseClick;
	Graphics::TBitmap* FArrEnabled;
	bool FIsWinXP;
	bool FHover;
	HIDESBASE MESSAGE void __fastcall WMLButtonDown(Messages::TMessage &Msg);
	HIDESBASE MESSAGE void __fastcall CMEnabledChanged(Messages::TMessage &Msg);
	HIDESBASE MESSAGE void __fastcall CMMouseEnter(Messages::TMessage &Msg);
	HIDESBASE MESSAGE void __fastcall CMMouseLeave(Messages::TMessage &Msg);
	
protected:
	virtual void __fastcall Paint(void);
	__property bool Hover = {read=FHover, write=FHover, nodefault};
	
public:
	DYNAMIC void __fastcall Click(void);
	__fastcall virtual TDropGridListButton(Classes::TComponent* AOwner);
	__fastcall virtual ~TDropGridListButton(void);
	__property bool IsWinXP = {read=FIsWinXP, write=FIsWinXP, nodefault};
	
__published:
	__property Controls::TWinControl* FocusControl = {read=FFocusControl, write=FFocusControl};
	__property Classes::TNotifyEvent MouseClick = {read=FMouseClick, write=FMouseClick};
};


class DELPHICLASS TInplaceStringGrid;
class PASCALIMPLEMENTATION TInplaceStringGrid : public Grids::TStringGrid 
{
	typedef Grids::TStringGrid inherited;
	
private:
	TAdvDBLookupComboBox* FParentEdit;
	HIDESBASE MESSAGE void __fastcall WMKeyDown(Messages::TWMKey &Msg);
	
protected:
	DYNAMIC void __fastcall DoExit(void);
	__property TAdvDBLookupComboBox* ParentEdit = {read=FParentEdit, write=FParentEdit};
public:
	#pragma option push -w-inl
	/* TStringGrid.Create */ inline __fastcall virtual TInplaceStringGrid(Classes::TComponent* AOwner) : Grids::TStringGrid(AOwner) { }
	#pragma option pop
	#pragma option push -w-inl
	/* TStringGrid.Destroy */ inline __fastcall virtual ~TInplaceStringGrid(void) { }
	#pragma option pop
	
public:
	#pragma option push -w-inl
	/* TWinControl.CreateParented */ inline __fastcall TInplaceStringGrid(HWND ParentWindow) : Grids::TStringGrid(ParentWindow) { }
	#pragma option pop
	
};


#pragma option push -b-
enum TSortMethod { smText, smNumeric, smDate };
#pragma option pop

#pragma option push -b-
enum TDropDirection { ddDown, ddUp };
#pragma option pop

class DELPHICLASS TDropForm;
class PASCALIMPLEMENTATION TDropForm : public Forms::TForm 
{
	typedef Forms::TForm inherited;
	
private:
	bool FSizeable;
	HIDESBASE MESSAGE void __fastcall WMClose(Messages::TMessage &Msg);
	
protected:
	virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
	
__published:
	__property bool Sizeable = {read=FSizeable, write=FSizeable, nodefault};
public:
	#pragma option push -w-inl
	/* TCustomForm.Create */ inline __fastcall virtual TDropForm(Classes::TComponent* AOwner) : Forms::TForm(AOwner) { }
	#pragma option pop
	#pragma option push -w-inl
	/* TCustomForm.CreateNew */ inline __fastcall virtual TDropForm(Classes::TComponent* AOwner, int Dummy) : Forms::TForm(AOwner, Dummy) { }
	#pragma option pop
	#pragma option push -w-inl
	/* TCustomForm.Destroy */ inline __fastcall virtual ~TDropForm(void) { }
	#pragma option pop
	
public:
	#pragma option push -w-inl
	/* TWinControl.CreateParented */ inline __fastcall TDropForm(HWND ParentWindow) : Forms::TForm(ParentWindow) { }
	#pragma option pop
	
};


typedef void __fastcall (__closure *TGridListItemToText)(System::TObject* sender, AnsiString &aText);

typedef void __fastcall (__closure *TTextToGridListItem)(System::TObject* sender, AnsiString &aItem);

class DELPHICLASS TDBColumnCollection;
class DELPHICLASS TDBColumnItem;
class PASCALIMPLEMENTATION TDBColumnCollection : public Classes::TCollection 
{
	typedef Classes::TCollection inherited;
	
public:
	TDBColumnItem* operator[](int Index) { return Items[Index]; }
	
private:
	TAdvDBLookupComboBox* FOwner;
	HIDESBASE TDBColumnItem* __fastcall GetItem(int Index);
	HIDESBASE void __fastcall SetItem(int Index, const TDBColumnItem* Value);
	
protected:
	virtual void __fastcall Update(Classes::TCollectionItem* Item);
	
public:
	HIDESBASE TDBColumnItem* __fastcall Add(void);
	HIDESBASE TDBColumnItem* __fastcall Insert(int index);
	__property TDBColumnItem* Items[int Index] = {read=GetItem, write=SetItem/*, default*/};
	__fastcall TDBColumnCollection(TAdvDBLookupComboBox* AOwner);
	DYNAMIC Classes::TPersistent* __fastcall GetOwner(void);
public:
	#pragma option push -w-inl
	/* TCollection.Destroy */ inline __fastcall virtual ~TDBColumnCollection(void) { }
	#pragma option pop
	
};


class DELPHICLASS TDBGridDataLink;
class PASCALIMPLEMENTATION TDBGridDataLink : public Db::TDataLink 
{
	typedef Db::TDataLink inherited;
	
private:
	TAdvDBLookupComboBox* FGrid;
	int FNumberRecords;
	Db::TDataSetState OldState;
	
protected:
	virtual void __fastcall ActiveChanged(void);
	virtual void __fastcall RecordChanged(Db::TField* Field);
	virtual void __fastcall DataSetChanged(void);
	
public:
	__fastcall TDBGridDataLink(TAdvDBLookupComboBox* AGrid);
	__fastcall virtual ~TDBGridDataLink(void);
};


class DELPHICLASS TDBGridLookupDataLink;
class PASCALIMPLEMENTATION TDBGridLookupDataLink : public Db::TDataLink 
{
	typedef Db::TDataLink inherited;
	
private:
	TAdvDBLookupComboBox* FGrid;
	
protected:
	void __fastcall Modify(void);
	virtual void __fastcall DataSetScrolled(int distance);
	virtual void __fastcall ActiveChanged(void);
	virtual void __fastcall RecordChanged(Db::TField* Field);
	virtual void __fastcall DataSetChanged(void);
	
public:
	__fastcall TDBGridLookupDataLink(TAdvDBLookupComboBox* AGrid);
	__fastcall virtual ~TDBGridLookupDataLink(void);
};


#pragma option push -b-
enum TSortType { stAscendent, stDescendent };
#pragma option pop

#pragma option push -b-
enum TLookupMethod { lmNormal, lmFast, lmRequired };
#pragma option pop

#pragma option push -b-
enum TLabelPosition { lpLeftTop, lpLeftCenter, lpLeftBottom, lpTopLeft, lpBottomLeft, lpLeftTopLeft, lpLeftCenterLeft, lpLeftBottomLeft, lpTopCenter, lpBottomCenter, lpRightTop, lpRightCenter, lpRightBottom };
#pragma option pop

class DELPHICLASS TLabelEx;
#pragma option push -b-
enum TEllipsType { etNone, etEndEllips, etPathEllips };
#pragma option pop

class PASCALIMPLEMENTATION TLabelEx : public Stdctrls::TLabel 
{
	typedef Stdctrls::TLabel inherited;
	
private:
	TEllipsType FEllipsType;
	void __fastcall SetEllipsType(const TEllipsType Value);
	
protected:
	virtual void __fastcall Paint(void);
	
__published:
	__property TEllipsType EllipsType = {read=FEllipsType, write=SetEllipsType, nodefault};
public:
	#pragma option push -w-inl
	/* TCustomLabel.Create */ inline __fastcall virtual TLabelEx(Classes::TComponent* AOwner) : Stdctrls::TLabel(AOwner) { }
	#pragma option pop
	
public:
	#pragma option push -w-inl
	/* TGraphicControl.Destroy */ inline __fastcall virtual ~TLabelEx(void) { }
	#pragma option pop
	
};


#pragma option push -b-
enum TDropDownType { ddUser, ddAuto, ddOnError };
#pragma option pop

typedef void __fastcall (__closure *TLookupErrorEvent)(System::TObject* Sender, AnsiString LookupValue);

typedef void __fastcall (__closure *TLookupSuccessEvent)(System::TObject* Sender, AnsiString LookupValue, AnsiString LookupResult);

#pragma option push -b-
enum TLookupLoad { llAlways, llOnNeed };
#pragma option pop

typedef void __fastcall (__closure *TDrawGridCellProp)(System::TObject* Sender, int RowIndex, int ColIndex, Db::TField* DBField, AnsiString Value, Graphics::TFont* AFont, Graphics::TColor &AColor);

class PASCALIMPLEMENTATION TAdvDBLookupComboBox : public Stdctrls::TCustomEdit 
{
	typedef Stdctrls::TCustomEdit inherited;
	
private:
	TDropGridListButton* FButton;
	bool FEditorEnabled;
	Classes::TNotifyEvent FOnClickBtn;
	TInplaceStringGrid* FStringGrid;
	int FDropHeight;
	int FDropWidth;
	int FSortColumns;
	TSortMethod FSortMethod;
	Graphics::TColor FDropColor;
	Graphics::TFont* FDropFont;
	bool FDropSorted;
	TDropDirection fDropDirection;
	TDropForm* FChkForm;
	bool FChkClosed;
	bool FCloseClick;
	TGridListItemToText FOnGridListItemToText;
	TTextToGridListItem FOnTextToGridListItem;
	TDBColumnCollection* FColumns;
	TDBGridDataLink* FListDataLink;
	TDBGridLookupDataLink* FDataSourceLink;
	Classes::TList* FAllfields;
	Graphics::TBitmap* FBitmapUp;
	Graphics::TBitmap* FBitmapdown;
	bool FDataScroll;
	int FItemIndex;
	int FOldItemIndex;
	AnsiString FKeyField;
	AnsiString FDataField;
	Graphics::TColor FHeaderColor;
	Graphics::TColor FSelectionColor;
	AnsiString FCurrentSearch;
	bool FAccept;
	TSortType FSensSorted;
	Graphics::TColor FSelectionTextColor;
	bool FGridLines;
	bool FGridColumnSize;
	AnsiString FFilterValue;
	AnsiString FFilterField;
	void *FBookmark;
	TLookupMethod FLookupMethod;

⌨️ 快捷键说明

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