Powerbuilder Excel-Cell类似于Datawindow Grid上的编辑功能

时间:2014-07-15 05:19:52

标签: grid powerbuilder

我收到了一个非常不寻常的请求,即为我的网格模拟类似excel的编辑功能。

以下是该场景:用户希望能够通过单击单元格并键入他们想要的内容来立即更改内容。目前,他们必须双击单元格以阻止选择内容,然后键入所需的文本以覆盖单元格内容。他们喜欢双击的中间步骤来阻止选择要取出的文本。可编辑单元格仅包含数字。

所以我有两个选择:

1. Automatically block select the cell contents as soon as the user clicks on it
2. Make the cell selection/edit behave the same way as excel

鉴于Powerbuilder的固有局限性,我相信如果没有一些古怪的黑客攻击这是不可能的,但我想听听一些想法。

enter image description here

2 个答案:

答案 0 :(得分:2)

PowerBuilder可以轻松处理这个问题,但您现在可以看起来像是最终用户的英雄。 :)

自动选择数据窗口编辑字段中的文本

在您的datawindow画家中,选择列,然后选中“自动选择文本”属性。这将导致在字段获得焦点后立即选择文本。现在的问题是PB没有为编辑遮罩控件提供此功能,但您可以使用下面的示例来解决这个问题。

在数据窗口的“编辑桅杆”控件中自动选择文本

将代码添加到数据窗口控件,以检查编辑掩码字段并突出显示文本。该示例可以放在datawindow控件的itemfocuschanged事件中,也可以放在datawindow控件祖先中。

// only if row present
if row > 0 then 
    if describe( dwo.Name + '.Edit.Style' ) = 'editmask' then
        // we found an edit mask so select the text in it
        this.selecttext(1,len(string(getitemstring(row,dwo.Name))))
    end if
end if 

答案 1 :(得分:0)

您是否尝试过自动选择编辑属性?