zoukankan      html  css  js  c++  java
  • 【FireMonkey】StyleBook使用方法

    近期在开发一个团队文档管理工具,使用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函数!

  • 相关阅读:
    JQuery--常用选择器总结
    ASP.NET MVC- ActionFilter的使用
    C#--DataTable与Dataset的互相转换
    C#--List转DataTable(或DataSet)
    JavaScript--遍历table中的tr存对象
    JavaScript--删除Table中当前行
    JavaScript--判断字符是否为空
    JavaScript--为对象动态添加属性和值
    asp.net mvc 单图片上传
    asp.net mvc 多图片上传
  • 原文地址:https://www.cnblogs.com/h2zZhou/p/5256790.html
Copyright © 2011-2022 走看看