ExtGWT调整选项卡面板(TabItem)的大小并使用ChartsVizization和ChartsTable

ExtGWT调整选项卡面板(TabItem)的大小并使用ChartsVizization和ChartsTable,gwt,layout,gxt,Gwt,Layout,Gxt,通过单击或调整浏览器大小,问题出现在图形上。我把TabPanel和RowData放在一起,其中两个TabItems和Chart(googlevizalization)放在一起,下一个TabItems和Table放在一起。我在页面加载时创建它们。 然后单击从DB加载数据(按钮),我重新绘制了这两个: public void reDraw(final List<Double> slices, final String[] devices) { pcPie.

通过单击或调整浏览器大小,问题出现在图形上。我把TabPanel和RowData放在一起,其中两个TabItems和Chart(googlevizalization)放在一起,下一个TabItems和Table放在一起。我在页面加载时创建它们。 然后单击从DB加载数据(按钮),我重新绘制了这两个:

    public void reDraw(final List<Double> slices, final String[] devices)
    {
        pcPie.draw(createTable(slices,devices),createOptions("По автомобилям"));
        tPie.draw(createTable(slices, devices),CreateTableOptions());
    }
public void重画(最终列表切片,最终字符串[]设备)
{
绘制(createTable(切片、设备)、createOptions(“Паааабббббббббб;
tPie.draw(createTable(切片、设备)、CreateTableOptions());
}
这只适用于活动TabItem,在生成的HTML中用这个大小(400px;200px)替换后面的绘图空间,我发现后面部分的数据没有更改

另外,当我调整浏览器的大小时,图表和表格的大小没有改变。我试着使用一些布局,它们不起作用。可能是我不太明白如何正确使用它们。 所以

  • 如何在两种情况下正确调整图表和表格的大小 部分(活动和落后)
  • 如何调整图表和表格的大小 在浏览器上调整事件大小

  • 我们的第一个问题来自于此:当您将TabPanel组件与一些TabItems一起使用时,TabItems后面没有被准确地创建,并且您不能重新绘制它们,因为对象没有被创建。因此,我们在激活部分更改代码:

    public void run() { 
        tpLineCharts.setBorders(true);                 
            TabItem tiGraph = new TabItem("График");
                tableData = createTable();
                lcLines = new LineChart(tableData, 
                                        createOptions("По компании"));
                lcLines.addSelectHandler(createSelectHandler(lcLines)); 
            tiGraph.setLayout(new FitLayout());
            tiGraph.add(lcLines);
        tpLineCharts.add(tiGraph);  
            TabItem tiTable = new TabItem("Таблица");                      
                tLine = new Table(tableData, CreateTableOptions());                                                 
            tiTable.add(tLine);                                               
            tiTable.addListener(Events.Select, new Listener<BaseEvent>()
            {
                @Override
                public void handleEvent(BaseEvent be) {                                           
                    tLine.draw(tableData);
                }
            });
        tpLineCharts.add(tiTable);                  
    }}, CoreChart.PACKAGE, Table.PACKAGE); 
    
    public void reDrawLineChart(final ArrayList <Double> sumCompanyTraffic, 
        final ArrayList<Integer> axisName, String title)
    {          
        tableData =createTable(sumCompanyTraffic, axisName); 
        tLine.draw(tableData, CreateTableOptions());
        lcLines.draw(tableData, createOptions(title));
    }
    
    private Options createOptions(String title) 
    {
        Options options = Options.create();
        options.setTitleX("Период");                
        options.setTitle(title);     
        if(tpLineCharts.isRendered())
            options.setSize(tpLineCharts.getWidth(true), 
                    tpLineCharts.getHeight(true));
    
        return options;
    }