FindComponent方法
对应对象:所有组件
声明:function FindComponent(const AName: string): TComponent;
功能:FindComponent方法在当前的组件的Components数组中指出给定的组件。被传递给FindComponent中的字符串是被寻找的组件名。例如“Edit1”,“Label1”。FindComponent将返回该组件(如果它存在),否则将返回空。
例子:
//Use FindComponent to obtain another pointer to CheckBoxl
procedure TForml.Button4Click(Sender: TObject);
var
MyComponent: TComponent;
begin
MyComponent := FindComponent(’CheckBox1’);
TCheckBox(MyComponent).Checked := True;
end;
Name属性
对应对象:所有组件
声明:property Name: TComponentName;
功能:Name是一个标识符、它可以用于在Delphi中的源代码和设计环境之间访问组件。De1phi在设计时为添加的组件提供了十分烦琐的缺省名,例如“Forml”,“Form2”等等。用户可以随意地改变它们。当动态的链接组件时,用户可以在源代码的var部分命名组件。
例子:动态创建一个按纽控件。
var
Form2: TForm2;
MyButton: TButton; //the Name property is MyButton
implementation
{$R *.DFM}
procedure TForml.FormCreate(Sender: TObject);
begin
MyButton := TButton.Create(Self);
MyButton.Parent := Form1;
MyButton.Height := 32;
MyButton.Width := 40;
MyButton.Caption := ’Hi’;
//set other button properties as needed
end;
警告:在运行时不要改变设计时创建的组件名。Delphi保持对设计时添加的组件方法和事件处理程序的跟踪,在程序运行时改变组件名将导致一些难以应付的事故。
Owner属性
对应对象:所有组件
声明:property Owner: TComponent;
功能:Owner属性用来指出当前组件的拥有者。
一个窗体对应所有在其上面的组件是它们的拥有者。当一个组件的拥有者被撤销时,它的存储空间同时被释放,那么该组件也就被撤销了,它所占据的内存也被释放。拥有一个组件和作为一个组件的父类是不同的。控件(它是TComponent的派生类)具有一个Parent属性,是对应组件的视觉容器而不是说明它是拥有者。视觉容器像其他包含的控件面板一样,都没有拥有控件,包含的控件仍旧由窗体所拥有。当动态创建组件时,Owner属性由Create方法来设置,在设计时创建的组件将它的Owner属性设置成为当前的窗体。Owner属性在运行时是有效的。
Tag属性
对应对象:所有组件
声明:property Tag: Longint;
功能:Tag属性用组件存储一个用户定义的长整型值。Tag属性允许用户使用组件存储长整型值,当用户看到它合适时就可以使用它,它的使用是可以选择的。
2003-11-14 15:35:49 VCL组件的属性和方法详解 -- 四、TControl四、TControl
Align 属性
对应对象:TControl
声明:TAlign = (alNone, alTop, alBottom, alLeft, alRight, alClient);
property Align: TAlign;
功能:Align属性用来确定控件在它的父类中的对齐方式。 Align属性的类型是TAlign,它可以被设置成为以下值中的一个。
值 / 意 义
alNone / 组件被保持在它的父类放置的位置,即窗体或面板,它是属性的缺省值。
alTop / 组件被移动到窗体的顶端,并且被重新决定大小以充满窗体的宽,组件的高度不会受到影响。
alBottom / 组件被移动到窗体的底端,并且被重新决定大小以充满窗体的宽,组件的高度不会受到影响。
alLeft / 组件被移动到窗体的左边,并且被重新设定大小以充满窗体的高度,组件的宽度不会受到影响。
alRight / 组件被移动到窗体的右边,并且被重新设定大小以充满窗体的高度,组件的宽度不会受到影响。
alClient / 组件被重新决定大小以充满一个窗体的用户区。如果另一个组件已经占据了用户区的部分,那么组件将重新在用户区中的剩余部分中设定大小。
BoundsRect 属性
对应对象:TControl
声明:TRect = record
case Integer of
0: (Left, Top, Right, Bottom: Integer);
1: (TopLeft, BottomRight: TPoint);
end;
property BoundsRect: TRect;
功能:BoundsRect属性用来指出控件的边界的矩形。 BoundsRect属性包含了描述控件父类区域的边界的矩形。矩形的坐标是在父类坐标系中给定。
Caption 属性
对应对象:TControl
声明:
TCaption = type string;
property Caption: TCaption;
功能:Caption属性用来确定用于标记控件的字符串。 控件的标题可以被修改,但在运行时却很少被修改。由于Caption属性对用户禁止编辑,所以要允许用户编辑显示在控件中的文字的控件,应使用Text属性而不是Caption属性。Caption属性的类型为TCaption,它是一个标准的字符串。
例子:
procedure TForm1.FormCreate(Sender: TObject);
begin
Form1.Caption := ‘Delphi Explorer’;
Button1.Caption := ‘OK’;
Label1.Caption := ‘Captions are relatively static’;
end;
ClientHeight 属性
对应对象:TControl
声明:property ClientHeight: Integer;
功能:ClientHeight属性用来说明控件用户区的高度。 ClientHeight属性对应除窗体之外的所有控件运行时的属性。它用像素来进行度量,许多控件与ClientHeight属性具有相同的高度值。
例子:
procedure TForm1.FormCreate(Sender: TObject);
var
X, Y: Integer;
begin
X := Form1.ClientWidth;
Y := Form1.ClientHeight;
//...
end;
ClientOrigin 属性
对应对象:TControl
声明:TPoint = record
X: Longint;
Y: Longint;
end;
property ClientOrigin: TPoint;
功能:ClientOrigin属性说明包含控件的用户区的左上角的坐标值。 ClientOrigin属性包含了控件用户区的上部左边的像素的坐标值,坐标是以屏幕的坐标值进行度量。
例子:
procedure TForm1.FormCreate(Sender: TObject);
var
OriginPoint: TPoint;
begin
OriginPoint := Form1.ClientOrigin;
end;
ClientRect 属性
对应对象:TControl
声明:TPoint = record
X: Longint;
Y: Longint;
end;
TRect = record
case Integer of
0: (Left, Top, Right, Bottom: Integer);
1: (TopLeft, BottomRight: TPoint);
end;
property ClientRect: TRect;
功能:ClientRect属性说明了包含有控件的用户区的尺寸大小。 ClientRect属性是运行时有效,是只读型的。属性包含了控件用户区的边界上下左右的像素位置,对应TRect类型结构区域的左边和上部的坐标值是0,对应的下边和右边的像素值说明了区域的高度和宽度。
例子:
procedure TForm1.FormCreate(Sender: TObject);
begin
Form1.Canvas.Brush.Color := clBlue;
Form1.Canvas.FillRect(Form1.ClientRect);
end;
ClientWidth 属性
对应对象:TControl
声明:property ClientWidth: Integer;
功能:ClientWidth属性说明包含控件用户区的宽度。
ClientWidth属性是对应除窗体之外的所有控件都有效运行时的属性。该属性表示了控件用户区的水平大小,宽度以像素来度量。对于许多控件ClientWidth属性和Width属性是一致的,而窗体则将用户区视为窗体框架内的成分,窗体的ClientWidth属性通常将小于Width属性的值。
例子:
procedure TForm1.FormCreate(Sender: TObject);
var
X, Y: Integer;
begin
X := Form1.ClientWidth;
Y := Form1.ClientHeight;
//...
end;
Color 属性
对应对象:TControl
声明:property Color: TColor;
功能:Color属性用来确定控件的颜色。
用户可以使用Color属性来获得颜色或设置控件的颜色。用户可以通过手工来为控件的颜色属性赋予一个值进行重新设置。Color属性是TColor类型的值,它有许多有效的颜色值可以使用,详情见下表。
值 / 颜 色
clBlack / 黑色Black。
clMaroon / 栗色Maroon。
clGreen / 绿色Green。
clOlive / 橄榄绿Olive green。
clNavy / 深蓝色Navy blue。
clPurple/ 紫色Purple。
clTeal / 深青色Teal。
clGray / 灰色Gray。
clSilver / 银色Silver。
clRed / 红色Red。
clLine / 浅绿色Lime green。
clBlue / 蓝色Blue。
clFuchsia / 紫红色Fuchsia。
clAqua / 浅绿色Aqua。
clWhite / 白色White。
clBackground / 当前的系统桌面的背景颜色
clActiveCaption / 当前的被激活窗口的标题栏的颜色。
clInactiveCaption / 当前的没有被激活的窗口的标题栏的颜色。
clMenu / 当前的菜单背景的颜色。
clWindow / 当前的窗口背景的颜色。
clWindowFrame / 当前的窗口框架的颜色。
clMenuText / 当前的菜单上的文本的颜色。
clCaptionText / 当前的被激活窗口的标题栏的文本的颜色。
clActiveBorder / 当前的被激活窗口的边界颜色。
clInactiveBorder / 当前的没有被激活窗口的边界颜色。
clAppWorkSpace / 当前的应用程序工作区的颜色。
clHighlight / 当前的被选择文本的背景颜色。
clHighlightText / 当前的被选择文本的颜色。
clBtnFace / 当前的按钮表面的颜色。
clBtnShadow / 当前的按钮投影的阴影颜色。
clGrayText / 当前的无效文本的颜色。
clBtnText / 当前的按钮上文本的颜色。
clInactiveCaptionText / 当前的被激活窗口标题栏的文本颜色。
clBtnHighlight / 当前的按钮上高亮度的颜色。
cl3DDkShadow / 只有对Windows95或NT4.0系统:三维显示元素阴影的颜色。
cl3DLight / 只有对Windows95或NT4.0系统:对于三维显示元素的亮面(朝向光源的面)
clInfoText / 只有对Windows95或NT4.0系统:ToolTip(工具提示)的文本颜色。
clInfoBk / 只有对Windows95或NT4.0系统:ToolTip(工具提示)的背景颜色
ControlState 属性
对应对象:TControl
声明:TControlState = set of (csLButtonDown, csClicked, csPalette, csReadingState, csAlignmentNeeded, csFocusing, csCreating);
property ControlState: TControlState;
功能:ControlState属性用来查询控件运行时的状态。
ControlState属性用来指明运行的每一个时刻控件的状态。属性属于TControlState类型,这个类型是一个标志集,它可以被设置成为以下值的组合形式。
值 / 意 义
csLButtonDown / 点击鼠标的左按钮不放,这个是为所有的鼠标按下事件设置的。
csClicked / 和csLButtonDown一样,只是在ControlStyle属性包含csClickEvents标志时它才被设置,以说明鼠标按下时的事件。
csPalette / 说明一个WM_PALETTCHANGED信息被控件接受或者被控件的父类接受。
csReadingState / 控件正在从一个流中读取它的状态。
csAlignmentNeeded / 当队列再次被允许时控件需要重新排列它自己。
csFocusing / 应用程序过程焦点送给控件。这不能保证控件就将收到焦点,但是防止了递归的调用。
csPaintCopy / 控件被复制,意味着控件的拷贝被打印,控制风格标记csReplicatable必须被设置为该状态的发生。
csCreating / 框架和它的所有者发生“与”或者“或”的逻辑,并且控件被创建了。这个标记将在所有的创建动作完成时被清除。
ControlStyle 属性
对应对象:TControl
声明:TControlStyle = set of (csAcceptsControls, csCaptionMouse, csDesignInteractive, csFramed, csClickEvents, csSetCaption, csOpaque, csDoubleClicks, csFixedWidth, csFixedHeight, csNoDesignVisible, csReplicatable, csNoStdEvents, csDisplayDragImage, csReflector);
property ControlStyle: TControlStyle;
功能:ControlStyle属性用来说明激活一个控件的哪些属性。
ControlStyle属性方式被改变的次数比相应ControlState属性的标记要少。ControlStyle属性属于TControlStyle的类型,它可以是以下值的组合。
值 / 意 义
csAcceptsControls / 接受上面的控件。
csCaptureMouse / 当这个事件发生时,控件捕获鼠标的事件。
csDesignInteractive / 控件在设计时将鼠标按钮的右击映射为鼠标按钮的左击来控制控件。
csClickEvents / 控件可以接受并且对按击的操作进行反应。
csFramed / 控件有一个三维框架。
csSetCaption / 如果标题还没有被明确地设置成为其他的内容时,控件将改变它的标题以便和Name属性相匹配。
csOpaque / 控件将用户区的矩形设为透明。
csDoubleClicks / 控件可以对鼠标的双击操作进行接受和反应,此外可以将双击映射成为按击操作。
csFixedWidth / 控件的宽度设为固定值。
csFixedHeight / 控件的高度设为固定值。
csNoDesignVisible / 在设计时控件是不可以变化的。
csReplicatable / 控件可以通过使用PaintTo方法,从而被拷贝到任意一个画面上进行绘制。
csNoStdEvents / 标准事件,例如鼠标、键盘、点击事件均被忽略。如果用户的代码不需要对这些事件进行反应或者希望用户的应用程序运行更快时将使用这个设置来处理。
csDisplayDragImage / 当鼠标被拖动到控件上面时,控件可从一个图像列表中显示一个图像。使用这个设置可使控件使用一个图像的列表。
csReflector / 控件将对系统对话框信息、焦点信息及尺寸改变信息进行反应,如果控件被运作一个ActiveX的控件时使用这个设置,可使控件接受这些事件的通知。
Cursor 属性
对应对象:TControl
声明:TCursor = -32768~32767;
功能:Cursor属性用来确定当鼠标在控件上进行拖动时,将显示什么样的鼠标图形。Cursor属性属于TCursor类型变量,它包含了用户可以使用的许多标准的鼠标形式,并包含了以下的有效值:crDefault,crArrow,crNone,crCross,crIBeam,crSize,crSizeNESW,crSizeNS,crSizeNWSE,crSizeWE,crUpArrow,crHourGlass,crDrag,crNoDrop,crHSplit,crVSplit,crMultiDrag,crSQLWait,crNo,crAppStart,crHelp和crHandPoint,每个值对应的鼠标图像可以参考有关函数。
例子:
procedure TForm1.FormCreate(Sender: TObject);
begin
Button1.Cursor := crCross;
Panel1.Cursor := crArrow;
end;
DesktopFont 属性
对应对象:TControl
声明:property DesktopFont: Boolean;
功能:DesktopFont属性说明当写入文本时,控件是否使用系统的桌面的字体。
DragCursor 属性
对应对象:TControl
声明:TCursor = -32768~32767;
property DragCursor: TCursor;
功能:DragCursor属性用来确定鼠标在拖动时的形式。
在DragCursor属性有效之前用户必须首先设置控件接受下拉时的对象,实际上用户只需处理一个诸如OnDragOver的拖放事件便可实现。
例子:
//Change the cursor shape if an object is dragged over the panel
procedure TForm1.Panel1DragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
begin
Panel1.DragCursor := crDrag;
end;
DragMode 属性
对应对象:TControl
声明:TDragMode = (dmManual, dmAutomatic);
property DragMode: TDragMode;
功能:DragMode属性用来确定控件被拖动时的行为。
DragMode属性属于TDragMode类型变量。这个类型有两个有效的值,即两个有效的拖动方式,dmAutomatic:如果dmAutomatic被选择作为拖动形式,则控件可被拖动,并且用户可以随时地点击和拖动控件。dmManual:如果dmManual被选择为其拖动的方式,直到控件调用了BeginDrag方法,控件才可以被拖动。
例子:
procedure TForm1.FormCreate(Sender: TObject);
begin
//...
Form1.DragMode := dmAutomatic;
Panel1.DragMode := dmAutomatic;
end;
Enabled 属性
对应对象:TControl
声明:property Enabled: Boolean;
功能:Enabled属性用来确定控件对鼠标、键盘及Timer事件是否将作出反应。
如果Enabled属性被设置为真,那么控件将对用户的鼠标、键盘输入及Timer事件作出反应。如果Enabled属性被设置为假,那么控件将变成灰色并且对鼠标、键盘及Timer事件不作反应。一般当控件的功能与当前状态无关时,可将该属性设置为假。
Font 属性
对应对象:TControl
声明:property Font: TFont;
功能:Font属性用来确定控件上文字的字体。
Font属性允许用户对控件的文本和标题的字体的属性,选择各种有效的字体。字体属性包含颜色、名称、尺寸大小及风格。
例子:
with Form1.Font do
begin
Size := 12;
Name := ‘Arial’;
Color := clGreen;
Style := [fsBold];
end;
Height 属性
对应对象:TControl
声明:property Height: Integer;
功能:Height属性说明控件高度的尺寸大小。
Height属性以屏幕的像素作为尺寸的度量,指明控件的高度值。
例子:
procedure TForm1.FormPaint(Sender: TObject);
begin
Panel1.Top := 10;
Panel1.Left := 10;
Panel1.Height := Form1.ClientHeight – 20;
Panel1.Width := Form1.ClientWidth – 20;
end;
Hint属性
对应对象:Tcontrol
声明:property Hint:string;
功能:Hint属性用来说明当光标停止在控件上时将出现工具提示窗口内容。为了使工具能够提示所显示得文字,必须将包含了工具得窗体控件的ShowHint属性为真。如果窗体和控件的ShowHint属性被设置为真,但是没有设置控件Hint属性,那么工具将显示控件父类的Hint的文字。
IsControl属性
对应对象:TControl
声明:property lsControl:Boolean;
功能:IsControl 属性用来决定一个窗体是否存储了它的特别属性。
Left 属性
对应对象:Tcontrol
声明:property Left:Integer;
功能:Left属性用来说明控件左边界的水平坐标。Left属性指出控件离它的容器的左边边界是多少象素,并使用屏幕坐标来度量一个窗体的Left属性值。
MouseCapture属性
对应对象:Tcontrol
声明:property MouseCapture:Boolean;
功能:MouseCapture属性说明控件是否已经俘获了鼠标事件。
Name属性
对应对象:TControl
声明:TcomponentName:string;
propertyName:TComponentName
功能:属性是控件的名,它是可作为一个控件的新名或者用来指出控件的名。
Parent属性
对应对象:TControl
声明:property Parent:TwinControl;
功能:属性用来指出控件的父类(容器)。控件的父类是可视的,包含了控件的窗口控件。控件在它的父类被撤消时将被自动地撤消。
ParentColor属性
相应对象:TControl
声明:property ParentColor:Boolean;
功能:ParentColor属性用来确定控件是否将使用父类的颜色值,即Color值。如果ParentColor属性设置为真,那么控件将使用它父类的Color属性的颜色。如果ParentColor属性设置为假,那么控件将使用自己确定的Color属性的颜色值。
ParentFont属性
对应对象:TControl
声明:property ParentFont:Boolean;
功能:ParentFont属性用来确定控件是否使用父类的Font信息的属性值。如果ParentFont属性设置为真,那么控件将使用它父类的Font属性的字体。如果ParentFont属性设置为假,那么控件将使用自己确定的Font属性的字体属性值。
ParnetShowHint属性
对应对象:TControl
声明:property ParentShowHint:Boolean;
功能:ParentShowHint用来确定控件是否使用它的父类的ShowHint属性用来显示一个工具的提示。如果ParentShowHint属性设置为真,那么控件将使用它父类的ShowHint属性,以确定此控件是否将显示一个工具提示。如果ParentShowHint属性设置为假,则控件将使用自己定义的ShowHint属性的值以确定控件是否将显示一个工具提示。
PopupMenu属性
对应对象:TControl
声明:property PopupMenu:TpopupMenu;
功能:PopupMenu属性用来确定当用户右击控件区时,将对应地弹出哪种弹出式菜单。用户可以通过右击控件,来实现对应弹出式菜单的打开操作,用户可以通过调用弹出式菜单的Popup的方法来打开弹出式菜单。
例子:
procedure Tform1.FormCreate(Sender:Tobject);
begin
Form1.PopupMenu:=PopupMenu1;
//..
end;
//Exit the appllication when the Exit pop-up menu items is clicked
procedure Tform1.PopUpExitClick(Sender:Tobject);
begin
Close;
end;
ScalingFlags 属性
对应对象:TControl
声明:TscalingFlags=set of (sfLeft,sfTop,sfWidth,sfHeight,sfFont);
property ScalingFlags:TscalingFlags;
功能:ScalingFlags属性反应出控件的哪一个属性还没有进行尺度的计算。
ScalingFlags属性是一个内部标记的集合,首先在计算继承的窗体和控件的缩放比例时被使用。要是没有必要,应用程序将不使用这个属性。以下是标记和它们对应所表达的信息意义:
标记 / 意 义
SfLeft / 控件的左边没有被进行尺寸计算缩放。
SfTop / 控件的顶端没有被进行尺寸计算缩放。
SfWidth / 控件的宽度没有被进行尺寸计算缩放。
SfHeight / 控件的高度没有被进行尺寸计算缩放。
sfFont / 控件的字体没有被进行尺寸计算缩放。
ShowHint属性
对应对象:TConcrol
声明:property ShowHint:Boolean;
功能:ShowHint属性用来确定控件是否显示一个工具提示。如果ShowHint属性被设置为真,那么当鼠标或光标停留在控件上时,将会显示出一个具有Hint属性的中文内容的工具提示。如果ShowHint属性被设置为假,同时ParentShowHint属性的值是假,那么将不显示工具的提示,但当ShowHint属性被设置为假ParentShowHint属性的值为真时,工具提示将依据其父类的ShowHint属性,如果父类的ShowHint属性是真,工具提示将显示,否则将不出现提示。ShowHint属性的缺省的值是真。
例子:
procedure Tform1.FormPaint(Sender:Tobject);
begin
btnHideMenu.ShowHint:=True;
btnHideMenu.Hint:=’Click here to enable menus’;
end;
Text 属性
对应对象:TControl
声明:Tcaption:=type string;
property Text:Tcaption;
功能:Text属性用来确定控件中出现的用户编辑的文字内容。在运行是可以在程序中对文字进行修改,但却很少这样作。由于Caption的属性,用户是不能编辑的,所以不允许用户编辑的控件所显示的文字将是Caption的属性。
Top 属性
对应对象:TControl
声明:property Top:Integer;
功能:Top属性用来确定控件左上方的坐标值。Top属性是一个使用了容器坐标的属性。它说明控件的边界距离容器的边界有多少象素,并且窗体的Top属性以及屏幕坐标进行度量。
Visible 属性
对应对象:TControl
声明:property Visible:Boolean;
功能:Visible属性用来确定控件是否是可见。如果Visible属性为真,那么将是可见的。如果Visible属性为假,则是不可见的。
Width 属性
对应对象:TControl
声明:property Width:Integer;
功能:Width属性说明了控件的宽度值。用户象素值指出控件的水平大小。用户可以在运行时修改Width属性值来改变控件的宽度。
例子:参见Height属性例子。
WindowProc 属性
对应对象:TControl
声明:TwndMethod=procedure ( var Message:Tmessage) of object;
property WindowProc:TwndMethod;
功能:WindowProc属性包含了窗口的过程,过程是对传送给控件信息的一种反应。
BeginDrag 方法
对应对象:TControl
声明:procedure BeginDrag(Immediate:Boolean);
功能:BeginDrag方法在控件被手工拖动时有效,BeginDrag方法用来启动一个控件的拖动过程。Immediate参数用来确定拖动操作的条件,如果Immediate参数为真,那么拖动将立即实行,同时鼠标将变为拖动设置时的形式,如果Immediate参数为假,鼠标将不改变,只是当鼠标在空间上移动了5个象素时才开始进行拖动的操作。
BringToFront 方法
对应对象:TControl
声明:procedure BringToFront;
功能:BringToFront方法用来改变控件轴的次序,并吧它放置在所有其他控件的上面。每一个窗口和非窗口的控件都有对应的Z轴次序。每个窗体上的窗口控件都在相同的Z轴次序上,每个非窗口的控件在一个独自的Z轴次序集合中。一个窗体上的所有窗口控件存在于一个Z轴次序集合中,所有的非窗口控件在另一个的Z轴次序集合中。窗口的控件总是出现在非窗口控件的上面,窗口控件下面的非窗口的控件将不能使用BringToFront方法出现在窗口控件的上面。
例子:
procedure Tform1.Button2Click(Sender:Tobject);
begin
Button1.BringToFront;
end;
ChangeScale 方法
对应对象:TControl
声明:procedure ChangeScale(M,D:Integer);dynamic;
功能:ChangeScale方法改变空间的大小,并依据一个指定的比例值来进行。
Click 方法
对应对象:TControl
声明:procedure Click:dynamic;
功能:Click方法调用与事件关联的控制事件的句柄。
ClientToScreen 方法
对应对象:TControl
声明:Tpoint=record
X:Longint;
Y:Longint;
End;
Function ClientToScreen(const Point:Tpoint):Tpoint;
功能:方法将控件坐标上的一个点的坐标值转换成屏幕坐标的值。
例子:
procedure Tform1.FormCreate(Sender:Tobject);
var
ButtonPos:Tpoint;
Begin
ButtonPos:=Button1.ClientToScreen(Point(Button1.Left,Button1.Top));
//…
End;
Create 方法
对应对象:TControl
声明:constructor Create(Aowner:Tcomponent);override;
功能:Create方法用来创造一个TControl的事件。
DefaultHandler 方法
对应对象:TControl
声明:
//DefaultHandler provides message handling for all messages that a control does
//not have specific handlers for.
Procedure DefaultHandler(var Message);override;
功能:DefaultHandler方法用来当一个控件没有指明处理时,提供了对所有信息的缺省处理。
DoEndDrag 方法
对应对象:TControl
声明:procedure DoEndDrag (Target:Tobject);X,Y:Integer);dynamic;
功能:DoEndDrag方法提供了对一个控件的OnEndDrag事件进行保护实施的方法。
DragCanceled 方法
对应对象:TControl
声明:procedure DragCanceled;dynamic;
功能:DragCanceled方法除了提供对一个拖动进行取消反应外没有其他的操作。
DragOver 方法
对应对象:TControl
声明:
TdragState=(dsDragEnter,dsDragLeave,dsDragMove);
procedure DragOver (Source:Tobject;X,Y:Integer;State:TdragState;var Accept:Boolean);dynamic;
功能:DragOver方法调用OnDragOver事件的句柄。设置Accept参数为真时将说明使用者可以在控件上放置被拖动的对象,当Accept参数为假时,说明用户不能在控件上放置被拖动的对象到。Source参数时被拖动的对象,以下时可能有效的State参数值。
值 / 意 义
DsDragEnter / 鼠标正在进入控件。
DsDragMove / 鼠标在控件上移动。
dsDragLeave / 鼠标离开控件。
EndDrag 方法
对应对象:TControl
声明:procedure EndDrag(Drop:Boolean);
功能:EndDrag方法将终止一个控件被进一步的拖动。如果Drop参数为真,那么可以放下控件,如果Drop参数为假,控件将不能被放下,拖动的操作将被取消。
GetClientOrigin 方法
对应对象:TControl
声明:function GetClientOrigin:Tpoint;virtual;
功能:GetClientOrigin方法获得一个控件用户区左上角屏幕的坐标值。
GetClientRect 方法
对应对象:TControl
声明:Trect=record
case integer of
0: (Left,Top,Right,Botton:Integer);
1: (TopLeft,BottonRight:Tpoint);
end;
function GetClinetRect:Trect;virtual;
功能:GetClinetRect方法返回一个矩形,以用来定义控件的用户区。
GetDeviceContext 方法
对应对象:TControl
声明:function GetDeviceContext( var WindowHandle:HWnd):Hdc;virtual;
功能:GetDeviceContext方法返回一个设备的上下文。
GetDragImages 方法
对应对象:TControl
声明:function GetDragImages:TcustomImageList;virtual;
功能:GetDragImages方法返回控件的图象列表,列表中包含了当拖动时被显示的图像。
GetPalette 方法
对应对象:TControl
声明:funciton GetPalette:HPALETTE;dynamic;
功能:GetPalette方法返回一个调色板的句柄,它被控件所使用。
GetParentComponent 方法
对应对象:TControl
声明:funciton GetParentComponent:Tcomponent;override;
功能:GetParentComponent方法返回控件父类的组件。
GetPopupMenu 方法
对应对象:TControl
声明:function GetPopupMenu:TpopupMenu;dynamic;
功能:GetPopupMenu方法获得一个控件的弹出式菜单。
GetTextBuf 方法
对应对象:TControl
声明:function GetTextBuf ( Buffer:Pchar;BufSize:Integer):Integer;
功能:GetTextBuf方法用来获得控件所包含的文字,并且将文字拷贝到一个缓冲区中。GetTextBuf方法从控件中获得文字,并把它作为一个以空字符结束的字符串拷贝到Buffer指定的缓冲区内。BufSize参数用来说明缓冲区的大小,在调用GetTextBuf方法之前使用GetTextLen方法进行设置。文字作为一个以空字符结尾的字符串被拷贝到缓冲区中。
例子:
procedure Tform1.Button2Click(Sender:Tobject);
var
MyBuffer:Pchar;
MyBufSize:Integer;
Begin
MyBufSize:=Button1.GetTextLen;
Button1.GetTextBuf(MyBuffer,MyBufSize);
StatusBar1.SetTextBuf(MyBuffer);
End;
GetTextLen 方法
对应对象:TControl
声明:function GetTextLen:Integer;
功能:GetTextLen方法用来检索控件文字的大小。GetTextLen方法一般在调用GetTextBuf方法之前使用,以便确定缓冲区的大小。使用GetTextLen方法可以代替字符串的处理函数。
例子:
procedure Tform1.Button2Click(Sender:Tobject);
var
MyBuffer:Pchar;
MyBufSize:Integer;
Begin
MyBufSize:=Button1.GetTextLen;
Button1.GetTextBuf(MyBuffer,MyBufSize);
StatusBar1.SetTextBuf(MyBuffer);
End;
HasParent 方法
对应对象:TControl
声明:function HasParent:Boolean;override;
功能:HasParent方法用来说明控件是否有一个父类。
Hide 方法
对应对象:TControl
声明:procedure Hide;
功能:Hide方法使一个控件变为不可视的。在Hide方法把控件的Visible属性设置为假 时,可使控件变的不可件的。
例子:
//If the “Hide menus” menu item is clicked,hide the forms menus but make the
//”show menu” button visible so the user can turn the menu on again if necessary
procedure Tform1.menuHideMenu1Click(Sender:Tobject);
begin
BtnHideMenu.Hide;
Form1.Menu:=nil;
End;
// If the “Show menu” button is clicked,hide the button and show the form’s main
menu
procedure Tform1.btnShowMenuClick(Sender:Tobject);
begin
From1.Menu:=MainMenu1;
BtnHideMenu.Hide;
end;
VCL组件的属性和方法详解(2)
最新推荐文章于 2018-05-29 14:34:14 发布