Delphi中Frame的使用方法(1)
2016-04-09 16:25
483 查看
Frame是组件面板上的第一个组件,但不是每个人都知道怎么用它,因为它不像Button和Label一样简单明了。实际上,Frame按钮只是打开一个Frame的列表,如果你没有创建任何的Frame,自然什么也不会看到。
那么Frame到底是什么呢?简单来说:
1. Frame是组件容器,类似Panel
2. Frame在使用上类似Components组件,但并没有构造器和解析器,依赖于父容器完成Destroy的工作
3. Frame可以继承和嵌套
4. Frame内部的控件都是公开的,可以在IDE里重置属性和事件,所以frame的内部封装一般都是松散的。访问frame上的组件用frame.control方式
5. Frame的使用范围仅在当前工程内
6. Frame的使用不像一般组件component有独立的功能,很多时候需要和父容器耦合在一起
看了半天还是不明白?看个例子吧:
上图是一个客户信息的Frame,因为在客户信息在很多的地方都需要显示,并且带编辑,查询,发邮件等按钮。当然你可以每次用到都拷贝一遍,但是做成frame组件,用的时候只要告诉frame客户id,剩下都交由组件本身完成,岂不是方便很多?
所以,frame和普通components组件一样,都是为复用设计的。只是frame是Delphi的特技,是一种简化版组件。如果你有一组可视化组件的集合,在多个地方重复出现,就应该考虑使用Frame了。
如何创建一个Frame呢,如图:
你可以把frame添加到组件面板,如图:
那么Frame到底是什么呢?简单来说:
1. Frame是组件容器,类似Panel
2. Frame在使用上类似Components组件,但并没有构造器和解析器,依赖于父容器完成Destroy的工作
3. Frame可以继承和嵌套
4. Frame内部的控件都是公开的,可以在IDE里重置属性和事件,所以frame的内部封装一般都是松散的。访问frame上的组件用frame.control方式
5. Frame的使用范围仅在当前工程内
6. Frame的使用不像一般组件component有独立的功能,很多时候需要和父容器耦合在一起
看了半天还是不明白?看个例子吧:
上图是一个客户信息的Frame,因为在客户信息在很多的地方都需要显示,并且带编辑,查询,发邮件等按钮。当然你可以每次用到都拷贝一遍,但是做成frame组件,用的时候只要告诉frame客户id,剩下都交由组件本身完成,岂不是方便很多?
所以,frame和普通components组件一样,都是为复用设计的。只是frame是Delphi的特技,是一种简化版组件。如果你有一组可视化组件的集合,在多个地方重复出现,就应该考虑使用Frame了。
如何创建一个Frame呢,如图:
你可以把frame添加到组件面板,如图:
相关文章推荐
- delphi 读网页线程TReadHtmlThread
- delphi 对TThread扩充TSimpleThread
- delphi 关于命名
- Delphi2010怎样获取程序内部自身版本?
- delphi 实现采集
- TControlStyle.csParentBackground的作用(附Delphi里的所有例子,待续)
- 用Delphi实现文件关联
- Delphi 7使用自定义图标关联文件类型
- Delphi 注册文件类型 设置文件图标
- delphi的TFileStream 内存流
- Delphi 实现Ini文件参数与TEdit和TCheckBox绑定(TSimpleParam)
- delphi 域名转ip并判断ip是否可以联通
- Failed to load IDE add in 'C:\Program Files\Delphi_2007\bin\Borland.Studio.Together.dll'.解决办法 转
- delphi的取整函数round、trunc、ceil和floor
- Delphi中double类型真正实现四舍五入(保留两位)
- delphi各个版本编译开关值
- Delphi下实现全屏快速找图找色
- Delphi在创建和使用DLL的时候如果使用到string,请引入ShareMem单元
- delphi 中字符串与16进制、10进制转换函数
- 十六进制字符串转化成字符串输出HexToStr(Delphi版、C#版)