TScrollBox 是不少控件(TMemo、TListBox、TStringGrid、TTreeView、TImageViewer 等)的基础, 所以先学.

TVertScrollBox 只比 TScrollBox 少了竖滚动条.

TFramedScrollBox、TFramedVertScrollBox 只是套用了不同的样式, 有可视的框架.


{ TScrollBox }
public
  constructor Create(...); override;  //
  destructor Destroy; override;        //
  procedure AddObject(...); override;  //
  procedure Sort(...); override;      //根据指定的排序函数给内部对象排序
  procedure MouseDown(...); override;  //
  procedure MouseMove(...); override;  //
  procedure MouseUp(...); override;    //
  procedure MouseWheel(...); override; //
  procedure Realign; override;        //
  procedure Centre;                    //滚动到中间位置
  procedure ScrollTo(...);            //滚动指定的距离
  procedure InViewRect(...);          //暂未实现
  function ClientWidth: Single;        //客户区宽度
  function ClientHeight: Single;      //客户区高度
  property HScrollBar: TScrollBar ...; //横滚动条对象
  property VScrollBar: TScrollBar ...; //竖滚动条对象
published
  property AutoHide: Boolean ...;          //是否根据需要自动隐藏或显示滚动条; 默认 True
  property Animated: Boolean ...;          //是否使用滚动动画; 默认 True
  property DisableMouseWheel: Boolean ...;  //是否禁用鼠标滚动轮; 默认 False, 未禁用
  property MouseTracking: Boolean ...;      //能否用鼠标直接拖动(拖到控件, 滚动条联动); 默认 False
  property ShowScrollBars: Boolean ...;    //是否显示滚动条; 默认 True
  property ShowSizeGrip: Boolean ...;      //是否显示 Grip(右下角的拖拽标识); 默认 False
  property UseSmallScrollBars: Boolean ...; //是否使用小的滚动条
end;

示例:

uses FMX.Layouts, FMX.Objects;

var
  ScrollBox1: TScrollBox;
  Rectangle1: TRectangle; procedure TForm1.FormCreate(Sender: TObject);
begin
  ScrollBox1 := TScrollBox.Create(Self);
  ScrollBox1.Parent := Self;
  ScrollBox1.Align := TAlignLayout.alClient;
  ScrollBox1.MouseTracking := True;   Rectangle1 := TRectangle.Create(Self);
  Rectangle1.Parent := ScrollBox1;
  Rectangle1.SetBounds(, , ClientWidth*, ClientHeight*);
end;

Delphi XE2 之 FireMonkey 入门(39) - 控件基础: TScrollBox、TVertScrollBox、TFramedScrollBox、TFramedVertScrollBox的更多相关文章

  1. Delphi XE2 之 FireMonkey 入门(44) - 控件基础: TTreeView、TTreeViewItem

    Delphi XE2 之 FireMonkey 入门(44) - 控件基础: TTreeView.TTreeViewItem TScrollBox -> TCustomTreeView -> ...

  2. Delphi XE2 之 FireMonkey 入门(43) - 控件基础: TStringGrid、TGrid

    Delphi XE2 之 FireMonkey 入门(43) - 控件基础: TStringGrid.TGrid TStringGrid.TGrid 都是从 TCustomGrid 继承; 区别有:1 ...

  3. Delphi XE2 之 FireMonkey 入门(42) - 控件基础: TComboBox、TComboEdit

    Delphi XE2 之 FireMonkey 入门(42) - 控件基础: TComboBox.TComboEdit TListBox 有两个兄弟 TComboListBox.TComboEditL ...

  4. Delphi XE2 之 FireMonkey 入门(41) - 控件基础: TListBox

    Delphi XE2 之 FireMonkey 入门(41) - 控件基础: TListBox TScrollBox -> TCustomListBox -> TListBox; 其元素项 ...

  5. Delphi XE2 之 FireMonkey 入门(40) - 控件基础: TMemo

    Delphi XE2 之 FireMonkey 入门(40) - 控件基础: TMemo 值得注意的变化: 1.其父类 TScrollBox 的许多特性也很有用处, 如:   Memo1.UseSma ...

  6. Delphi XE2 之 FireMonkey 入门(38) - 控件基础: TPopupMenu、TMenuItem、TMenuBar、TMainMenu

    Delphi XE2 之 FireMonkey 入门(38) - 控件基础: TPopupMenu.TMenuItem.TMenuBar.TMainMenu 相关控件: TMenuBar.TPopup ...

  7. Delphi XE2 之 FireMonkey 入门(37) - 控件基础: TControl 概览

    Delphi XE2 之 FireMonkey 入门(37) - 控件基础: TControl 概览 { TControl } public   constructor Create(...); ov ...

  8. Delphi XE2 之 FireMonkey 入门(36) - 控件基础: TForm

    Delphi XE2 之 FireMonkey 入门(36) - 控件基础: TForm 当我第一次读取 Form1.StyleLookup 并期待出现 "formstyle" 时 ...

  9. Delphi XE2 之 FireMonkey 入门(35) - 控件基础: TFmxObject: 其它

    Delphi XE2 之 FireMonkey 入门(35) - 控件基础: TFmxObject: 其它 TFmxObject 增加了 TagObject.TagFloat.TagString, 算 ...

随机推荐

  1. [转载](转)ISE中ROM初始化文件(.coe)的建立

    原文地址:(转)ISE中ROM初始化文件(.coe)的建立作者:老徐 UltraEdit 对于ROM模块,主要是生成相应的.coe文件. 1.在Matlab中生成正余弦波形的浮点值,并量化为16bit ...

  2. RHEL7使用systemctl管理服务

    1.   systemctl命令 说明 systemctl    start   [unit type] 启动服务 systemctl    stop   [unit type] 停止服务 syste ...

  3. mariadb增删改查

    数据库用户的操作 登录前需先启动3306端口. 首次启动需初始化数据库 mysql_secure_installation 增/改: 创建用户及赋予用户指定权限 grant 权限(分为create[创 ...

  4. 019-zabbix数据库表详解

    https://www.cnblogs.com/yaoyaojcy/p/10367945.html 1. 查看目前zabbix系统所有数据表: 1 2 3 4 5 6 7 8 9 10 11 12 1 ...

  5. Heshen's Account Book HihoCoder - 1871 2018北京区域赛B题(字符串处理)

    Heshen was an official of the Qing dynasty. He made a fortune which could be comparable to a whole c ...

  6. C# 判断 List 是否存在某一个字段

    foreach (var item in list_QuestionnaireSelect) { EntityQuestionnaireParticipantsReport _entityReport ...

  7. 消息中间件--kafka(1)安装部署

    一.概念 1.什么是kafka Kafka是由Apache软件基金会开发的一个开源的分布式流处理平台,由LinkedIn公司开发,使用 Scala和Java编写.Kafka是一个分布式.分区的.多副本 ...

  8. 【NOIP2016提高A组模拟8.15】Garden

    题目 分析 其实原题就是[cqoi2012][bzoj2669]局部极小值. 有一个n行m列的整数矩阵,其中1到nm之间的每个整数恰好出现一次.如果一个格子比所有相邻格子(相邻是指有公共边或公共顶点) ...

  9. electron 系统托盘 单击 双击事件冲突解决方法

    部分代码 // 任务栏点击事件 let timeCount = 0 tray.on('click', function (Event) { setTimeout(() => { if (time ...

  10. 1.关于python 的hmac加密

    import base64 import hmac import urllib from hashlib import sha1 expires = b" # 过期时间戳 uuid = 'a ...