没人知道吗?多谢,我可以在一个贴子送分!谢谢了!
解决方案 »
- 怎么CSDN空间进不了了?
- 在线程连接数据库有时会报“No Connect”,有人遇到过这样的问题吗?
- 在远程注入其他进程的DLL中使用settimer的问题
- IE 中的编码菜单
- clientSocket和serverSocket是基于什么协议工作的?
- 用adoquery查到了数据表中的一个记录,如何取出这个记录的某个指定字段?
- 我是学VC的,现在请学Delphi的朋友帮忙.
- delphi里有没有类似setredraw(false|true)函数,控制控件的重绘?
- 我做个东东,是关于数据库查询的,花了两天时间,有兴趣的朋友可以和我联系。
- 小问题,但对我很大!
- 如果將ADOCONNECTION的CONNECTIONSTRING設為動態的﹐那么在程序的哪個事件中設置ADOQUERY的ACTIVE屬性﹖
- 给你两个DataSource,两个Table,一个Database,不准再用Query,你能用代码实现查找字段的功能吗?
unit WRRenderControl;interfaceuses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,ExtCtrls;type
TWRRender = class;
TWRRendersControl = class;TWRSymbol = class (TCollectionItem)
private
FSymBit : TBitmap;
FSymTip : String;
procedure SetSymBit(value : TBitmap);
public
constructor Create(Collection : TCollection);override;
procedure Assign(Source: TPersistent); override;
destructor Destroy;override;
published
property SymBit : TBitmap read FSymBit write SetSymBit;
property SymTip : String read FSymTip write FSymTip;
end;TWRSymbols = class (TCollection)
private
FWRRender : TWRRender;
function GetItem(index : integer) : TWRSymbol;
procedure SetItem(index : integer;Value : TWRSymbol);
protected
function GetOwner : TPersistent;override;
public
Constructor Create( WRRender : TWRRender);
function Add : TWRSymbol;
property Items[index : integer] : TWRSymbol read GetItem write SetItem;default;
end;TWRRender = class (TPersistent)
private
FActive : Boolean;
FChecked : Boolean;
FLayerTip : String;
FWRSymbols : TWRSymbols;
FVisible : Boolean;
procedure SetActive ( value : Boolean);
procedure SetChecked (value : Boolean);
procedure SetWRSymbols(value : TWRSymbols);
property Active : Boolean read FActive write SetActive default false;
public
constructor Create;
destructor Destroy ;override;
procedure Assign(Source : TPersistent);override;
published
property Visible : Boolean read FVisible write FVisible default true;
property Checked : Boolean read FChecked write SetChecked default false;
property LayerTip : string read FLayerTip write FLayerTip;
property WRSymbols : TWRSymbols read FWRSymbols write SetWRSymbols;
end;TWRRenderItem = class (TCollectionItem)
private
FWRRender : TWRRender;
function GetWRRender : TWRRender;
procedure SetWRRender(Value : TWRRender);public
constructor Create(Collection : TCollection);override;
procedure Assign(Source: TPersistent); override;
destructor Destroy;override;
published
property WRRender : TWRRender read GetWRRender write SetWRRender;
end;TWRRenders = Class(TCollection)
private
FWRRendersControl : TWRRendersControl;
function GetItem(index : integer) : TWRRenderItem;
procedure SetItem(index : integer;value : TWRRenderItem);
procedure ExChange(fromindex : integer;toindex : integer);
protected
function GetOwner : TPersistent;override;
public
constructor Create( WRRendersControl : TWRRendersControl);
function Add : TWRRenderItem;
procedure Move(Fromindex,ToIndex : integer);
property Items[index : integer] : TWRRenderItem read GetItem write SetItem;default;
end;TRegionClickEvent = procedure (RendersControl: TWRRendersControl;index : integer) of Object;TWRRendersControl = class(TCustomControl)
private
{ Private declarations }FOrigionPt : TPoint;
FCheckedBitMap : TBitMap;
FUnCheckedBitMap : TBitMap;
FWRRenders : TWRRenders;
FEditable : Boolean;
FOnCheckRegionClick : TRegionClickEvent;
FOnBodyRegionClick : TRegionClickEvent;
FOnEditableChanged : TNotifyEvent;
FLeftTopOutLineColor,FRightBottomOutlineColor : TColor;
FOutlineWidth : integer;procedure SetCheckedBitMap(Value : TBitMap);
procedure SetUncheckedBitMap( Value : TBitMap);
procedure SetWRRenders(value : TWRRenders);
procedure SetActiveIndex(Index : integer);
procedure SetEditable(value : boolean);
procedure CheckRegionClick(index : integer) ; //dynamic;
procedure BodyRegionClick(index : integer) ; //dynamic;
procedure EditableChanged;function GetRenderRect(index : integer) : TRect;
function GetActiveIndex : integer;protected
{ Protected declarations }
function CanAutoSize(var NewWidth, NewHeight: Integer): Boolean; override;
procedure Paint; override;
procedure MouseUp(Button: TMouseButton; Shift: TShiftState;
X, Y: Integer); override;
procedure MouseDown( Button: TMouseButton; Shift: TShiftState;
X, Y: Integer); override;
procedure MouseMove(Shift: TShiftState; X, Y: Integer);override;public
{ Public declarations }
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure Click; override;
function ItemAtPos(X,Y : integer) : Integer;
procedure ResetBounds;property Editable : Boolean read FEditable write SetEditable ;published
{ Published declarations }
property CheckedBitmap : TBitmap read FCheckedBitmap write SetCheckedBitmap;
property UnCheckedBitmap : TBitMap read FUnCheckedBitmap write SetUnCheckedBitmap;
property WRRenders : TWRRenders read FWRRenders write SetWRRenders;
property ActiveIndex : Integer read GetActiveIndex write SetActiveIndex;
property LeftTopOutlineColor : TColor read FLeftTopOutlineColor write FLeftTopOutlineColor;
property RightBottomOutlineColor : TColor read FRightBottomOutlineColor write FRightBottomOutlineColor;
property OutlineWidth : integer read FOutlineWidth write FOutlineWidth;
property PopupMenu;
property AutoSize ;
property Font;
property Align;
property Color;
property OnClick;
property OnMouseDown;
property OnMouseUp;
property OnMouseMove;
property OnDblClick;
property OnDragDrop;
property OnDragOver;
property OnCheckRegionClick : TRegionClickEvent read FOnCheckRegionClick write FOnCheckRegionClick;
property OnBodyRegionClick : TRegionClickEvent read FOnBodyRegionClick write FOnBodyRegionClick;
property OnEditableChanged : TNotifyEvent read FOnEditableChanged write FOnEditableChanged;
end;procedure Register;