2015-03-25 98 views
0

我有一个FlexTable,其中包含一个包含DataGrid的ScrollPane。 ScrollPane设置为100%宽度,450px高度。 DataGrid设置为200%宽度和450px高度。DataGrid垂直滚动条仅当DataGrid滚动到最右边时才可见

水平滚动条允许我按预期水平滚动表格。但是,如果我一直滚动到右侧,则可以让我滚动浏览不同行的垂直滚动条可见。有没有办法改变这种行为,以便垂直滚动条总是在右侧可见,例如在C#的DataGrid中?

我正在查看DataGrid的API并没有看到任何有用的东西。我总是将ShowScrolLBars设置为true。

回答

0

我的问题是我不应该把一个DataGrid放在一个ScrollPane里面,因为GWT的DataGrid内置了滚动功能。为了获得所需的滚动行为,我设置了数据网格的大小,然后设置了表的大小这比整个数据网格小部件大)。

// full width, 55% height 
    int dataGridPixelHeight = (int) (Window.getClientHeight() * 0.55);  
    m_resultsDataGrid.setSize("100%", dataGridPixelHeight + "px"); 

    // sets the actual inner grid to be wide, allowing horizontal scroll 
    m_resultsDataGrid.setTableWidth(200, Unit.PCT);