返回默认值PowerBuilder 11

时间:2017-04-04 15:21:52

标签: drop-down-menu powerbuilder datawindow

我有一个包含以下三列的DataWindow对象:

  • status - 这是一个复选框
  • 标准 - 这是dropdownDW
  • 另一个

当状态为1(已选中),然后criteria.Protect='0'。如果用户从标准列表中选择“另一个标准”,则another.Protect='0'和用户可以写任何他想要的内容。

问题在于用户改变主意并取消选中状态。 标准和另一列具有他之前选择/写过的最后一个值。如何重置dropdownDW或如何恢复默认值?

在itemchange事件中我有这个:

choose case dwo.name
  case "status"
    if  data ='0' then
      dw_list.modify("criteria.Protect='1'")
      dw_list.modify("another.Protect='1'")
    else
      dw_list.modify("criteria.Protect='0'")
    end if

2 个答案:

答案 0 :(得分:0)

String ls_criteriaProtect
String ls_anotherProtect

//Save default values:
ls_criteriaProtect = dw_list.describe( "criteria.Protect" )
ls_anotherProtect = dw_list.describe( "another.Protect" )

choose case dwo.name
  case "status"
    if  data ='0' then
      dw_list.modify("criteria.Protect='1'")
      dw_list.modify("another.Protect='1'")
    else
      dw_list.modify("criteria.Protect='0'")
    end if
  case else

      //Apply initial values:
      dw_list.modify( "criteria.Protect='" + ls_criteriaProtect  + "'" )
      dw_list.modify( "another.Protect='" + ls_anotherProtect  + "'" )
End Choose

答案 1 :(得分:0)

在datawindow对象中的status列的Protect属性上使用表达式。

类似的东西:

case (describe('criteria.protect') when '0' then 1 else 0)