小编enr*_*ybo的帖子

keyPressEvent.getCharCode()为所有特殊键返回0,如enter,tab,escape等

我的代码:

@Override
public void onKeyPress(KeyPressEvent event)
{
    if (event.getCharCode() == KeyCodes.KEY_ENTER)
    {
        registerButton.click();
    }
}
Run Code Online (Sandbox Code Playgroud)

这是附加到TextBox,当我按Enter键时它会触发. event.getCharCode()只是零,不是13.当我按Tab键时,它就是0,当我按下escape时,它就是了0.哎呀!

昨天这个工作正常,项目中其他地方发生了一些变化,影响了这一点 - 但我不确定它是什么.看起来好像在最后一天没有做出相关的改变.

如果我处理a KeyUpEvent,这可以按预期工作.

我正在使用GWT 2.1.0.谢谢你的任何想法!

gwt onkeypress

32
推荐指数
2
解决办法
3万
查看次数

使用GWT中的参数发出POST请求

我正在尝试使用一组参数对给定的URL执行POST请求.我遇到的问题是POST请求,但没有传递参数.

    RequestBuilder builder = new RequestBuilder(RequestBuilder.POST, url);

    StringBuilder sb = new StringBuilder();
    for ( String k: parmsRequest.keySet() ) {
        String vx = URL.encodeComponent( parmsRequest.get(k));
        if ( sb.length() > 0 ) {
            sb.append("&");
        }
        sb.append(k).append("=").append(vx);
    }

    try {
        Request response = builder.sendRequest( sb.toString(), new RequestCallback() {

            public void onError(Request request, Throwable exception) {}

            public void onResponseReceived(Request request, Response response) {}
        });
    } catch (RequestException e) {}
}
Run Code Online (Sandbox Code Playgroud)

如果我使用模式GET并手动将查询字符串添加到请求中,这可以正常工作 - 但我需要使用POST,因为要传递的数据可能很大....

gwt smartgwt

16
推荐指数
1
解决办法
2万
查看次数

在CellTable中禁用CheckboxCell

我有一个GWT CellTable<MyType>.此表包含应显示的行CheckBox.这CheckBox应根据getter进行检查或取消选中MyType,但应禁用,以便用户无法单击它.有人知道如何实施吗?

一些代码片段:

Column<MyType, Boolean> checkboxColumn = new Column<MyType, Boolean>(new CheckboxCell()) {
    @Override
    public Boolean getValue(MyType object) {
        return object.isItTrue();
    }
};
CellTable<MyType> cellTable = new CellTable<MyType>();
cellTable.addColumn(checkboxColumn, "Header title");
Run Code Online (Sandbox Code Playgroud)

gwt

15
推荐指数
1
解决办法
9076
查看次数

GWT弹出setGlassEnabled(true)不起作用

我正在创建一个与同一文本相同的弹出式面板,我想禁用背景并使其变灰.我读到了关于setGlassEnabled的内容,但它不起作用,有人可以帮忙吗?PS.弹出窗口正确可视化.

PopupPanel popup = new PopupPanel(infoType);
popup.center();
popup.setGlassEnabled(true);
popup.show();
Run Code Online (Sandbox Code Playgroud)

gwt popup

7
推荐指数
1
解决办法
5561
查看次数

如何让GXT网格占用所有可用宽度?

我在GXT中有一个网格,如下所示:

List<ColumnConfig> configs = new ArrayList<ColumnConfig>();
ColumnConfig config = new ColumnConfig();
config.setId("type");
config.setHeader("Type");
config.setWidth(50);
configs.add(config);
config = new ColumnConfig();
config.setId("text");
config.setHeader("Info");
config.setWidth(75);
configs.add(config);

columnModel = new ColumnModel(configs);
listStore = new ListStore<DtoModel>();

grid = new Grid<DtoModel>(listStore, columnModel);
grid.setAutoHeight(true);
grid.setAutoWidth(true);

VerticalPanel verticalPanel = new VerticalPanel();
verticalPanel.setLayout(new FillLayout());
verticalPanel.add(grid);
Run Code Online (Sandbox Code Playgroud)

这样就可以创建网格,只有一个例外 - 宽度限制为列宽的总和.当我放弃列宽时,网格最终有0宽度.

有没有办法让这个网格及其列扩展以填充可用的整个区域?

编辑:困难之一是该ColumnConfig.setWidth()方法只接受int一个参数,所以我不能将"100%"指定为字符串或类似的东西.

grid gwt gxt

6
推荐指数
2
解决办法
1万
查看次数

如何通过事件总线告知GWT单元格小部件数据是否已更改?

我有一个GWT单元树,用于显示CMS的文件结构.我正在使用AsyncDataProvider从我创建的自定义RPC类加载数据.我还有一个Web Socket系统,它将从也在系统中工作的其他客户端广播事件(文件创建,重命名,移动,删除等).

我想要解决的是当我收到其中一个事件时,我如何正确更新我的Cell Tree?

我想这个问题类似于在页面上有两个我的Cell Tree实例,它们呈现相同的服务器端数据,并希望确保当用户更新一个时,另一个更新也通过使用EventBus.

我觉得这应该很简单,但我现在花了大约6个小时才没有进展.我的代码包含在下面:

注意:我没有使用RequestFactory,即使它看起来像我是我的自定义RPC框架.此外,FileEntity只是一个文件的简单表示,其名称可以访问getName().

private void drawTree() {

        // fileService is injected earlier on and is my own custom rpc service
        TreeViewModel model = new CustomTreeModel(new FileDataProvider(fileService));
        CellTree tree = new CellTree(model, "Root");

        tree.setAnimationEnabled(true);

        getView().getWorkspace().add(tree);

    }

    private static class CustomTreeModel implements TreeViewModel {

        // I am trying to use a single AsyncDataProvider so I have a single point of loading data which I can manipulate (Not sure if this is …
Run Code Online (Sandbox Code Playgroud)

gwt event-bus

6
推荐指数
1
解决办法
1116
查看次数

为什么在CellTable中没有使用CompositeCell的正确例子?

我已经搜索了GoogleCode,GWT ShowCase,GWT Developer Notes和Google Groups,以了解如何获取/设置CompositeCell的值.没有一个明确的例子可以解释如何在CellTable中使用它.

让我们盯着一些代码......首先是抽象类......

public abstract class ToggleableGrid<T> extends CellTable<T> {

private static final String DEFAULT_TABLE_WIDTH = "100%";
private static final DisplayMode DEFAULT_MODE = DisplayMode.VIEW;

protected void setDefaults() {
    setWidth(DEFAULT_TABLE_WIDTH);
    // Set the message to display when the table is empty.
    setEmptyTableWidget(new Label(UiMessages.INSTANCE.no_results()));
    // Add a selection model so we can select cells
    final SelectionModel<T> selectionModel = new MultiSelectionModel<T>();
    setSelectionModel(selectionModel, DefaultSelectionEventManager.<T> createDefaultManager());
}

public void setInput(List<T> content) {
    setInput(content, DEFAULT_MODE);
}

public void setInput(List<T> content, DisplayMode mode) { …
Run Code Online (Sandbox Code Playgroud)

gwt composite cell gwt-celltable

5
推荐指数
1
解决办法
4293
查看次数

GXT3网格单元格渲染

如何使用GXT 3网格将网格列渲染为多线网格列.

例如

ColumnConfig<ExceptionEntry, String> name = new ColumnConfig<ExceptionEntry, String>(props.name(), 50, "Name");
name.setColumnStyle(new SafeStyles(){
        @Override
        public String asString() {
            return // what styles to use for multiline rendering;
        }
    });

name.setCell(new AbstractCell<String>() {
    @Override
        public void render(com.google.gwt.cell.client.Cell.Context context,
                String value, SafeHtmlBuilder sb) {
             ??? what needs to be done to render the column as multiline column
        }
    });
Run Code Online (Sandbox Code Playgroud)

gxt

5
推荐指数
1
解决办法
4363
查看次数

我什么时候应该使用Code Splitting ?,拆分片段加载一次吗?

没有Code Splitting选项当我PresenterWidget在Eclipse中创建时,所以我假设在调用时将下载my PresenterWidgetDialogBox(启动时HeaderPresenter)HeaderPresenter.让我们看看这段代码HeaderPresenter:

Button b = new Button("Click me", new ClickHandler() {
  public void onClick(ClickEvent event) {
    MyDialogBox myD=new MyDialogBox(); ///There a lot of Gui (button, grid, css...) on this dialogbox
    myD.show();
  }
});
Run Code Online (Sandbox Code Playgroud)

所以,我的第一个问题是:

1,webapp会MyDialogBox在用户访问页面时下载所有GUI Header吗?

2,假设用户Header第二次来到同一浏览器和SAME会话,那么webapp会下载所有的GUI MyDialogBox吗?(如果它在同一个会话中,那么我相信它不会再次下载,因为GUI在其他地方获得了Catch)

好的,现在我将根据Google http://www.gwtproject.org/doc/latest/DevGuideCodeSplitting.html的建议将此代码拆分,如下所示:

Button b = new Button("Click me", new ClickHandler() {
  public void onClick(ClickEvent event) {
    GWT.runAsync(new RunAsyncCallback() {
      public void onFailure(Throwable caught) …
Run Code Online (Sandbox Code Playgroud)

gwt gwtp

3
推荐指数
1
解决办法
176
查看次数

GWT Widget.addHandler

我正在努力利用Widget.addHandler().但是,处理程序永远不会被调用.以下是我的示例代码.我需要更改什么来解决这个问题?

我的处理程序实现:

public class CustomMouseMoveHandler
  extends GwtEvent.Type<MouseMoveHandler>
  implements MouseMoveHandler
{
  @Override
  public void onMouseMove(MouseMoveEvent event) {
    System.out.println("----> onMouseMove.");
  }
}
Run Code Online (Sandbox Code Playgroud)

我的EntryPoint.OnModuleLoad():

ContentPanel cp = new ContentPanel();
cp.setHeaderVisible(false);
cp.setHeight(com.google.gwt.user.client.Window.getClientHeight());

CustomMouseMoveHandler handler = new CustomMouseMoveHandler();
cp.addHandler(handler, handler);

RootPanel.get().add(cp);
Run Code Online (Sandbox Code Playgroud)

/////在2011年7月1日添加.

以下完整的GWT简单代码也不起作用(应用Jason的提示).请帮帮我.谢谢

 package tut.client;

 import com.google.gwt.core.client.EntryPoint;
 import com.google.gwt.event.dom.client.MouseMoveEvent;
 import com.google.gwt.event.dom.client.MouseMoveHandler;
 import com.google.gwt.user.client.ui.RootPanel;
 import com.google.gwt.user.client.ui.TextArea;

  /**
  * Entry point classes define <code>onModuleLoad()</code>.
  */
    public class GwtHandler implements EntryPoint, MouseMoveHandler {

        /**
         * This is the entry point method.
         */
        public void …
Run Code Online (Sandbox Code Playgroud)

gwt event-handling addhandler

2
推荐指数
2
解决办法
2万
查看次数