我正在阅读如何将列排序函数添加到单元格表,但我不理解谷歌提供的代码.以下是我的celltable,我如何添加使nameColumn可以排序?
public class CellTableExample implements EntryPoint {
private static class Contact {
private String address;
private String name;
public Contact(String name, String address) {
super();
this.address = address;
this.name = name;
}
}
// The list of data to display.
private static List<Contact> CONTACTS = Arrays.asList(
new Contact("John", "123 Fourth Road asdf asdf asdfasdf"),
new Contact("Mary", "222 Lancer Lane")
);
@Override
public void onModuleLoad() {
CellTable<Contact> table = new CellTable<Contact>();
//address column
TextColumn<Contact> addressColumn = new TextColumn<Contact>(){
@Override
public String …Run Code Online (Sandbox Code Playgroud) 我PopupPanel在GWT 写了自己的.我想显示相对于其他小部件的弹出窗口.我对该类的实现如下所示:
public class Popover extends PopupPanel implements PositionCallback {
private static final Binder binder = GWT.create(Binder.class);
private UIObject relative;
interface Binder extends UiBinder<Widget, Popover> {
}
public Popover() {
setWidget(binder.createAndBindUi(this));
setStylePrimaryName("popover");
}
public void show(UIObject relative) {
this.relative = relative;
setPopupPositionAndShow(this);
}
public void setPosition(int offsetWidth, int offsetHeight) {
if (relative != null) {
int left = relative.getAbsoluteLeft();
int top = relative.getAbsoluteTop();
int width = relative.getOffsetWidth();
int height = relative.getOffsetHeight();
int topCenter = top + height / …Run Code Online (Sandbox Code Playgroud) 我想从客户端发送文件到服务器.
我的代码:
客户方:
private FormPanel getFormPanel() {
if (formPanel == null) {
formPanel = new FormPanel();
formPanel.setMethod(FormPanel.METHOD_POST);
formPanel.setEncoding(FormPanel.ENCODING_MULTIPART);
formPanel.setAction(GWT.getHostPageBaseURL() +"UploadFileServlet");
formPanel.setWidget(getFlexTable_1());
System.out.println(GWT.getHostPageBaseURL() +"UploadFileServlet");
}
return formPanel;
}
Run Code Online (Sandbox Code Playgroud)
在 getFlexTable_1()
flexTable.setWidget(1, 1, getFileUpload());
Run Code Online (Sandbox Code Playgroud)
在 getFileUpload()
private FileUpload getFileUpload() {
if (fileUpload == null) {
fileUpload = new FileUpload();
fileUpload.setName("upload");
}
return fileUpload;
}
private Button getAddButton() {
if (addButton == null) {
addButton = new Button("ADD");
addButton.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event) {
formPanel.submit();
}
});
}
return addButton; …Run Code Online (Sandbox Code Playgroud) 每当我DialogBox被隐藏时,我想调用一个方法.无论它是如何被隐藏的,它可能是某人点击关闭按钮或它可以自己隐藏.当发生这种情况时,系统将调用方法.
看看这段代码.
public class WishListDialogBox extends DialogBox {
@UiField Button closeButton;
public WishListDialogBox() {
setHTML("Wish List");
setWidget(uiBinder.createAndBindUi(this));
closeButton.addClickHandler(new ClickHandler(){
@Override
public void onClick(ClickEvent event) {
hide();
}
});
}
@Override
public void hide() {
super.hide();
//call some action here;
}
}
Run Code Online (Sandbox Code Playgroud)
上面的代码仅在我单击CloseButton时才起作用,但当DialogBox它本身隐藏时,没有任何反应.
没有onHide事件DialogBox.
在传统的Java中,有一个addWindowListener可以很容易地处理他,但GWT中缺少这个DialogBox.
那么,当DialogBox隐藏一个事件时如何触发事件GWT?