问题描述
我试图覆盖表单上的 displayOption
,以便我按照特定条件为特定行着色,当我的条件与普通字段相关时,我对此没有问题,示例代码:
public void displayOption(Common _record,FormRowdisplayOption _options)
{
if (_record.(fieldnum(MY_Table,My_Field))=="YES")
{
_options.backColor(WinAPI::RGB2int(161,161,255));
}
super(_record,_options);
}
但我的问题是,我想在 displayMethod 上设置条件而不是普通字段
解决方法
一个显示方法会起作用,您只需要将 Common _record
强制转换到您的表缓冲区,然后您就可以访问该表方法。
因此,如果它是 SalesTable
,您将创建:
SalesTable salesTable;
salesTable = _record as SalesTable;
if (salesTable.yourTableDisplayMethod == "whatever") { // Do something }
然后就可以正常使用显示方式了。