大家新年快乐!:)
我有一个JTable
内部JScrollPane
(fillsViewportHeight
是true
),并希望在拖动开始在表外时从结尾启用行选择(如图中所示)
SSCCE:
public class SimpleTableDemo extends JPanel { public SimpleTableDemo() { super(new BorderLayout(0, 0)); String[] columnNames = { "First Name", "Last Name", "Sport", "# of Years", "Vegetarian" }; Object[][] data = { { "Kathy", "Smith", "Snowboarding", new Integer(5), new Boolean(false) }, { "John", "Doe", "Rowing", new Integer(3), new Boolean(true) }, { "Sue", "Black", "Knitting", new Integer(2), new Boolean(false) }, { "Jane", "White", "Speed reading", new Integer(20), new Boolean(true) }, { "Joe", "Brown", "Pool", new Integer(10), new Boolean(false) } }; final JTable table = new JTable(data, columnNames); table.setPreferredScrollableViewportSize(new Dimension(500, 70)); table.setFillsViewportHeight(true); JScrollPane scrollPane = new JScrollPane(table); add(scrollPane, BorderLayout.CENTER); } private static void createAndShowGUI() { JFrame frame = new JFrame("SimpleTableDemo"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(700, 400); SimpleTableDemo newContentPane = new SimpleTableDemo(); newContentPane.setOpaque(true); frame.setContentPane(newContentPane); frame.setVisible(true); } public static void main(String[] args) { javax.swing.SwingUtilities.invokeLater(new Runnable() { public void run() { createAndShowGUI(); } }); } }
我怎样才能做到这一点?
UPD:
该默认行为的JTable
是选择从开始所有行目前的一个,如果我开始选择下的最后一排.我想在我拖动鼠标的时候只选择鼠标下的那些行(正如我在图片中所示).