标签: uibinder

GWT TabLayoutPanel始终处于折叠状态

我有一个简单的TabLayoutPanel用UIBinder制作.选项卡呈现但没有内容.它在HTML中,但它总是折叠(元素上设置的内联样式使其崩溃).据我所知,这与我见过的每个TabLayoutPanel示例相同.其他小部件渲染得很好.该项目只是默认HTML和代码被剥离的基本示例.

XML是:

<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
 xmlns:g="urn:import:com.google.gwt.user.client.ui">
 <g:TabLayoutPanel barHeight='22' barUnit='PX'>
  <g:tab>
   <g:header>Tab A</g:header>
   <g:HTML>
   asdf
   <p>asdfasdf</p>
   </g:HTML>
  </g:tab>
  <g:tab>
   <g:header>Tab B</g:header>
   <g:Label>blah</g:Label>
  </g:tab>
  <g:tab>
   <g:header>Tab C</g:header>
   <g:Label>blah</g:Label>
  </g:tab>
 </g:TabLayoutPanel>
</ui:UiBinder>
Run Code Online (Sandbox Code Playgroud)

而Java是:

public class Main extends Composite {

 private static MainUiBinder uiBinder = GWT.create(MainUiBinder.class);

 interface MainUiBinder extends UiBinder<Widget, Main> {
 }

 public Main() {
  initWidget(uiBinder.createAndBindUi(this));
 }
}
Run Code Online (Sandbox Code Playgroud)

我将它添加到我的应用程序中,如下所示:

public void onModuleLoad() {
  RootPanel.get().add(new Main());
 }
Run Code Online (Sandbox Code Playgroud)

我惊呆了.这应该很简单.我一定是想念一些愚蠢的事.有任何想法吗?

gwt uibinder gwt-tablayoutpanel

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

GWT TabLayoutPanel不呈现图形内容

我有一个类似于以下的结构

<g:TabLayoutPanel ui:field="rightTabPanel" 
             width="100%" height="100%" 
                     barUnit="EM" barHeight="3"> 
    <g:tab> 
          <g:header>Graph</g:header> 
                    <g:FlowPanel ui:field="graphContent"/> 
     </g:tab> 
      <g:tab> 
           <g:header>Data</g:header> 
                      <g:FlowPanel ui:field="dataContent"/> 
     </g:tab> 
 </g:TabLayoutPanel> 
Run Code Online (Sandbox Code Playgroud)

我有两个选项卡,其中显示图表,另一个显示数据.但是,选项卡内的内容不可见.如果我放

<g:FlowPanel ui:field="graphContent"/>
Run Code Online (Sandbox Code Playgroud)

在TabLayoutPanel之外我可以看到图形,但是如果我如上所示放置图形是不可见的.任何线索都会有所帮助.提前致谢.

gwt uibinder gwt-tablayoutpanel

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

ui:有,风格没有出现

我想使用多个小部件共享一个CSS.

我可以看到css类名称被混淆,但是当我在firefox/chrome中检查元素时,类定义没有显示出来.这是我的代码.任何人都可以建议我错过了什么?谢谢.

style.css文件

.nameSpan {  color: #3E6D8E; background-color: #E0EAF1;} 
Run Code Online (Sandbox Code Playgroud)

Resources.java

public interface Resources extends ClientBundle { 
  @Source("Style.css") 
  Style style(); 
  public interface Style extends CssResource { 
    String nameSpan(); 
  } 
} 
Run Code Online (Sandbox Code Playgroud)

uibinder.ui.xml

<ui:UiBinder xmlns:ui='urn:ui:com.google.gwt.uibinder' 
    xmlns:g='urn:import:com.google.gwt.user.client.ui'> 
  <ui:with field='res' type='com.my.app.widgets.logoname.Resources'/> 
  <g:HTMLPanel> 
      <div> 
        Well hello there 
        <g:InlineLabel ui:field='nameSpan' styleName="res.style.nameSpan">kevin</g:InlineLabel>
      </div> 
  </g:HTMLPanel> 
</ui:UiBinder> 
Run Code Online (Sandbox Code Playgroud)

uibinder.class

public class uibinder extends Composite { 
        private static uibinderUiBinder uiBinder =     GWT.create(uibinderUiBinder.class); 
        interface uibinderUiBinder extends UiBinder<Widget, uibinder> {} 
        @UiField(provided = true)  final Resources res;  // the style doesn't show no matter provided=true …
Run Code Online (Sandbox Code Playgroud)

gwt uibinder

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

gwt uibinder设置唯一ID

我尝试为uibinder widget设置唯一的id.但是失败.my构造函数如下所示

public CustomUIWidget() {



    initWidget(uiBinder.createAndBindUi(this));

     this.getWidget().getElement().setId(DOM.createUniqueId());

         System.out.println(this.getWidget().getElement().getId());  //put debug line here, value is empty
}
Run Code Online (Sandbox Code Playgroud)

java gwt uibinder

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

使用GWT,有没有办法不加载在uibinder xml文件中声明的小部件?

我与GWT的一个常见设计是创建一个包含两个孩子的小部件:A和B.

我在与我的主要小部件相关联的uibinder文件中声明了这两个小部件A和B.

我想要做的是根据if语句加载或不加载小部件A.

理想的方法是为widget A设置provided = true,并在我不想加载这个widget时将widget A设置为null.但是GWT会引发错误.

有没有办法在uibinder中声明小部件然后不加载它们?

谢谢

编辑:经过大量讨论后,理想的方法是在optional = true时声明字段"provided = true"和"optional = true",如果字段为null,则createAndBindUI不能抛出异常.这是一种干净的方法.

如果您认为此功能必须存在于GWT中,请为此问题加注星标:http: //code.google.com/p/google-web-toolkit/issues/detail?id = 5699

编辑2:使用托马斯描述的LazyPanel似乎是一种更好的方法来处理这个问题.

gwt uibinder gwt2

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

GWT Popup和UIBinder:面板还是DialogBox?

我有一个要求,当点击一个按钮时,应该提示用户弹出/对话框输入一些额外的细节,如姓氏,DOB等.我试图玩,window.confirm()但我认为这不适合我目的.有人可以帮助我如何通过UIBinder在GWT中实现这一目标吗?

我在UI binder.xml中试过这样的东西

<g:HTMLPanel visible="false" >
                                    <g:DialogBox ui:field="dialogPanel"
                                        animationEnabled="true" modal="false" glassEnabled="false">
                                        <g:caption>More Details</g:caption>
                                        <table>
                                            <tr>
                                                <td colspan="2" align="center">
                                                    <g:Datepicker ui:field="DOB">DOB:</g:Datepicker>
                                                </td>
                                            </tr>

                                            <tr>
                                                <td>UserName:</td>
                                                <td>
                                                    <g:TextBox ui:field="usernameTextBox" />
                                                </td>
                                            </tr>
                                            <tr>
                                                <td></td>
                                                <td align="right">
                                                    <g:Button ui:field="loginButton">OK</g:Button>
                                                </td>
                                            </tr>
                                        </table>
                                    </g:DialogBox>
                                </g:HTMLPanel>
Run Code Online (Sandbox Code Playgroud)

我不确定要使用哪一个:弹出窗口或对话框!

谢谢.

gwt uibinder

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

Link-widget GWT - uiBinder

我想用uiBinder在GWT中使用像(a href ="..."/>)这样的链接或按钮.

我发现小部件"超链接"但我不知道我是如何使用它的.

gwt hyperlink uibinder

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

使用UiBinder生成单元格

GWT提供以下作为构建单元格的示例CellList:

  /**
   * A simple data type that represents a contact.
   */
  private static class Contact {
    private static int nextId = 0;

    private final int id;
    private String name;

    public Contact(String name) {
      nextId++;
      this.id = nextId;
      this.name = name;
    }
  }

  /**
   * A custom {@link Cell} used to render a {@link Contact}.
   */
  private static class ContactCell extends AbstractCell<Contact> {
    @Override
    public void render(Context context, Contact value, SafeHtmlBuilder sb) {
      if (value != null) { …
Run Code Online (Sandbox Code Playgroud)

gwt uibinder

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

在GWT UiBinder中设置"filter"css值时发出警告

我有以下警告:

00:48:06.843 [WARN] [XXXX] Line 71 column 11: encountered ":". 
Was expecting one of: "}" "+" "-" "," ";" "/" <STRING> <IDENT> <NUMBER> <URL> <PERCENTAGE> <PT> <MM> <CM> <PC> <IN> <PX> <EMS> <EXS> <DEG> <RAD> <GRAD> <MS> <SECOND> <HZ> <KHZ> <DIMEN> <HASH> <IMPORTANT_SYM> <UNICODERANGE> <FUNCTION> 
Run Code Online (Sandbox Code Playgroud)

在第一行71我有以下行

<ui:style>
...
    .menuPopup {
        position:absolute; 
        top: 5px; 
        right: -80px;
        width:100px; 
        background-color: #F2F2F2; 
        -moz-box-shadow: -1px 2px 5px 1px rgba(0, 0, 0, 0.5); 
        -webkit-box-shadow: -1px 2px 5px 1px rgba(0, 0, 0, 0.5); 
        box-shadow:-1px 2px …
Run Code Online (Sandbox Code Playgroud)

css gwt uibinder

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

GWT:如何在UiBinder模板中使用常量

我有一个与UiBinder有关的问题.

我有以下UiBinder文件:

<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
             xmlns:g="urn:import:com.google.gwt.user.client.ui">
    <g:HTMLPanel>
        <div>
            <g:VerticalPanel>
                <g:Label>Please enter your password:</g:Label>
                <g:FlowPanel>
                    <g:PasswordTextBox ui:field="textbox"/>
                    <g:Button ui:field="button" text="Login" styleName="?????"/>
                </g:FlowPanel>
            </g:VerticalPanel>
        </div>
    </g:HTMLPanel>
</ui:UiBinder>
Run Code Online (Sandbox Code Playgroud)

如果我把样式名称放在???中,它可以正常工作.

但是,我们有一个常量文件(不是i18n常量),它包含所有css名称作为常量.喜欢:

public class CSSConstants {
    public static final String CSS_TITLE = "title";

    public static final String CSS_TEXT_NORMAL = "text_normal";
    public static final String CSS_TEXT_ERROR = "text_error";
    public static final String CSS_TEXT_ERROR = "button blue";
    .......
}
Run Code Online (Sandbox Code Playgroud)

我想知道如何在UiBinder模板中引用这个常量文件?

非常感谢

java gwt uibinder

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

标签 统计

gwt ×10

uibinder ×10

gwt-tablayoutpanel ×2

java ×2

css ×1

gwt2 ×1

hyperlink ×1