20150712 Created By BaoXinjian


在OAF中除了Required, Rendered,Disabled, 和 Read Only这些属性可以通过属性面板用SPEL语言来进行声明式实现。

其它的属性比如水平对齐,换行或者其它的任意属性都不能进行声明式实现,都必须通过DataBoundValue来绑定特定的属性,然后可以动态设置。

这里以如何实现水平对齐为例演示最简单的左右对齐的动态显示,效果是Employee Name中如果Number大于等于5就是右对齐,否则就是左对齐。


Step1. 先在VO中添加一列,根据其Employee_ID的值来动态设置它的值,如果大于等于5,其值就是right, 否则其值就是left.

而这个值我们会用来绑定到Employee Name的水平对齐属性,所以其值只能是我们的right和left,更复杂的逻辑可以在VO的executeQuery()中或其它的事件中做更复杂的处理。

Step2. 原先的列为messageStyledText类型,并没有水平对齐属性,所以这里要在messageStyledText列外面加一个rowLayout类型的region,这样就可以使用水平对齐属性。

Step3. 在页面上的控制器的processRequest中,通过OADataBoundValueViewObject把上面VO中的Halign属性绑定到上面rowLayout的右对齐属性。


1

Thanks and Regards

参考:Tavor - http://blog.csdn.net/tavor/article/details/19507665

OAF_开发系列11_实现OAF通过DataBoundValues动态显示表列的左右对齐的更多相关文章

  1. OAF_开发系列13_实现OAF通过Vector动态查询设置(案例)

    20150715 Created By BaoXinjian

  2. OAF_开发系列28_实现OAF中反编译获取class包代码JD Compiler(案例)

    20150730 Created By BaoXinjian

  3. OAF_开发系列24_实现OAF更新记录显示Record History(案例)

    20150716 Created By BaoXinjian

  4. OAF_开发系列06_实现OAF属性集的介绍和开发Attribute Set(案例)

    20150705 Created By BaoXinjian

  5. OAF_开发系列03_实现OAF如何在保存前判断数据是否存在变更(案例)

    2014-06-26 Created By BaoXinjian

  6. OAF_开发系列02_实现OAF页面的通过个性化多语言开发国际化(案例)

    2014-06-10 Created By BaoXinjian

  7. OAF_开发系列26_实现OAF中Java类型并发程式开发oracle.apps.fnd.cp.request(案例)

    20150730 Created By BaoXinjian

  8. OAF_开发系列23_实现OAF数据格式CSS和CSS库(案例)

    20150716 Created By BaoXinjian

  9. OAF_开发系列20_实现OAF打印功能

    ddddd 添加一个页面级的button区域:pagebuttonBar,在之下添加button item ,这里主要设置的参数有:采用默认的oaf的打印按钮的id名称: IcxPrintablePa ...

随机推荐

  1. c# 强制转换, 隐式转换, 显式转换

    using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threa ...

  2. update the UI property cross thread

    this.Invoke((MethodInvoker)delegate { txtResult.Text = sbd.ToString(); // runs on UI thread });

  3. C++类成员布局

    在C++中对象的内存布局与类成员声明的顺序一致,静态成员放在数据区(Data Section)而非对象内存中,若多个类静态成员名称相同,C++则按照name mangling技术进行重命名保证名称的唯 ...

  4. 从一个数组中提取出第start位到第end位

    假设通过数组in来表示一个很大的数(in[0]表示最低bit),提取该数的第start位到第end位(计数起始位为0): #define MAX_BYTE_LEN ( 48 ) int getData ...

  5. 提升Nginx+PHP-FPM性能技巧

    /etc/php-fpm.d 2.1进程数   php-fpm初始/空闲/最大worker进程数      pm.max_children = 300      pm.start_servers = ...

  6. c# 引用百度地图

    <script type="text/javascript"> //创建和初始化地图函数 var map = new BMap.Map("home" ...

  7. throw与throws的区别

    throws语句       throws总是出现在一个函数头中,用来标明该成员函数可能抛出的各种异常.对大多数Exception子类来说,Java   编译器会强迫你声明在一个成员函数中抛出的异常的 ...

  8. new date() 在Linux下引起的时间差问题

    java工程部署到Linux时,使用new date()获取的时间出现时间差,通过查阅资料,发现有可能是服务器时间设置问题,JVM问题,jdk问题: 1.服务器时间设置问题: 正确的时间显示 有 CS ...

  9. delegate和protocol

    协议和代理对于一个新手来说确实不讨好理解,也有很多的iOS开发的老手对此是懂非懂的.网上的很多博文只是讲了怎么使用,并没有说的很明白.下面我谈一下我的理解. 1.你要先搞明白,协议和代理为什么会出现, ...

  10. CentOS7防火墙

    一.CentOS7依然使用iptables的方法 CentOS7不再使用iptables,而是使用firewalld,若不想使用firewalld,可以停掉firewalld并且安装iptables- ...