近期在开发一个团队文档管理工具,使用Embarcadero的XE2-C++builder进行界面开发,使用Firemonkey框架。

而这个框架十分有趣!可能吸引界面开发者的就是这个StyleBook;

首先先附上一个小范例

http://docwiki.embarcadero.com/CodeSamples/en/CustomListBox_Sample

这个小东西就是在Listbox里面增加自定义风格记录

从图上可以看见相应的效果。一条记录里面包含checkbox、text、button这些控件,而且checkbox并非原生的控件(经过研究是自己添加的一个Layout)。

而这个范例揭示了这个框架的一些很有意思的东西:

1.我们可以通过自由开发组合相应的控件来加入到Listbox等列表控件里面。

2.开发十分方便,而且无需创建自定义控件。

3.使用也十分方便,使用Binding数据绑定来做到相关操作:http://www.cnblogs.com/del/archive/2011/10/01/2197041.html

这也就为开发界面及相应的接口大大提速!

而我这里着重提及上述范例的开发方法(毕竟本项目使用到该技术)

首先要加入TStyleBook控件(在测试过程中,我发现如果加入两个TStyleBook控件时仅仅调用第一个TSB控件,这里的原由还要研究!)

然后双击进入这个控件在里面增加Style

在编辑前先给Style添上名字,具体方法:在第一层(最顶层的控件里有个属性StyleName!)

而编辑Style方法是否简单,其实就是组合控件的过程,直接拖拉控件进行组合!其中有层次关系,所以在组合时候要注意!

(最右边有三个按钮仅知道第三个是删除该控件,前两个不清楚!)

编辑完成后,需要给风格中的每个控件添加BindingName,具体方法:对每个控件的BindingName属性修改!

控件的其余属性与一般开发时控件属性操作一致!

如何调用这个已完成的Style?

以ListBox为例:

则Listbox中的创建的Item就类似于风格中的组合控件一样,而排版方式与原来的Listbox记录排版方式的一致!

而我们同样也可以在Listbox的属性StyleLookup中添加风格名,则创建出来的item与上述方法效果一致!

//-------------------------------

而这种方法会带来很多十分有趣的东西!

//-------------------------------

补充:在StyleBook创建组合控件风格时,每个控件中有个关键属性为HitTest(敲击测试),如果为true则在加入item后点击这个item时可能不会立即跳入item的click函数,而是会跳入组合控件中的某个控件click函数!

最新文章

  1. Mysql学习笔记(六)增删改查
  2. WPF之资源字典zz
  3. HTTP详解(1)-工作原理【转】
  4. Linux设备模型(9)_device resource management ---devm申请空间【转】
  5. Python 如何跳出多重循环
  6. 第三百天了 how can I 坚持
  7. JSP执行过程
  8. CentOS 6.3下rsync服务器的安装与配置[转]
  9. PHP常用字符串函数
  10. /bin/bash^M: 坏的解释器: 没有那个文件或目录
  11. iOS 5 故事板入门(4)
  12. Redux-saga
  13. Linux下检测进程是否存在
  14. 用一个简单的例子比较SVM,MARS以及BRUTO(R语言)
  15. Java 使用 Redis存储系统
  16. iCOM组件(iComponent,应用或学习组件)
  17. 怎么改变html中placeholderr的文字颜色
  18. Oracle 用户解锁
  19. Redis(十二):redis两种持久化方法对比分析
  20. 9.redis安全

热门文章

  1. NOIP 2011 Day 1
  2. 在cmd 中输入了错误mysql命令后,如何退出?
  3. redis之(九)redis的事务机制
  4. Unique Binary Search Trees I&&II(II思路很棒)——动态规划(II没理解)
  5. 【转】eclipse for java ee的tomcat配置(常见问题解决)
  6. hdu5782
  7. hdu 多校第一场
  8. centos 7 开机启动配置
  9. Team Service 编译项目并生成项目
  10. java原理—反射机制