Powerbuilder修改行列

Powerbuilder modify row columns

我有更多行。我希望状态为 AA1 的行受保护,而状态不同于 AA1 的行则不受保护。 所以我写了这个:

ll_count = dw_list.RowCount()
   if ll_count > 0 then 
    for i = 1 to ll_count
            if dw_list.object.status[i] = 'AA1' then
                 dw_list.modify("f_change[i].Protect='1")
                //dw_list.Object.f_change[i].modify("f_change[i].Protect='1")
                dw_list.Object.f_change[i].Background.Color = gf_get_btnface()
            end if
            if dw_list.object.status[i] <> 'AA1' then               
                dw_list.modify("f_change[i].Protect='0'")           
            end if
    next
   end if

但是dw_list.modify("f_change[i].Protect='1'")不正确。都没有dw_list.Object.f_change[i].modify("f_change[i].Protect='1")。 如果我只写 dw_list.modify("f_change.Protect='1'") 它会修改所有行。

我不需要编程一行,而是通过编辑数据window设计来做到这一点。

  1. 在设计模式下打开数据window
  2. Select 所需的列
  3. 在 'General' 选项卡中,单击 'Protect' 附近的小图标。
  4. 在该列中插入条件以保护或不保护:if( status = 'AA1', '0', '1')

完成所有数据。
相同的过程可以应用于数据 window 列的许多特征(颜色、背景颜色、可见性、指针、位置……) 或者,您可以通过编程方式设置条件,但我只会在您需要更改保护方案 'on the fly' 时才这样做。不管怎样,原则是在列本身上设置保护条件。 一般来说,尽量在没有脚本编程的情况下在 PowerBuilder 中完成。你