TabPanel
介绍 (Introduction)
TabPanel小部件表示面板,该面板表示一组选项卡式页面,每个页面都包含另一个小部件。 当用户选择与其关联的各种选项卡时,将显示其子窗口小部件。 选项卡可以包含任意HTML。
Class 声明 (Class Declaration)
以下是com.google.gwt.user.client.ui.TabPanel类的声明 -
@Deprecated
public class TabPanel
extends Composite
implements TabListener, SourcesTabEvents,
HasWidgets, HasAnimation, IndexedPanel.ForIsWidget,
HasBeforeSelectionHandlers<java.lang.Integer>,
HasSelectionHandlers<java.lang.Integer>
类构造函数 (Class Constructors)
Sr.No. | 构造函数和描述 |
---|---|
1 | TabPanel() 已过时。 创建一个空的选项卡面板。 |
Class Methods
Sr.No. | 功能名称和描述 |
---|---|
1 | void add(IsWidget w, IsWidget tabWidget) 已过时。 方便过载,允许直接使用IsWidget。 |
2 | void add(IsWidget w, java.lang.String tabText) 已过时。 方便过载,允许直接使用IsWidget。 |
3 | void add(IsWidget w, java.lang.String tabText, boolean asHTML) 已过时。 方便过载,允许直接使用IsWidget。 |
4 | void add(Widget w) 已过时。 添加子窗口小部件。 |
5 | void add(Widget w, java.lang.String tabText) 已过时。 将小部件添加到选项卡面板。 |
6 | void add(Widget w, java.lang.String tabText, boolean asHTML) 已过时。 将小部件添加到选项卡面板。 |
7 | void add(Widget w, Widget tabWidget) 已过时。 将小部件添加到选项卡面板。 |
8 | Handler Registration add Before Selection Handler (Before Selection Handler《java.lang. Integer》 handler) 已过时。 添加BeforeSelectionEvent处理程序。 |
9 | Handler Registration add Selection Handler (Selection Handler 《java.lang. Integer》 handler) 已过时。 添加SelectionEvent处理程序。 |
10 | void add Tab Listener(TabListener listener) 已过时。 使用add Before Selection Handler(com.google.gwt.event。logical.shared.Before Selection Handler)并添加Selection Handler(com.google.gwt.event。logical.shared.Selection Handler)代替 |
11 | void clear() 已过时。 删除所有子窗口小部件。 |
12 | protected SimplePanel createTabTextWrapper() 已过时。 创建一个SimplePanel,将内容包装在选项卡中。 |
13 | DeckPanel getDeckPanel() 已过时。 获取此选项卡面板中的卡座面板。 |
14 | TabBar getTabBar() 已过时。 获取此选项卡面板中的选项卡栏。 |
15 | Widget getWidget(int index) 已过时。 获取指定索引处的子窗口小部件。 |
16 | int getWidgetCount() 已过时。 获取此面板中子窗口小部件的数量。 |
17 | int getWidgetIndex(IsWidget child) 已过时。 方便过载,允许直接使用IsWidget。 |
18 | int getWidgetIndex(Widget widget) 已过时。 获取指定子窗口小部件的索引。 |
19 | void insert(IsWidget widget, IsWidget tabWidget, int beforeIndex) 已过时。 方便过载,允许直接使用IsWidget。 |
20 | void insert(IsWidget widget, java.lang. String tab Text, boolean as HTML, int before Index) 已过时。 方便过载,允许直接使用IsWidget。 |
21 | void insert(IsWidget widget, java.lang.String tabText, int beforeIndex) 已过时。 方便过载,允许直接使用IsWidget。 |
22 | void insert(Widget widget, java.lang.String tabText, boolean asHTML, int beforeIndex) 已过时。 将小部件插入选项卡面板。 |
23 | void insert(Widget widget, java.lang.String tabText, int beforeIndex) 已过时。 将小部件插入选项卡面板。 |
24 | void insert(Widget widget, Widget tabWidget, int beforeIndex) 已过时。 将小部件插入选项卡面板。 |
25 | boolean isAnimationEnabled() 已过时。 如果启用了动画,则返回true,否则返回false。 |
26 | java.util.Iterator《Widget》 iterator() 已过时。 获取包含的小部件的迭代器。 |
27 | boolean on Before Tab Selected(Sources Tab Events sender, int tab Index) 已过时。 在选择之前使用选择前处理程序(com.google.gwt.event.logical.shared.Before Selection Event) |
28 | protected void onEnsureDebugId(java.lang. String baseID) 已过时。 受影响的元素:-bar =标签栏。 -bar-tab#=包含选项卡本身内容的元素。 -bar-tab-wrapper#=包含索引处选项卡的单元格。 -bottom =标签栏下方的面板。 |
29 | void onTabSelected(SourcesTabEvents sender, int tabIndex) 已过时。 请改用SelectionHandler.onSelection(com.google.gwt.event。logical.shared.SelectionEvent) |
30 | boolean remove(int index) 已过时。 删除指定索引处的窗口小部件。 |
31 | boolean remove(Widget widget) 已过时。 删除给定的窗口小部件及其关联的选项卡。 |
32 | void removeTabListener(TabListener listener) 已过时。 对返回的对象使用HandlerRegistration.removeHandler()方法,然后添加* Handler方法 |
33 | void selectTab(int index) 已过时。 以编程方式选择指定的选项卡并触发事件。 |
34 | void selectTab(int index, boolean fireEvents) 已过时。 以编程方式选择指定的选项卡。 |
35 | void setAnimationEnabled(boolean enable) 已过时。 启用或禁用动画。 |
方法继承 (Methods Inherited)
该类继承以下类中的方法 -
com.google.gwt.user.client.ui.UIObject
com.google.gwt.user.client.ui.Widget
com.google.gwt.user.client.ui.Composite
java.lang.Object
TabPanel小部件示例
此示例将指导您完成在GWT中显示TabPanel窗口小部件的使用的简单步骤。 按照以下步骤更新我们在GWT - Create Application的GWT应用程序GWT - Create Application章节 -
步 | 描述 |
---|---|
1 | 在com.包下创建一个名为HelloWorld的项目,如GWT - Create Application一章中所述。 |
2 | 修改HelloWorld.gwt.xml , HelloWorld.css , HelloWorld.html和HelloWorld.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;
}
以下是修改后的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>TabPanel Widget Demonstration</h1>
<div id = "gwtContainer"></div>
</body>
</html>
让我们有以下Java文件src/com.
/HelloWorld.java ,它将演示TabPanel小部件的使用。package com..client;
import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.user.client.ui.DecoratorPanel;
import com.google.gwt.user.client.ui.HTMLPanel;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.RootPanel;
import com.google.gwt.user.client.ui.TabPanel;
public class HelloWorld implements EntryPoint {
public void onModuleLoad() {
//Create an empty tab panel
TabPanel tabPanel = new TabPanel();
//create contents for tabs of tabpanel
Label label1 = new Label("This is contents of TAB 1");
label1.setHeight("200");
Label label2 = new Label("This is contents of TAB 2");
label2.setHeight("200");
Label label3 = new Label("This is contents of TAB 3");
label3.setHeight("200");
//create titles for tabs
String tab1Title = "TAB 1";
String tab2Title = "TAB 2";
String tab3Title = "TAB 3";
//create tabs
tabPanel.add(label1, tab1Title);
tabPanel.add(label2, tab2Title);
tabPanel.add(label3, tab3Title);
//select first tab
tabPanel.selectTab(0);
//set width if tabpanel
tabPanel.setWidth("400");
// Add the widgets to the root panel.
RootPanel.get().add(tabPanel);
}
}
一旦准备好完成所有更改,让我们像在GWT - 创建应用程序章节中那样在开发模式下编译和运行应用程序 。 如果您的应用程序一切正常,这将产生以下结果 -