【问题标题】:Add Disclosure panel in flex table在弹性表中添加披露面板
【发布时间】:2014-02-26 07:35:13
【问题描述】:

我创建了新的弹性表并在弹性表中添加了披露面板。 但它只显示披露面板。

FlexTable flexTable = new FlexTable(); 
flexTable.setCellSpacing(5); 
flexTable.setWidget(0, 0, w1); 

flexTable.setWidget(0, 1, w2);

DisclosurePanel panel = new DisclosurePanel();
panel.setHeader(new Button("TEST"));
panel.setContent(new HTML("TEST"));

flexTable.setWidget(0, 2, panel); 

这段代码有什么问题吗?

【问题讨论】:

    标签: java gwt flextable


    【解决方案1】:

    查看您的退货声明。您正在返回panel。如果您将其附加到任何其他面板,我认为您应该返回 flexTable

    【讨论】:

    • 不,我只是写了一个示例,我的弹性表和披露面板属于不同的类。
    【解决方案2】:

    效果很好:

    package com.example.client;
    
    import com.google.gwt.core.client.EntryPoint;
    import com.google.gwt.user.client.ui.Button;
    import com.google.gwt.user.client.ui.DisclosurePanel;
    import com.google.gwt.user.client.ui.FlexTable;
    import com.google.gwt.user.client.ui.HTML;
    import com.google.gwt.user.client.ui.RootPanel;
    
    public class SO1 implements EntryPoint
    {
        public void onModuleLoad()
        {   
    
            FlexTable flexTable = new FlexTable(); 
            flexTable.setCellSpacing(5); 
            flexTable.setWidget(0, 0, new Button("ok")); 
    
            flexTable.setWidget(0, 1, new Button("ok2"));
    
            DisclosurePanel panel = new DisclosurePanel();
            panel.setHeader(new Button("TEST"));
            panel.setContent(new HTML("TEST"));
    
            flexTable.setWidget(0, 2, panel); 
    
            RootPanel.get().add(flexTable);
        }
    }
    

    【讨论】:

    • 是的。但是如果你这样设置,w1.setHeight("250px"); w2.setHeight("300px"); w3.setHeight("400px");披露面板.setContent(w3);表示披露面板设计未正确对齐。我想在 w1 和 w2 中构建更多组件。你能试试这个吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多