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

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

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

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

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

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

    • 安装配置
    • 快速上手
    • 界面介绍
    • 功能介绍
    • 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. BeginDrag方法
          • 1.2. BringToFront方法
          • 1.3. CanFocus方法
          • 1.4. Create方法
          • 1.5. Destroy方法
          • 1.6. EndDrag方法*
          • 1.7. GetTextLen方法*
          • 1.8. Hide方法*
          • 1.9. InsertControl方法
          • 1.10. SetFocus方法
          • 1.11. SetTextBuf方法*
          • 1.12. Show 方法*
          • 1.13. Focused方法*
      • 公共事件
      • 窗口控件
      • 系统控件
      • 标准控件
      • 对话框控件
      • 标准工控控件
      • 专业工控控件
      • 数据控制控件
      • 数据表格控件
      • 数据感知控件
      • 通讯控制控件
      • 仪表采集控件
      • 监控视频控件
      • 数据图表控件
      • 流程图表控件
      • 数据分析控件
      • 复合数控控件
      • 模拟数控控件
      • 调节数控控件
      • 数位数控控件
      • 数据数控控件
      • 地图控件
      • 其他控件
      • SVG控件
      • IsoBean控件
      • 样式控件
      • 样式外观控件
      • 样式高级控件
      • 样式工具控件
      • 样式数据控件
      • 样式控件GP
      • 样式数据控件GP
    • 功能用法

    • 专用模板

    • 开发流程

    • 函数程序

  • 开发手册

目录
1. 公用方法
1.1. BeginDrag方法
1.2. BringToFront方法
1.3. CanFocus方法
1.4. Create方法
1.5. Destroy方法
1.6. EndDrag方法*
1.7. GetTextLen方法*
1.8. Hide方法*
1.9. InsertControl方法
1.10. SetFocus方法
1.11. SetTextBuf方法*
1.12. Show 方法*
1.13. Focused方法*

公共方法

# Smart 公共方法

# 1. 公用方法

  组件的对象方法是指可调用的过程和函数,可以用它们来执行相应的操作。有的对象方法 在所有的组件中都能使用,而有些只能被少数组件使用。

对象方法 适用范围 功能简述
BeginDrag 所有组件 开始手工拖动
BringToFront 所有组件 将组件放在其他所有组件的前面
CanFocus 所有组件 确定组件是否接受焦点
Create 所有组件 建立一个新实例
Destroy 所有组件 解除实例(程序),实际应调用Free方法
EndDrag 所有组件 手动终止拖动
Free 所有组件 从内存中清除对象(窗体应调用Release方法)
GetTextLen 所有组件 返回组件的文本(或标题)长度
Hide 所有组件 隐藏组件(与Visible的False取值效果相同)
InsertControl 所有组件 向当前组件的子组件列表添加新组件
SetFocus 所有组件 赋予组件输入焦点
SetTextBuf 所有组件 设置组件的输入焦点
Show 所有组件 显示组件(与Visible的True取值效果相同)
Focused 窗口组件 确定组件是否具有焦点

# 1.1. BeginDrag方法

procedure BeginDrag(Immediate: Boolean; Threshold: Integer = -1);
1

  只有组件的DragMode属性值为dmManual时,应用程序才需要调用该方法开始拖动操作。

  如果Immediate参数为True,则鼠标指针变为DragCursor属性值并开始拖动;如果为False, 则鼠标指针并不变为DragCursor属性的值且在用户将鼠标指针移动一个由Threshold参数指定的像素数量前没有开始拖动,并且允许组件在没有开始拖动或拖靠操作时接受单击。如果调用者传递的值小于 0 (该参数的默认值),则该方法将使用全局变景Mouse的DragThreshold 属性。


# 1.2. BringToFront方法

procedure BringToFront;
1

  该方法将组件放置在其父组件内所有其他组件的前面。调用该方法可确保窗体可见,或重新安排窗体中重叠的组件。组件层叠在每一个其他组件上的(也称为Z)顺序依赖于将组件放置在窗体中的顺序。

  两个有窗口组件的层叠顺序与两个无窗口组件相同,例如在一个窗体中放置一个Memo组件,然后在其上放置一个复选框,则复选框保持在上面。对Memo组件调用该方法,将移动 Memo组件以使其显示在复选框之上。层叠顺序不能混杂,例如若在一个窗体中放罝一个有窗口的Memo组件,然后在其上放置一个列窗口的标签组件,则标签组件在Memo组件后面不显 示。有窗口组件始终层叠在无窗口组件之上。在该例中,对标签组件调用该方法不会执行任何操作,这个组件将保持在Memo组件后。


# 1.3. CanFocus方法

function CanFocus: Boolean; dynamic;
1

  调用该方法可判断组件是否接收用户的输入。如果设置组件和其父组件的Visible和Enabled属性均为True,则该方法返回True;否则返回False。

  • 应用
      CanFocus方法用于确定组件能杏获得焦点。如果窗口组件及其父窗口可见,并且处于激活状态,则该方法将返回True,代码如下:
constructor TMyHandler.Create(AOwner: TComponent);
begin
  FThis :=TBaseForm(AOwner);
  FThis.Edit1.Enabled := False;
end;

{方法实现  MODULE-REAL}
procedure TMyHandler.BUTTON1CLICK;
//开始拖动
begin
  if FThis.Edit1.CanFocus = False then
    ShowMessage('当前组件不能获得焦点!');
end;
1
2
3
4
5
6
7
8
9
10
11
12
13

  单击“开始”按钮,因为Edit1处于未激活的状态,所以无法获得焦点。 点击“开始”按钮,显示选定组件未获得焦点


# 1.4. Create方法

constructor Create(AOwner: TComponent);
1

  该方法用丁创建并初始化一个实例。在程序运行时,调用该方法可以实例化一 个对象;在程序设计时,在窗体中放置组件后会自动动创建该组件的实例。

  • 应用
      Create方法用于创建并初始化滚动框对象。下面的代码是用于手工创建一个滚动框对象。
procedure TMyHandler.BUTTON1CLICK;
//生成滚动框
var
  ScrollBox1 : TScrollBox;
begin
  ScrollBox1 := TScrollBox.Create(FThis);
  ScrollBox1.Align := alClient;
  ScrollBox1.Parent := FThis;
end;
1
2
3
4
5
6
7
8
9

  运行结果如图,点击按钮后生成一个ScrollBox。 程序运行 点击“生成滚动框”,生成一个滚动框填充满客户区


# 1.5. Destroy方法

destructor Destroy; override;
1

  该方法用于从内存中删除对象。在应用程序中不能直接调用该方法, 而应先调用Free,以检验调用Destroy前该对象不为空,然后自动调用该方法。


# 1.6. EndDrag方法*

procedure EndDrag(Drop: Boolean);
1

  使用该方法可结束一个调用BeginDrag方法开始的拖动操作。如果Drop参数为True,则放下或停靠正在拖动的组件;否则不能放下或停靠组件并且取消拖动操作。


# 1.7. GetTextLen方法*

function GetTextLen: Integer;
1

  调用该方法可查明组件文本长度,这个大小是GetTextBuf方法需要使用的一个文本缓冲区。


# 1.8. Hide方法*

procedure Hide;
1

  调用该方法可隐藏组件,它将组件的Visible属性设罝为False。虽然隐藏后的组件不可见,但可继续使用其属性和方法。


# 1.9. InsertControl方法

procedure InsertControl(AControl: TControl);
1

  该方法用于将组件插入到窗口组件的Controls数组属性中,应用程序不需要直接调用这个方法。在设计程序时,当添加或删除时,子组件自动被插入和删除。在程序运行时,使用子组件的Parent属性将其插入到Controls数组中。如果子组件己经是另一窗口组件的子组件,设置其Parent属性,以保证该子组件从原来的父组件的Controls数组中删除。AControl参数用于指定插入到Controls数组中的子组件。

  • 应用
      InsertControl方法用于将指定组件插入到当前组件的组件数组中。在应用程序中不能直接调用InsertControl方法将子组件插入到组件中,而应设置子组件的Parent属性,因为如果子组件已经是某个窗口组件的子组件,使用Parent属性能够保证子组件从其原来的父窗口中删除。
procedure TMyHandler.BUTTON1CLICK;
begin
  FThis.RemoveControl(FThis.Edit1);
  FThis.ScrollBox1.InsertControl(FThis.Edit1);
end;
1
2
3
4
5
程序运行
点击“插入”,Edit1被移动至ScrollBox中

# 1.10. SetFocus方法

procedure SetFocus; virtual;
1

  使用该方法可改变窗口组件的焦点。当组件有焦点时,可接收键盘事件。

  • 应用
      SetFocus方法的作用是使窗口组件获得焦点,以下显示的是点击按钮切换焦点的程序。
procedure TMyHandler.BITBTN1CLICK;
//点击轮流切换焦点
begin
  if i = 0 then
  begin
    FThis.Edit1.SetFocus;
    i := i + 1;
  end
  else
  begin
    FThis.Edit2.SetFocus;
    i := i - 1;
  end;
end;
1
2
3
4
5
6
7
8
9
10
11
12
13
14

程序运行 点击按钮后,切换焦点至Edit1


# 1.11. SetTextBuf方法*

procedure SetTextBuf(BufYer: PChar);
1

  该方法将组件的文本设置为在指定缓冲区内的文本,文本被设置为由Buffer参数指向的缓冲区内文本。这个方法用于发送WM_SETTEXT和CM_TEXTCHANGED消息。要使用AnsiString设置组件的文本,可用Text属性代替。


# 1.12. Show 方法*

procedure Show;
1

  该方法用于将一个隐藏组件的Visible属性设置为True使其可见,并确保其父组件也可见。


# 1.13. Focused方法*

function Focused: Boolean; dynamic;
1

  该方法用于确定窗口组件是否具有输入焦点,即是否为激活组件。返回True时,有输入焦点;否则没有,即用户与该组件不能交互。Focused方法用于确定窗口纽件是杏有输入焦点,如果窗口组件为当前组件,则该方法返回True。


公共属性
公共事件

← 公共属性 公共事件→

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