当前位置: 首页 > 文档资料 > GWT 入门教程 >

ListBox

优质
小牛编辑
132浏览
2023-12-01

介绍 (Introduction)

ListBox小部件表示用户的选项列表,可以是列表框,也可以是下拉列表。

Class 声明 (Class Declaration)

以下是com.google.gwt.user.client.ui.ListBox类的声明 -

public class ListBox
   extends FocusWidget
      implements SourcesChangeEvents, HasName

CSS样式规则 (CSS Style Rules)

以下默认CSS样式规则将应用于所有ListBox小部件。 您可以根据自己的要求覆盖它。

.gwt-ListBox {} 

类构造函数 (Class Constructors)

Sr.No.构造函数和描述
1

ListBox()

在单选模式下创建一个空列表框。

2

ListBox(boolean isMultipleSelect)

创建一个空列表框。

3

ListBox(Element element)

子类可以使用此构造函数来显式使用现有元素。

Class Methods

Sr.No.功能名称和描述
1

void addItem(java.lang.String item)

将项添加到列表框中。

2

void addItem(java.lang.String item, java.lang.String value)

将项添加到列表框,指定项的初始值。

3

void clear()

从列表框中删除所有项目。

4

int getItemCount()

获取列表框中存在的项目数。

5

java.lang.String getItemText(int index)

获取与指定索引处的项关联的文本。

6

java.lang.String getName()

获取小部件的名称。

7

int getSelectedIndex()

获取当前选定的项目。

8

java.lang.String getValue(int index)

获取与给定索引处的项关联的值。

9

int getVisibleItemCount()

获取可见的项目数。

10

void insertItem(java.lang.String item, int index)

将项目插入列表框。

11

void insertItem(java.lang.String item, java.lang.String value, int index)

将项目插入列表框,指定项目的初始值。

12

boolean isItemSelected(int index)

确定是否选择了单个列表项。

13

boolean isMultipleSelect()

获取此列表是否允许多个选择。

14

void onBrowserEvent(Event event)

收到浏览器事件时触发。

15

protected void onEnsureDebugId(java.lang.String baseID)

受影响的元素:-item#=指定索引处的选项。

16

void removeChangeListener(ChangeListener listener)

删除以前添加的侦听器界面。

17

void removeItem(int index)

删除指定索引处的项目。

18

void setItemSelected(int index, boolean selected)

设置是否选择单个列表项。

19

void setItemText(int index,java.lang.String text)

设置给定索引处的文本。

20

void setMultipleSelect(boolean multiple)

设置此列表是否允许多个选择。

21

void setName(java.lang.String name)

设置小部件的名称。

22

void setSelectedIndex(int index)

设置当前选定的索引。

23

void setValue(int index, java.lang.String value)

设置与给定索引处的项关联的值。

24

void setVisibleItemCount(int visibleItems)

设置可见的项目数。

25

static ListBox wrap(Element element)

创建一个包装现有元素的ListBox小部件。

26

void addChangeListener(ChangeListener listener)

添加侦听器接口以接收更改事件。

方法继承 (Methods Inherited)

该类继承以下类中的方法 -

  • com.google.gwt.user.client.ui.UIObject

  • com.google.gwt.user.client.ui.Widget

  • com.google.gwt.user.client.ui.FocusWidget

  • java.lang.Object

ListBox小部件示例

此示例将指导您完成在GWT中显示ListBox Widget的使用的简单步骤。 按照以下步骤更新我们在GWT - Create Application的GWT应用程序GWT - Create Application章节 -

描述
1com.

包下创建一个名为HelloWorld的项目,如GWT - Create Application一章中所述。
2修改HelloWorld.gwt.xmlHelloWorld.cssHelloWorld.htmlHelloWorld.java ,如下所述。 保持其余文件不变。
3编译并运行应用程序以验证实现的逻辑的结果。

以下是修改后的模块描述符src/com.

/HelloWorld.gwt.xml 。

<?xml version = "1.0" encoding = "UTF-8"?>
<module rename-to = 'helloworld'>
   <!-- Inherit the core Web Toolkit stuff.                        -->
   <inherits name = 'com.google.gwt.user.User'/>
   <!-- Inherit the default GWT style sheet.                       -->
   <inherits name = 'com.google.gwt.user.theme.clean.Clean'/>
   <!-- Specify the app entry point class.                         -->
   <entry-point class = 'com.

.client.HelloWorld'/> <!-- Specify the paths for translatable code --> <source path = 'client'/> <source path = 'shared'/> </module>

以下是修改后的样式表文件war/HelloWorld.css

body {
   text-align: center;
   font-family: verdana, sans-serif;
}
h1 {
   font-size: 2em;
   font-weight: bold;
   color: #777777;
   margin: 40px 0px 70px;
   text-align: center;
}
.gwt-ListBox{ 
   color:green;   
}

以下是修改后的HTML主机文件war/HelloWorld.html

<html>
   <head>
      <title>Hello World</title>
      <link rel = "stylesheet" href = "HelloWorld.css"/>
      <script language = "javascript" src = "helloworld/helloworld.nocache.js">
      </script>
   </head>
   <body>
      <h1>ListBox Widget Demonstration</h1>
      <div id = "gwtContainer"></div>
   </body>
</html>

让我们有以下Java文件src/com.

/HelloWorld.java ,它将演示ListBox小部件的使用。

package com.

.client; import com.google.gwt.core.client.EntryPoint; import com.google.gwt.user.client.ui.ListBox; import com.google.gwt.user.client.ui.RootPanel; import com.google.gwt.user.client.ui.VerticalPanel; public class HelloWorld implements EntryPoint { public void onModuleLoad() { // Make a new list box, adding a few items to it. ListBox listBox1 = new ListBox(); listBox1.addItem("First"); listBox1.addItem("Second"); listBox1.addItem("Third"); listBox1.addItem("Fourth"); listBox1.addItem("Fifth"); // Make a new list box, adding a few items to it. ListBox listBox2 = new ListBox(); listBox2.addItem("First"); listBox2.addItem("Second"); listBox2.addItem("Third"); listBox2.addItem("Fourth"); listBox2.addItem("Fifth"); // Make enough room for all five items listBox1.setVisibleItemCount(5); //setting itemcount value to 1 turns listbox into a drop-down list. listBox2.setVisibleItemCount(1); // Add listboxes to the root panel. VerticalPanel panel = new VerticalPanel(); panel.setSpacing(10); panel.add(listBox1); panel.add(listBox2); RootPanel.get("gwtContainer").add(panel); } }

一旦准备好完成所有更改,让我们像在GWT - 创建应用程序章节中那样在开发模式下编译和运行应用程序 。 如果您的应用程序一切正常,这将产生以下结果 -

GWT ListBox小部件