我想将JTable放在JFrame的中心,为此我使用了setbounds方法,但是它什么也没做,也不想使用布局管理器,我只想知道为什么它什么也不做?
这是我的代码:

   tabel=new JTable(data,columnNames);
   tabel.setLayout(null);
   tabel.setPreferredScrollableViewportSize(new Dimension(500,50));
   tabel.setFillsViewportHeight(true);
   JScrollPane pane=new JScrollPane(tabel);
   pane.setBounds(100,700,200,200);
  add(pane);

最佳答案

最好使用布局管理器,但是如果您坚持要通过将layout设置为null来移动JFrame中的JTable,则应该尝试以下选项:
(1)在JFrame中创建一个JPanel并将该表添加到JPanel中

 JPanel panel=new JPanel();
   panel.setBounds(20,300,700,300);
   add(panel);
   tabel=new JTable(data,columnNames);
   tabel.setBounds(100,20,700,400);
   tabel.setPreferredScrollableViewportSize(new Dimension(500,50));
   tabel.setFillsViewportHeight(true);
   JScrollPane pane=new JScrollPane(tabel);
   panel.add(pane);

08-28 19:01