选择行时如何防止某些列被突出显示

时间:2011-06-08 14:21:22

标签: highlighting powerbuilder datawindow

我有一个半动态创建的窗口(并使用PowerBuilder 10.5)。现在有几列可以有不同的颜色,我想在选择行时看到这些颜色。但是,我不知道如何取消选择这些列并保持选中前几列。 我们的应用程序中的高亮功能只是执行dw.selectrow(x,true)。

此致 马里努斯

2 个答案:

答案 0 :(得分:0)

我认为你不会使用selectrow得到你想要的东西。如果您不需要多个选择,则可以使用数据窗口中的表达式更改当前行的背景。如果您希望某些列保持正常,您可以使用要突出显示的矩形而不是更改行颜色来实现。如果需要突出显示多行,则必须通过添加虚拟列来模拟多选,并使用它来控制背景,当然,您需要在clicked事件中处理选择和取消选择。如果您有代码处理选定的行,则必须更改它们以使用新方案,例如通过检查虚拟列中的值。

答案 1 :(得分:0)

如果你想使用SelectRow(),也许使用SetRowFocusIndicator()会有所帮助。 IIRC(它已经非常接近十年* s *因为我已经使用过它),它禁用行着色以支持新方法。

另一种想到的方法是为使用GetRow()和CurrentRow()的背景颜色设置表达式。这不是我的第一选择,因为它不会让视力受损的用户通过标准的Windows颜色选择他们可以处理的东西选择他们的颜色,但是如果你在选择性色谱柱上设置了颜色指示,这将是是要走的路。

祝你好运,

特里。