The Java Developers Almanac 1.4


Order this book from Amazon.

   
Home > List of Packages > javax.swing.table  [62 examples] > Scrolling  [4 examples]

e947. Making a Cell Visible in a JTable Component

    // Ensure that the cell (1,2) is visible
    int rowIndex = 1;
    int vColIndex = 2;
    scrollToVisible(table, rowIndex, vColIndex);
    
    // Assumes table is contained in a JScrollPane. Scrolls the
    // cell (rowIndex, vColIndex) so that it is visible within the viewport.
    public void scrollToVisible(JTable table, int rowIndex, int vColIndex) {
        if (!(table.getParent() instanceof JViewport)) {
            return;
        }
        JViewport viewport = (JViewport)table.getParent();
    
        // This rectangle is relative to the table where the
        // northwest corner of cell (0,0) is always (0,0).
        Rectangle rect = table.getCellRect(rowIndex, vColIndex, true);
    
        // The location of the viewport relative to the table
        Point pt = viewport.getViewPosition();
    
        // Translate the cell location so that it is relative
        // to the view, assuming the northwest corner of the
        // view is (0,0)
        rect.setLocation(rect.x-pt.x, rect.y-pt.y);
    
        // Scroll the area into view
        viewport.scrollRectToVisible(rect);

 Related Examples
e945. Creating a Scrollable JTable Component
e946. Determining If a Cell Is Visible in a JTable Component
e948. Scrolling a Cell to the Center of a JTable Component

See also: Cells    Column Heads    Columns    Editing    Events    Layout    Rows    Selection    Sorting    Table Model    Tool Tips   


© 2002 Addison-Wesley.