【发布时间】:2020-11-20 08:26:29
【问题描述】:
我正在使用 WindowBuilder 创建一个 GUI 应用程序。因此,我放置了一个 JTable,单击鼠标右键,然后单击环绕 JScrollPane。然后我拖动 JScrollPane 进入 JTabbedPane 以便我可以在选项卡中使用它。但是,JTable 被锁定在顶部,角落的调整大小锚点不起作用,并且 JTable 没有高度。 JScrollPane 大小正确,但 JTable 卡在顶部,高度为 0。当 JScrollPane 位于 JTabbedPane 之外时,也会出现此问题。
代码的相关部分:
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 850, 650);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JTabbedPane tabbedPane = new JTabbedPane(JTabbedPane.LEFT);
tabbedPane.setBounds(10, 11, 814, 578);
contentPane.add(tabbedPane);
JScrollPane scrollPane = new JScrollPane();
tabbedPane.addTab("New tab", null, scrollPane, null);
table = new JTable();
scrollPane.setViewportView(table);
setVisible(true);
【问题讨论】:
-
填写表格的代码似乎也很相关,因为该代码本身可能无法重现您所看到的内容。请发布正确的minimal reproducible example(即剥离可运行代码)。
-
contentPane.setLayout(null);和JScrollPane不能很好地结合在一起。避免使用null-layout,它是您的应用程序的harmful。您将遇到此类问题,或this one 和this one。为了获得更好的帮助,请尽快发布正确的 minimal reproducible example 来证明您的问题
标签: java swing jtable jscrollpane