爱招飞帮助手册 爱招飞帮助手册
首页
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 功能用法
    • 专用模板
    • 开发流程
    • 函数程序
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 系统工具
    • 系统管理
    • 数据库工具
    • 专用模板
    • 外部功能
    • 开发流程
    • 函数代码
  • 开发手册
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 功能用法
    • 专用模板
    • 开发流程
    • 函数程序
  • 开发手册
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 功能用法
    • 专用模板
    • 开发流程
    • 函数程序
  • 开发手册
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
    • 报表设计
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
    • RestAPI
    • WebSocket
  • 学习手册

    • 安装配置
    • 快速上手
    • 程序架构
    • 界面介绍
    • 功能介绍
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
    • 预设资料
    • RestAPI说明
    • WebSocket说明
    • MQTT说明
    • Python说明
    • 自定程序
    • 运行卫士
    • 自动化作业
    • 函数程序
    • 控件使用
  • 开发手册
  • FastERP
  • FastWeb
  • Smart
  • PinToo
  • Flying
  • TARS
  • 通用功能

    • Report
    • Script
    • Echarts
    • Chart
    • DB Install
    • HiDesk
    • HiNAT
    • FastBPM
    • ReportBuilder
首页
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 功能用法
    • 专用模板
    • 开发流程
    • 函数程序
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 系统工具
    • 系统管理
    • 数据库工具
    • 专用模板
    • 外部功能
    • 开发流程
    • 函数代码
  • 开发手册
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 功能用法
    • 专用模板
    • 开发流程
    • 函数程序
  • 开发手册
  • 学习手册

    • 基本入门
    • 功能介绍
    • 控件说明
    • 功能用法
    • 专用模板
    • 开发流程
    • 函数程序
  • 开发手册
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
    • 报表设计
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
    • RestAPI
    • WebSocket
  • 学习手册

    • 安装配置
    • 快速上手
    • 程序架构
    • 界面介绍
    • 功能介绍
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
  • 学习手册

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
    • 预设资料
    • RestAPI说明
    • WebSocket说明
    • MQTT说明
    • Python说明
    • 自定程序
    • 运行卫士
    • 自动化作业
    • 函数程序
    • 控件使用
  • 开发手册
  • FastERP
  • FastWeb
  • Smart
  • PinToo
  • Flying
  • TARS
  • 通用功能

    • Report
    • Script
    • Echarts
    • Chart
    • DB Install
    • HiDesk
    • HiNAT
    • FastBPM
    • ReportBuilder
  • Smart帮助主页
  • 学习手册

    • 基本入门

    • 功能介绍

    • 控件说明

      • 公共属性
        • 1. 大多数组件共有的属性
          • 1.1. Action 属性
          • 1.2. Align属性
          • 1.3. AutoSize属性
          • 1.4. BoundRect属性
          • 1.5. ComponentCount属性
          • 1.6. ComponentIndex属性
          • 1.7. Components属性
          • 1.8. ControlCount属性
          • 1.9. Controls属性
          • 1.10. Color属性
          • 1.11. Ctl3D属性
          • 1.12. Cursor属性
          • 1.13. DragCursor属性
          • 1.14. Enabled属性
          • 1.15. Focused属性
          • 1.16. Font属性
          • 1.17. Handle属性
          • 1.18. Height属性
          • 1.19. Hint属性
          • 1.20. Left属性
          • 1.21. Name属性
          • 1.22. Owner属性
          • 1.23. Parent属性
          • 1.24. ParentFont属性
          • 1.25. ParentCtl3D属性
          • 1.26. PopupMenu属性
          • 1.27. ShowHint属性
          • 1.28. TabOrder属性
          • 1.29. Visible属性
          • 1.30. Tag属性
          • 1.31. Top属性
          • 1.32. Width属性
          • 1.33. Caption属性
      • 公共方法
      • 公共事件
      • 窗口控件
      • 系统控件
      • 标准控件
      • 对话框控件
      • 标准工控控件
      • 专业工控控件
      • 数据控制控件
      • 数据表格控件
      • 数据感知控件
      • 通讯控制控件
      • 仪表采集控件
      • 监控视频控件
      • 数据图表控件
      • 流程图表控件
      • 数据分析控件
      • 复合数控控件
      • 模拟数控控件
      • 调节数控控件
      • 数位数控控件
      • 数据数控控件
      • 地图控件
      • 其他控件
      • SVG控件
      • IsoBean控件
      • 样式控件
      • 样式外观控件
      • 样式高级控件
      • 样式工具控件
      • 样式数据控件
      • 样式控件GP
      • 样式数据控件GP
    • 功能用法

    • 专用模板

    • 开发流程

    • 函数程序

  • 开发手册

目录

公共属性

# Smart 公共属性、方法和事件

# 1. 大多数组件共有的属性

  每个组件都有其特定的属性,但有些属性对所有的组件是通用的。下面列出一些通用的属性并附有简短的说明。

属性 适用范围 功能简述
Action 一些组件 标识与组件连接的活动对象
Align 一些组件 确定空间在其父组件区域内的对齐方式
AutoSize 一些组件 组件是否可以根据其内容确定自己的大小
BoundRect 所有组件 定义组件矩形连框(运行时用)
ComponentCount 所有组件 当前组件拥有的组件数目(运行时用)
ComponentIndex 所有组件 当前组件在父组件列表中的位置(运行时用)
Components 所有组件 当前组件拥有的子组件数组(运行时用)
ControlCount 所有组件 当前组件的自组建数目(运行时用)
Controls 所有组件 当前组件的子组件数组(运行时用)
Color 大部分组件 当前组件的表面背景色
Ctl3D 大部分组件 确定组件是否有三维效果
Cursor 所有组件 当前组件上的光标形状
DragCursor 大部分组件 当前组件接受拖动时光标的形状
Enabled 所有组件 确定组件是否被激活
Focused 所有组件 确定组件是否被聚焦
Font 所有组件 确定组件内显示的文本字体
Handle 窗口组件 组件使用的系统窗口句柄(运行时用)
Height 所有组件 组件的高度
Hint 所有组件 组件显示提示的字符串
Left 所有组件 组件左上角的水平坐标
Name 所有组件 组件实例的唯一名称
Owner 所有组件 表示主组件(运行时用,只读)
Parent 所有组件 表示父组件
ParentFont 所有组件 确定组件是否使用父组件的Font
ParentCtl3D 大部分组件 确定组件是否使用父组件的Ctl3D
PopupMenus 所有组件 在组件上单击光标右键时出现的弹出式菜单
ShowHint 所有组件 确定是否激活提示功能
TabOrder 窗口组件 确定父组件的切换程序
Visible 所有组件 确定组件是否可见
Tag 所有组件 存储一个整形变量的值,无实际意义
Top 所有组件 可定位组件的顶部位置
Width 所有组件 组件的宽度
Caption 大部分组件 该属性可指定标注组件的文本字符串

# 1.1. Action 属性

property Action;
1

  标识与组件连接的活动对象,允许应用程序集中响应用户的命令。当组件与行为相关联时,行为确定组件的适当属性和方法。要在设计程序时创建行为,则在窗体或数据模块上放置行为列表组件。双击该行为列表,将出现行为列表编辑器,使用菜单添加行为。使用列表编辑器添加的行为将在对象观察器中的Action属性的下拉列表中显示。

  • 应用
      为了节省代码的编辑量,可使用ActionList组件来编写代码。双击ActionList组件,打开Main.ActionList1对话框,单击“添加”按钮。在Action1的OnExecute事件中编写代码。在BitBtn1组件和MainMenu1组件的N2的Action属性中选择Action1,在单击BitBtn1组件和MainMenu1组件的N2时,都会调用Action1的OnExecute事件。

Main.ActionList对话框
单击“添加”按钮


# 1.2. Align属性

property Align;
1

  使用该属性可在窗体或面板上将组件排列到顶端、底端、左边或右边,并且即使窗体、面板或包含组件的大小发生变化,也仍然会保持对齐方式。可以使窗体以某种方式对齐,下面是所选对齐方式的说明。

所选内容 说明
alBottom 组件被移到容器的底端
alClient 使组件填充整个容器
alCustom 以自定义方式显示窗体
alLeft 组件被移到容器的左端
alNone 组件仍然在其原来的位置
alRight 组件被移到容器的右端
alTop 组件被移到容器的顶端

# 1.3. AutoSize属性

property AutoSize;
1

  说明组件是否可以根据其内容确定自己的大小。将窗体的AutoSize属性设置为True时,窗体可根据窗体中的内容确定自己的大小,作为该窗体的默认打开的大小。

AutoSize属性设置为True的显示效果

# 1.4. BoundRect属性

property BoundRect: TRect read GetBoundsRect write SetBoundsRect;
1

  定义组件矩形连框(运行时用)。通过程序来设置组件的位置和大小。

procedure TMyHandler.BUTTON1CLICK;
var 
  Rect:  TRect;
begin
  Rect.Left := 0;
  Rect.Top := 0;
  Rect.Right := 200;
  Rect.Bottom := 200;
  FThis.Button1.BoundsRect := Rect;
end;
1
2
3
4
5
6
7
8
9
10

  窗体初始化后,点击Button1按钮,窗体中的组件将按照指定的设置显示。


# 1.5. ComponentCount属性

property ComponentCount: Integer;
1

  使用该属性查找或检查组件拥有的子组件数,或当Components列表重复执行该组件的一些行为时使用该属性。该属性由反复执行程序内部使用。注意,该组件的ComponentCount包含的项目数与该组件Components属性列表中的项目数相同。

  • 应用
      ComponentCount属性用于确定滚动框所拥有的组件数。在程序中,可以使用该属性利用循环的方式访问所有者为滚动框的所有组件。下面的代码演示了如何访问滚动框所具有的组件。
procedure TMyHandler.BUTTON1CLICK;
var
 i: Integer;
begin
  FThis.Memo1.Lines.Add('滚动框中的组件数为:' + IntToStr(FThis.ScrollBox1.ComponentCount));
  for i := 0 to FThis.ScrollBox1.ComponentCount - 1 do
  begin
    FThis.Memo1.Lines.Add(FThis.ScrollBox1.Components[i].Name);
  end;
end;

procedure TMyHandler.BUTTON2CLICK;
//点击显示按钮动态创建组件并显示
var
  i: Integer;
  temp: TEdit;
begin
  for i := 0 to 5 do
  begin
    temp := TEdit.Create(FThis.ScrollBox1);
    temp.Parent := FThis.ScrollBox1;
    temp.Left := 5;
    temp.Name := 'Edit' + IntToStr(i);
    temp.Top := temp.Height * i + 5;
    temp.Text := '属于滚动框';
    temp.Visible := True;
  end;
end;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28

# 1.6. ComponentIndex属性

property ComponentIndex: Integer;
1

  该属性用于指定组件在其自己的Components属性数组中的位置。当重复通过组件的Components列表的拥有者执行某些组件行为时使用该属性。使用这个属性可以直接与组件建立联系,该熟悉也可以在重复分配过程中内部使用。组件列表中第一个组件的ComponentIndex属性值为0,第2个组件为1……,当和ComponentIndex一起使用时,ComponentCount属性的值总是最高的ComponentIndex的值。


# 1.7. Components属性

property Components[Index: Integer]: TComponent;
1

  使用该属性可访问组件内拥有的任何子组件,包含滚动框所拥有的组件。通过该属性可以访问到滚动框所拥有的任意一个组件。在介绍ComponentCount属性及ComponentIndex属性时,都使用了Components属性得到相应的组件信息。Component属性时一个数组属性,包含滚动框所拥有的组件。通过该属性可以访问到滚动框所拥有的任意一个组件。在介绍ComponentCount属性及ComponentIndex属性时,都使用了Components属性得到相应的组件信息。


# 1.8. ControlCount属性

property ControlCount: Integer;
1

  该属性用于指定窗体组件的子组件的数量,在重复便利组件的所有子组件时被读取。组件的所有子组件列在Controls属性数组中。该属性为只读。

  • 应用
      ControlCount属性用于获得子组件(滚动框中)的数量。在开发程序时,经常需要清空一些文本数据,可以使用该属性利用循环的方法清空一组数据,代码如下:
procedure TMyHandler.BUTTON1CLICK;
var 
i: Integer;
begin
  for i := 0 to FThis.ScrollBox1.ControlCount - 1 do
  begin
    if FThis.ScrollBox1.Controls[i] is TEdit then
      TEdit(FThis.ScrollBox1.Controls[i]).Text := '';
  end;
end;
1
2
3
4
5
6
7
8
9
10

单击Button1按钮,清空编辑框中的文本,如图所示。

点击按钮后,Tedit组件中的内容被清空

# 1.9. Controls属性

property Controls[Index: Integer]: TControl;
1

  该属性时一个包含窗口组件的所有子组件的数组,便于用数字指定窗口组件的子组件。这个属性便于用数字指定窗口组件的子组件,在重复遍历窗口组件的所有子组件时将被用到。该属性列出了组件的所有子组件,而Components属性列出了组件所拥有的所有组件。所有放置在窗体中的组件为窗体所拥有,因此即使这些组件是窗体中某一组件的子窗体,也会出现在窗体的Components属性列表中。该属性为只读,使用InsertControl或RemoveControl方法也可以增加或删除子组件。若要从一个父组件中移动子组件到另外的组件中,则设置子组件的Parent,将在原父组件中处理RemoveControl,在新父组件中处理InsertControl。

  • 应用
      Control属性用于列举所有子组件。在开发程序的过程中,当需要访问一组组件时,如果直接使用组件名称访问组件,既不方便也不灵活。可以使用组件父亲(Parent)的Controls属性访问组件,代码详见1.1.8节。

# 1.10. Color属性

property Color nodefault;
1

当前组件的表面背景颜色。


# 1.11. Ctl3D属性

property Ctl3D: Boolean;
1

  该属性用于确定组件是否具有3D或2D外观,它提供了向后兼容性,在32位Windows或NT4.0以上版本中无效。在早期的平台上,该属性控制组件是平坦的,还是有倾角的。

Ctl3D属性设置效果

# 1.12. Cursor属性

property Cursor: TCursor read FCursor write SetCursor default crDefault;
1

  显示当前组件上的光标形状。


# 1.13. DragCursor属性

property DragCursor: TCursor read FDragCursor write FDragCursor default crDrag;
1

  当前组件接受拖动时光标的形状。


# 1.14. Enabled属性

property Enabled;
1

  确定组件是否激活。

  • 应用
      设置组件的可用度,代码如下:
procedure TMyHandler.BITBTN1CLICK;
begin
   if i = 0 then  
   begin
     FThis.Edit1.Enabled := False;
     i := i + 1;
     FThis.BitBtn1.Caption := '可用';
   end
   else
   begin
     FThis.Edit1.Enabled := True;
     i := i - 1;
     FThis.BitBtn1.Caption := '不可用';
   end;
end;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

组件被激活 组件未被激活


# 1.15. Focused属性

function TWinControl.Focused: Boolean;
1

  确定组件是否被聚焦。


# 1.16. Font属性

property Font;
1

  确定组件内显示的文本字体。

  • 应用
      单击Font属性右边的“...”按钮,打开“字体对话框”,在“字体”对话框中可以对文字的字体、大小、颜色、字形等进行设置。 “字体”设置

# 1.17. Handle属性

property Handle: HWND;
1

  Handle属性未滚动框提供了访问底层的Windows屏幕对象的句柄。


# 1.18. Height属性

property Height: Integer read FHeight write SetHeight;
1

  对组件的高度进行设置。


# 1.19. Hint属性

property Hint: string read FHint write FHint stored IsHintStored;
1

  组件显示提示的字符串。当ShowHint属性为True时该属性才可用。对一些无文字的按钮进行说明。在SpeedButton按钮的Hint属性中输入“获取文件的路径”,将ShowHint属性设置为True。在运行程序之后,将光标移到SpeedButton按钮上停留3秒钟,这时就会显示一个黄色的说明框。


# 1.20. Left属性

property Left: Integer read FLeft write SetLeft;
1

  组件左上角的水平坐标。


# 1.21. Name属性

property Name: TComponentName read FName write SetName stored False;
1

  默认时,IDE根据组件的类型设定连续的名称。该属性必须是一个有效的标识符。只能在程序设计时修改组件名称。在设计程序时,编程人员可以根据自己的喜好设置组件的唯一名称。


# 1.22. Owner属性

property Owner: TComponent;
1

  使用该属性可获得组件的拥有者。当一个组件拥有另一个组件时,释放其他拥有者内存时,也释放其拥有的内存。当删除一个窗体时,也删除窗体中的所有组件。创建组件时,组件拥有者由传递到构造函数的参数确定。对于在窗体设计器上创建的组件,窗体将自动作为拥有者分配。

  • 应用
      Owner属性用于确定组件的所有者,组件的所有者(Owner)主要 有两个作用:一是当组件释放时,所有者会释放掉其拥有的所有组件,二是用于加载和保存所有者所拥有的所有组件的Published属性。在默认情况下,窗体拥有其上的所有组件,应用程序 拥有窗体,当窗体释放时,其上的所有组件均被释放,,应用程序结束时,它所拥有的内存空间被全部释放。当窗体被加载到内存中时,它也将加载其上的所有组件。组件的所有者由构造函数中的参数指定。 下面的例子在窗体创建时构造了一个滚动框组件,其所有者是一个面板,然后通过单击按 钮释放掉面板组件。在试图访问滚动框时,程序将出现地址访问错误,其代码如下:
procedure TMyHandler.BUTTON1CLICK;
//释放面板
begin
  FThis.Panel1.Free;
end;

procedure TMyHandler.BUTTON2CLICK;
//访问滚动框
begin
  FThis.ScrollBox1.AutoSize := True;
end;
1
2
3
4
5
6
7
8
9
10
11

  单击“访问滚动框”按钮,程序出现地址访问错误。

运行初始画面 点击“释放面板”按钮 点击“访问”滚动框时出现报错对话框


# 1.23. Parent属性

property Parent: TWinControl read FParent write SetParent;
1

  使用该属性可获得或设置组件的父体,即包含组件的窗口,包含组件称为父体的子组件。 在程序运行时创建一个新组件时,为其分配该属性值。父组件通常为窗体面板、组合框或一些可包含组件的组件。

  • 应用
      将图标放在状态栏的最左面。
procedure TMyHandler.BUTTON1CLICK;
//将图标放入状态栏
begin
  FThis.Image1.Parent := FThis.StatusBar1;
  FThis.Image1.Left := 2;
  FThis.Image1.Top := 3;
  FThis.Image1.Width := 32;
  FThis.Image1.Visible := True;
end;
1
2
3
4
5
6
7
8
9

  运行结果如下图所示。

程序运行状态 点击“置入状态栏按钮”


# 1.24. ParentFont属性

property ParentFont;
1

  组件要使用与其父组件相同的字体,则将该属性设置为True;如果为False,则组件使用自己的Font属性。将所有的组件的ParentFont属性设置为True,可确保窗体的组件具有统一性。


# 1.25. ParentCtl3D属性

property ParentCtl3D: Boolean read FParentCtl3D write SetParentCtl3D default True;
1

  组件要使用与其父组件相同的3D效果。则将该属性设置为True;如果为False,则组件使用自己的Ctl3D属性。将所有的组件的ParentCtl3D属性设置为True,可确保窗体的形状具有统一性。


# 1.26. PopupMenu属性

property PopupMenu: TPopupMenu;
1

  为该属性分配一个值,可使右击组件后显示弹出式菜单。如果TPopupMenu对象的这个属 性为True,则动显示弹出式菜单;否则从组件的OnContextPopup事件处理粒序中调用菜单的Popup方法显示菜单。

  • 应用
      PopupMenu属性确定滚动框关联的弹出式菜单。如果为该属性指定一个弹出式菜单,并且弹出式菜单的AutoPopup属性为True,那么当用户用鼠标右键单击滚动框时将显示一个弹出式菜单(需在PopupMenu组件中设置右键菜单选项),代码如下:
begin
  This.ScrollBox1.PopupMenu := This.PopupMenu1;
end.
1
2
3
右键菜单

# 1.27. ShowHint属性

property ShowHint;
1

  当鼠标指针在组件上停顿片刻时,可以使用该属性确定组件是否显示一个帮助提示。帮助提示是Hint属性值,在组件旁边的一个框内显示。若要允许一个特定组件显示帮助提示,则应用程序和组件的ShowHint属性必须为True,或组件的ParentShowHint属性和其父组件的 ShowHint属性必须为True。ShowHint属性用于对一些无文字的按钮进行说明。在SpeedButton按钮的Hint属性中输入提示信息,将ShowHint属性设为True。在运行程序后,将光标移到SpeedButton按钮上停留3秒钟,会显示一个黄色的说明框。


# 1.28. TabOrder属性

type TTabOrder = -1...32767;
property TabOrder: TTabOrder;
1
2

  该属性用于在其父组件的标签顺序中指定子组件的位置。当用户按下Tab键后,该属性是访问子窗口的顺序。当窗体第1次显示时,该属性值为0的组件是有焦点的组件。开始,标签顺序总是组件被添加到窗口中的顺序。第1次添加到窗口中的组件的该属性值为0,第2次为1, 依次类推。改变该属性值可改变标签顺序。在父组件窗口中,每一组件具有惟一的标签顺序值。 如果用户改变某一组件的TabOrder属性值使之等于另一组件的TabOrder属性值,则其他组件的TabOrder值也将改变。如果指定某组件的TabOrder属性值大于父组件包含的组件数,则移动该组件至标签顺序最后。

  仅当组件的TabStop属性值为True且该组件有父组件时,该属性才有效(除非窗体没有父组件,因此不能通过按下Tab键访问该组件。如果要在Tab顺序中删除父组件,则设置父组件的该属性为False)。


# 1.29. Visible属性

property Visible;
1

  使用该属性可控制组件在运行时的可视性。在设计程序时,有时候需要放置组件但不是实时显示,只有在特定事件触发的情况下才显示,这时可使用该属性进行设置。


# 1.30. Tag属性

property Tag: Longint;
1

  该属性没有预先确定的含义,是为开发人员的使用方便而提供的。可用T保存另外的整型数值,或输入32位值,例如组件参数或指针。

  Tag属性足为组件提供的一个附加整数值。该属性没有确定的意义,只足为了方便开发者 而设计的一个整型属性,能够存储一个附加的整数值。在开发程序时,可以为每个组件指定一 个不同的Tag值,在运行程序时,可以根据不同的Tag值区分组件。


# 1.31. Top属性

property Top: Integer read FTop write SetTop;
1

  使用该属性可定位组件的顶部位置或将组件重新放罝到一个不同的Y坐标位置。


# 1.32. Width属性

property Width;
1

  使用属性可读取或修改组件的宽度。


# 1.33. Caption属性

property Caption stored IsCustomCaption;
1

  该属性用于指定标注组件的文本字符串,通常作为显示窗口标题或标注的文本。

多语言设计
公共方法

← 多语言设计 公共方法→

Copyright © 2021-2025 爱招飞IsoFace | ALL Rights Reserved
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式