我有更多行。我希望状态为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'")
,它会修改所有行。
答案 0 :(得分:1)
我没有编程一行就可以做到这一点,但是通过编辑数据窗口设计。
if( status = 'AA1', '0', '1')
完成所有数据。
相同的过程可以应用于数据窗口列的许多特征(颜色,背景颜色,可见,指针,位置......)
或者,您可以以编程方式设置条件,但我只会在您需要“动态”更改保护方案时执行此操作。无论如何,原则是在列本身上设置保护条件。
一般来说,尽可能多地尝试在PowerBuilder中进行脚本编程。 û