理论教育 关键字下拉列表的实现及绑定属性方法

关键字下拉列表的实现及绑定属性方法

时间:2023-05-19 理论教育 版权反馈
【摘要】:一个关键字下拉列表给用户提供了一个下拉清单,而且用户仅能选择最多一个条目。关键字下拉列表一直是较常见的页面元素,它的可选范围可以通过字段所对应的类型来个性化。3)选中关键字下拉列表,将“selectedKey”所选关键字属性绑定为上下文中的“dept”,如图4-47所示。图4-54 修改类型图4-55 选择对应类型12)保存所有修改,并重新编译、运行之后,就能正确地使用关键字下拉列表了,如图4-56所示。

关键字下拉列表的实现及绑定属性方法

一个关键字下拉列表给用户提供了一个下拉清单,而且用户仅能选择最多一个条目。这个元素其实是由一个文本域、一个按钮和一个选择列表组成的,单击下拉按钮可以看到清单中所有可选的条目,而选中的条目将会在文本域中进行显示。

关键字下拉列表一直是较常见的页面元素,它的可选范围可以通过字段所对应的类型来个性化。当下拉列表框的条目达到一定数量时,下拉列表元素会自动转换为弹出式的输入帮助对话框。

下拉列表包含以下属性。

●activateAccessKey:设置是否允许快捷键(使用“Alt”键与首字母触发默认事件)。

●contextMenuBehaviour:设置上下文菜单行为,默认有“继承”“允许”和“禁止”3种类型。

●contextMenuId:设置上下文菜单的唯一标识。

●displayAsText:控制是否以文本形式显示,如设置为“true”,则在视图中的显示效果与“TextView”一样。

●enabled:控制元素是否可用。

●labelFor:用于设置元素对应的显示标签。

●readOnly:控制元素是否只读。

●selectedKey:绑定控件操作的上下文特性。“selectedKey”为值选择后赋值变量。对于静态下拉框来讲,下拉框的选择范围可以通过在数据字典中建立简单类型进行指定,此时上下文特性的类型需要选择该简单类型。

●state:控制元素的显示状态,默认有“normal”和“required”两种状态。在选择“required”后,元素会出现一个红色星号进行提醒,但逻辑控制仍需要编写相关代码。

●suggestedValue:控制是否有推荐值。

●textDirection:控制下拉列表显示文本的排列顺序,默认有3个选项:继承自父元素、从左往右和从右往左。

●tooltip:控制提示消息的显示文本。

●visible:控制元素是否可见。

●width:控制元素的显示宽度。

●onSelect事件:当用户选择某一确定值时,会触发该事件。

开发实例:

1)打开任一视图(如果需要创建新的工程或视图,请参考之前章节步骤),右击“Out⁃line”元素清单中的“RootElement”根结点,选择插入子对象,选择关键字下拉列表类型,输入ID名称,单击“OK”按钮,如图4-45所示。

978-7-111-58177-2-Chapter04-48.jpg

图4-45 选择元素类型

2)切换到视图的上下文页签中,创建类型为“string”的特性“dept”,如图4-46所示。

3)选中关键字下拉列表,将“selectedKey”所选关键字属性绑定为上下文中的“dept”,如图4-47所示。

978-7-111-58177-2-Chapter04-49.jpg

图4-46 创建特性

978-7-111-58177-2-Chapter04-50.jpg

图4-47 属性修改

4)添加一个“Label”标签,将属性中的“text”修改为“部门”。保存所有修改,并编译、运行,运行效果如图4-48所示。

5)由于当前绑定的上下文是一个字符串类型,因此并不能实现多个条目的效果。下面创建一个简单类型进行条目填充。在工程目录中(窗口的下方)找到“Ditionaries”→“Local Dictionary”→“Data Types”,右击“Simple Types”,选择“Create Simple Type”,如图4-49所示。

978-7-111-58177-2-Chapter04-51.jpg

图4-48 运行效果

978-7-111-58177-2-Chapter04-52.jpg

图4-49 创建简单类型

6)根据需求输入简单类型的名称和包名,其中简单类型的包名也可直接选择现有的包,单击“Finish”按钮,如图4-50所示。

978-7-111-58177-2-Chapter04-53.jpg

图4-50 输入简单类型信息

7)创建完成后,即可对创建的简单类型进行详细的配置。上方是一般信息定义,主要关注类型的定义;下方是对于长度常量的定义;最下方还有其他3个页签,其中“Enumera⁃tion”是定义集合中的所有条目,如图4-51所示。

978-7-111-58177-2-Chapter04-54.jpg

图4-51 简单类型的定义页面(www.daowen.com)

8)切换到“Enumeration”页签,单击“New”按钮,定义值范围,如图4-52所示。

978-7-111-58177-2-Chapter04-55.jpg

图4-52 输入信息

9)依次输入多个部门,单击“完成”按钮并保存所有修改,如图4-53所示。

978-7-111-58177-2-Chapter04-56.jpg

图4-53 完成后的效果

10)回到视图的上下文页签中,选择“dept”特性,并修改它的类型,如图4-54所示。注意,修改类型时如果单击下拉列表框只能看到一些基本类型,需要单击右侧的“…”按钮。

11)在弹出的对话框中找到之前创建的包以其对应的“dept”,选中后单击“OK”按钮,如图4-55所示。

978-7-111-58177-2-Chapter04-57.jpg

图4-54 修改类型

978-7-111-58177-2-Chapter04-58.jpg

图4-55 选择对应类型

12)保存所有修改,并重新编译、运行之后,就能正确地使用关键字下拉列表了,如图4-56所示。

13)细心的读者会发现,下拉列表的宽度自动进行了调整,它会根据所绑定类型中的文本长度自动进行调整,如图4-57所示。可以通过修改下拉列表的“width”属性来固定修改元素的宽度。通常在页面布局时并不建议直接将元素宽度设置为固定值,设定百分比的形式会让页面布局变得灵活。

14)保存所有修改,并重新编译、运行之后,就能看到下拉列表最终的运行效果,如图4-58所示。

978-7-111-58177-2-Chapter04-59.jpg

图4-56 运行效果

978-7-111-58177-2-Chapter04-60.jpg

图4-57 “width”属性

978-7-111-58177-2-Chapter04-61.jpg

图4-58 运行效果

15)由于下拉列表中的条目与元素所绑定的简单类型中的“Enumeration”对应,因此再次修改“dept”,添加一行空值,如图4-59所示。

978-7-111-58177-2-Chapter04-62.jpg

图4-59 修改值

16)保存所有修改,并重新编译、运行之后,选择范围中多出了空值选择,可以通过空值来重置下拉输入,如图4-60所示。

17)在下拉列表的默认事件中创建一个动作,如图4-61所示。

978-7-111-58177-2-Chapter04-63.jpg

图4-60 运行效果

978-7-111-58177-2-Chapter04-64.jpg

图4-61 创建对应事件

18)添加打印代码,即在选择条目时将选中后的上下文的值打印在页面上,如图4-62所示。

wdComponentAPI.getMessageManager().reportSuccess(wdContext.currentContextElement().getDept);

978-7-111-58177-2-Chapter04-65.jpg

图4-62 添加代码

19)保存所有修改,并重新编译、运行之后,选择任意一个条目(见图4-63),页面会打印出关键字(见图4-64),而不是关键字对应的描述。

978-7-111-58177-2-Chapter04-66.jpg

图4-63 运行效果

978-7-111-58177-2-Chapter04-67.jpg

图4-64 选择后的效果

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈