- 浏览: 501934 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (156)
- xml (4)
- web前端 (24)
- jQuery (18)
- java (38)
- SQL (9)
- perl (2)
- OTRS (1)
- GWT (4)
- Linux (32)
- Maven (2)
- Spring (2)
- Oracle Win7 (1)
- css (8)
- eclipse (3)
- mysql (11)
- tomcat (5)
- git (4)
- javascript (22)
- font (1)
- android (1)
- log4j (1)
- email (1)
- sublime plugin (1)
- html (2)
- matches (1)
- php (3)
- apache (3)
- gd (1)
- docker (5)
- rails (1)
- RabbitMQ (1)
- Ubuntu (3)
- L2TP VPN (1)
- nodejs (1)
- oraclejet (1)
- ubutun (1)
- ntp (1)
- ngix (1)
- ssl (1)
- https (1)
- Linux,Debian (2)
- dpkg (1)
- pac (1)
- vi (1)
- vim (1)
- java,http (0)
- httpClient (0)
- shutter (1)
- shell (1)
- redmine (1)
最新评论
-
纵观全局:
配置之后,连接显示不是私密连接
keytool生成证书与Tomcat SSL配置 -
zhuchao_ko:
可以 伪造
java获得ip地址 -
longhua2003:
代码太乱了
java下载文件 -
tomhat:
ccx410 写道 安装gwt报错,unable to ret ...
GWT CellTable -
ccx410:
安装gwt报错,unable to retrieve osgi ...
GWT CellTable
package com.cn.client;
import java.util.ArrayList;
import java.util.List;
import com.google.gwt.cell.client.AbstractCell;
import com.google.gwt.cell.client.Cell;
import com.google.gwt.cell.client.CheckboxCell;
import com.google.gwt.cell.client.CompositeCell;
import com.google.gwt.cell.client.FieldUpdater;
import com.google.gwt.cell.client.HasCell;
import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.dom.client.Element;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.safehtml.shared.SafeHtmlBuilder;
import com.google.gwt.user.cellview.client.CellList;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.HorizontalPanel;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.RootPanel;
import com.google.gwt.user.client.ui.VerticalPanel;
import com.google.gwt.view.client.DefaultSelectionEventManager;
import com.google.gwt.view.client.MultiSelectionModel;
import com.google.gwt.view.client.ProvidesKey;
import com.google.gwt.view.client.SelectionChangeEvent;
/**
* Entry point classes define <code>onModuleLoad()</code>.
*/
public class CellTest implements EntryPoint {
private Cell<Department> contactCell;
private Label selectedLabel = new Label();
public void onModuleLoad() {
List<Department> depts = new ArrayList<Department>();
Department c = new Department("项目部");
c.setId(1);
Department c1 = new Department("财务部");
c1.setId(2);
Department c2 = new Department("开发部");
c2.setId(3);
Department c3 = new Department("测试部");
c3.setId(149);
depts.add(c);
depts.add(c1);
depts.add(c2);
depts.add(c3);
final DefaultSelectionEventManager<Department> selectionManager = DefaultSelectionEventManager.createCheckboxManager();
final MultiSelectionModel<Department> selectionModel = new MultiSelectionModel<Department>(DepartmentCell.KEY_PROVIDER);
selectionModel.addSelectionChangeHandler(
new SelectionChangeEvent.Handler() {
public void onSelectionChange(SelectionChangeEvent event) {
StringBuilder sb = new StringBuilder();
boolean first = true;
List<Department> selected = new ArrayList<Department>(
selectionModel.getSelectedSet());
for (Department value : selected) {
if (first) {
first = false;
} else {
sb.append(",");
}
sb.append(value.getName());
}
selectedLabel.setText("选择:"+sb.toString());
}
});
List<HasCell<Department, ?>> hasCells = new ArrayList<HasCell<Department, ?>>();
hasCells.add(new HasCell<Department, Boolean>() {
private CheckboxCell cell = new CheckboxCell(true, false);
public Cell<Boolean> getCell() {
return cell;
}
public FieldUpdater<Department, Boolean> getFieldUpdater() {
return null;
}
public Boolean getValue(Department object) {
return selectionModel.isSelected(object);
}
});
hasCells.add(new HasCell<Department, Department>() {
private DepartmentCell cell = new DepartmentCell();
public Cell<Department> getCell() {
return cell;
}
public FieldUpdater<Department, Department> getFieldUpdater() {
return null;
}
public Department getValue(Department object) {
return object;
}
});
contactCell = new CompositeCell<Department>(hasCells) {
@Override
public void render(Context context, Department value, SafeHtmlBuilder sb) {
sb.appendHtmlConstant("<table><tbody><tr>");
super.render(context, value, sb);
sb.appendHtmlConstant("</tr></tbody></table>");
}
@Override
protected Element getContainerElement(Element parent) {
return parent.getFirstChildElement().getFirstChildElement().getFirstChildElement();
}
@Override
protected <X> void render(Context context, Department value,
SafeHtmlBuilder sb, HasCell<Department, X> hasCell) {
Cell<X> cell = hasCell.getCell();
sb.appendHtmlConstant("<td>");
cell.render(context, hasCell.getValue(value), sb);
sb.appendHtmlConstant("</td>");
}
};
final CellList<Department> cellList = new CellList<Department>(contactCell);
cellList.setRowData(depts);
cellList.setSelectionModel(selectionModel,selectionManager);
HorizontalPanel hpanel = new HorizontalPanel();
VerticalPanel vpanel = new VerticalPanel();
vpanel.add(cellList);
vpanel.add(selectedLabel);
Button submitButton = new Button("提交");
submitButton.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
if(selectedLabel.getText() == null && selectedLabel.getText().equals("")){
Window.alert("没有选择!");
}else{
Window.alert(selectedLabel.getText());
}
}
});
hpanel.add(vpanel);
hpanel.add(submitButton);
RootPanel.get("root").add(hpanel);
}
private static class DepartmentCell extends AbstractCell<Department> {
@Override
public void render(Context context,Department value, SafeHtmlBuilder sb) {
if (value == null) {
return;
}
sb.appendHtmlConstant("<table>");
sb.appendHtmlConstant("<td style='font-size:95%;'>");
sb.appendEscaped(value.getName());
sb.appendHtmlConstant("</td></tr></table>");
}
public static final ProvidesKey<Department> KEY_PROVIDER = new ProvidesKey<Department>() {
@Override
public Object getKey(Department item) {
return item == null ? null : item.getId();
}
};
}
private class Department implements Comparable<Department> {
private int id;
private String name;
public Department(String name) {
super();
this.name = name;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public int compareTo(Department o) {
return (o == null || o.name == null) ? -1 : -o.name.compareTo(name);
}
@Override
public boolean equals(Object o) {
if (o instanceof Department) {
return id == ((Department) o).id;
}
return false;
}
}
}
要实现单选则:cellList.setSelectionModel(selectionModel);
要实现多选则:cellList.setSelectionModel(selectionModel,selectionManager);
import java.util.ArrayList;
import java.util.List;
import com.google.gwt.cell.client.AbstractCell;
import com.google.gwt.cell.client.Cell;
import com.google.gwt.cell.client.CheckboxCell;
import com.google.gwt.cell.client.CompositeCell;
import com.google.gwt.cell.client.FieldUpdater;
import com.google.gwt.cell.client.HasCell;
import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.dom.client.Element;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.safehtml.shared.SafeHtmlBuilder;
import com.google.gwt.user.cellview.client.CellList;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.HorizontalPanel;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.RootPanel;
import com.google.gwt.user.client.ui.VerticalPanel;
import com.google.gwt.view.client.DefaultSelectionEventManager;
import com.google.gwt.view.client.MultiSelectionModel;
import com.google.gwt.view.client.ProvidesKey;
import com.google.gwt.view.client.SelectionChangeEvent;
/**
* Entry point classes define <code>onModuleLoad()</code>.
*/
public class CellTest implements EntryPoint {
private Cell<Department> contactCell;
private Label selectedLabel = new Label();
public void onModuleLoad() {
List<Department> depts = new ArrayList<Department>();
Department c = new Department("项目部");
c.setId(1);
Department c1 = new Department("财务部");
c1.setId(2);
Department c2 = new Department("开发部");
c2.setId(3);
Department c3 = new Department("测试部");
c3.setId(149);
depts.add(c);
depts.add(c1);
depts.add(c2);
depts.add(c3);
final DefaultSelectionEventManager<Department> selectionManager = DefaultSelectionEventManager.createCheckboxManager();
final MultiSelectionModel<Department> selectionModel = new MultiSelectionModel<Department>(DepartmentCell.KEY_PROVIDER);
selectionModel.addSelectionChangeHandler(
new SelectionChangeEvent.Handler() {
public void onSelectionChange(SelectionChangeEvent event) {
StringBuilder sb = new StringBuilder();
boolean first = true;
List<Department> selected = new ArrayList<Department>(
selectionModel.getSelectedSet());
for (Department value : selected) {
if (first) {
first = false;
} else {
sb.append(",");
}
sb.append(value.getName());
}
selectedLabel.setText("选择:"+sb.toString());
}
});
List<HasCell<Department, ?>> hasCells = new ArrayList<HasCell<Department, ?>>();
hasCells.add(new HasCell<Department, Boolean>() {
private CheckboxCell cell = new CheckboxCell(true, false);
public Cell<Boolean> getCell() {
return cell;
}
public FieldUpdater<Department, Boolean> getFieldUpdater() {
return null;
}
public Boolean getValue(Department object) {
return selectionModel.isSelected(object);
}
});
hasCells.add(new HasCell<Department, Department>() {
private DepartmentCell cell = new DepartmentCell();
public Cell<Department> getCell() {
return cell;
}
public FieldUpdater<Department, Department> getFieldUpdater() {
return null;
}
public Department getValue(Department object) {
return object;
}
});
contactCell = new CompositeCell<Department>(hasCells) {
@Override
public void render(Context context, Department value, SafeHtmlBuilder sb) {
sb.appendHtmlConstant("<table><tbody><tr>");
super.render(context, value, sb);
sb.appendHtmlConstant("</tr></tbody></table>");
}
@Override
protected Element getContainerElement(Element parent) {
return parent.getFirstChildElement().getFirstChildElement().getFirstChildElement();
}
@Override
protected <X> void render(Context context, Department value,
SafeHtmlBuilder sb, HasCell<Department, X> hasCell) {
Cell<X> cell = hasCell.getCell();
sb.appendHtmlConstant("<td>");
cell.render(context, hasCell.getValue(value), sb);
sb.appendHtmlConstant("</td>");
}
};
final CellList<Department> cellList = new CellList<Department>(contactCell);
cellList.setRowData(depts);
cellList.setSelectionModel(selectionModel,selectionManager);
HorizontalPanel hpanel = new HorizontalPanel();
VerticalPanel vpanel = new VerticalPanel();
vpanel.add(cellList);
vpanel.add(selectedLabel);
Button submitButton = new Button("提交");
submitButton.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
if(selectedLabel.getText() == null && selectedLabel.getText().equals("")){
Window.alert("没有选择!");
}else{
Window.alert(selectedLabel.getText());
}
}
});
hpanel.add(vpanel);
hpanel.add(submitButton);
RootPanel.get("root").add(hpanel);
}
private static class DepartmentCell extends AbstractCell<Department> {
@Override
public void render(Context context,Department value, SafeHtmlBuilder sb) {
if (value == null) {
return;
}
sb.appendHtmlConstant("<table>");
sb.appendHtmlConstant("<td style='font-size:95%;'>");
sb.appendEscaped(value.getName());
sb.appendHtmlConstant("</td></tr></table>");
}
public static final ProvidesKey<Department> KEY_PROVIDER = new ProvidesKey<Department>() {
@Override
public Object getKey(Department item) {
return item == null ? null : item.getId();
}
};
}
private class Department implements Comparable<Department> {
private int id;
private String name;
public Department(String name) {
super();
this.name = name;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public int compareTo(Department o) {
return (o == null || o.name == null) ? -1 : -o.name.compareTo(name);
}
@Override
public boolean equals(Object o) {
if (o instanceof Department) {
return id == ((Department) o).id;
}
return false;
}
}
}
要实现单选则:cellList.setSelectionModel(selectionModel);
要实现多选则:cellList.setSelectionModel(selectionModel,selectionManager);
发表评论
-
Apache HTTPClient 忽略证书
2019-01-25 15:03 1502/** * httpclient4.5.2版 * ... -
HTTP 返回码
2019-01-24 15:28 385HTTP1.1新增了五种请求方法:OPTIONS、PUT、PA ... -
Java SizeToHuman 大小转换为mb kb tb等
2017-08-21 15:12 1576public class TestSizeToHuman ... -
javascript 监听键盘事件
2017-04-14 10:38 2759var ie; var firefox; ... -
JavaScript从数组中删除指定值元素的方法
2016-10-11 13:13 721下面的代码使用了两种方式删除数组的元素,第一种定义一个单独的函 ... -
CSS几种特效整理
2016-04-19 09:55 500css用伪类before和after制作三角形箭头网上有一堆教 ... -
java常规格式化说明
2016-01-20 17:27 1340转 换 符说 明 ... -
java验证是否包含特殊字符/\:*?"<>
2016-01-05 15:25 8726public class MatchTest { ... -
js 一些知识,js获取contxtPath
2015-11-12 13:49 1159var num = 1; var str = '1'; ... -
IE指定文档模式
2015-10-15 15:21 924对于 Web 开发人员来说,文本兼容性是一个要考虑的重要问题。 ... -
JSP和JSTL获取服务器参数
2015-09-11 13:57 1161<%@ page language="java ... -
java计算时间差比较时间大小
2015-05-20 10:53 1062今天需要比较时间在网上找到然后写下: 比如:现在是:200 ... -
java发邮件
2014-11-19 15:37 1168一、 import java.util.Date; im ... -
java log4j.properties
2014-11-18 09:30 870log4j.properties配置文件如下: log4j ... -
java获得ip地址
2014-11-17 18:18 1277public String getIpAddr(Htt ... -
java下载文件
2014-11-07 10:57 1041// 文件名称中文乱码new String(filename. ... -
Android中RelativeLayout各个属性的含义
2014-10-11 15:06 835android:layout_above="@id ... -
Http发送请求
2014-09-17 15:01 852package wzh.Http; import j ... -
如何在一个页面上让多个jQuery版本共存
2014-09-10 10:22 873如何在一个页面上让多个jQuery共存呢?比如jquery-1 ... -
导出数据到excel
2014-09-03 16:20 1182/** * */ package com.chin ...
相关推荐
gwt 练习gwt 练习gwt 练习gwt 练习
EXT-GWT2.0.1+API+DOC gwtdesigner Gwt-Ext基础-中级-进阶 GWT快速开发 GWT入门 GWT中文教程
fwefwefwGWT工具GWT工具GWT工具GWT工具GWT工具GWT工具
gwt 入门,是你开始学习gwt的大道 安装之后的目录结构为: C:\程序开发\Java\gwt-windows-1.4.59 doc(文档目录,开发文档和Java API文档) samples(示例代码目录,非常有名的KitchenSink示例代码即在此目录中)...
Gwt中文手册,GWt入门Gwt中文手册,GWt入门Gwt中文手册,GWt入门
GWT(Google Web Toolkit) 是 Google 最近推出的一个开发 Ajax 应用的框架,它支持用 Java 开发和调试 Ajax 应用,本文主要介绍如何利用 GWT 进行 Ajax 的开发。 Ajax技术是当前开发web应用的非常热门的技术,也是Web...
很好的资源,在这边分享下,提供给想要寻找GWT资源的兄弟姐妹们 如果哪位兄弟有好的资源不要忘了分享啊
2. Hello GWT 3. 模块 4. JSNI 5. 在GWT中使用XML 6. GWT控件详解 7. 使用GWT控件 8. GWT-RPC 9. Ext GWT 10. (实战)俄罗斯方块游戏 11. (实战)费用申请审批流程 12. GWT与Flex整合 13. 图片缓存 CSS Sprite 14. ...
用Maven创建GWT_SmartGWT项目,从而可利用Maven进行管理,以及持续集成。
smartgwt最新版本GWT的DEMO 谷歌web工具箱实例
GWT的eclipse4.4离线开发插件,国内现在没有
GWT学习时的一些小例子,和大家分享,GWT学习时的一些小例子,和大家分享
这个文件是关于GWT开发的,属于入门级别的,GWT新手可以下载了看看。
基本概念及GWT结构及命令,开发等的介绍
gwt学习资料 java gwt相关学习网站 gwt图解 gwt教学 gwt安装部署 步骤流程
最新火狐浏览器GWT开发插件,离线安装。不用在线等待!
GWT快速开发(GWT) 是一个Java软件开发框架用于开发类似于Google Maps和Gmail的AJAX应用程序。GWT的设计参考Java AWT包设计,类命名规则、接口设计、事件监听等。你可以用Java编程语言开发你的界面,然后用GWT编译器将...
一个非常出色的gwt实例,基于gwt-windows-1.5.2实例,是非常好的gwt经典学习实例
gwt-2.1.0
smartgwt-1.3smartgwt-1.3smartgwt-1.3smartgwt-1.3smartgwt-1.3