【发布时间】:2019-01-03 19:07:47
【问题描述】:
我在网上花了几个小时,恐怕我不太清楚如何让我的 JTable 显示在 JFrame 上的 JButton 旁边,如果有人有简单或全面的方法来解释为什么以及如何解决问题我真的很感激。
广泛的在线研究,包括下载样本和应用各种建议;也向我的老师寻求帮助,但她对 java 没有太多经验。
public class canvas extends JTable{
static void displayJFrame(){
//set variables
int i = 0;
String[][] strArray = new String[3][i];
String[] labelArray = new String[3];
labelArray[0] = "Name: ";
labelArray[1] = "Subject: ";
labelArray[2] = "Average: ";
//create JFrame
JFrame f = new JFrame("Test Average");
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.getContentPane().setBackground(Color.WHITE);
f.setPreferredSize(new Dimension(600, 600));
f.pack();
f.setLocationRelativeTo(null);
f.setVisible(true);
//create JButton
JButton button=new JButton("Enter New Grade");
button.setBounds(450,15,140, 40);
button.addActionListener(e -> average(strArray, i));//gets info from user and adds to strArray
button.addActionListener(e -> count(i));//increases counter
f.add(button);
//create JTable
JTable j = new JTable(strArray, labelArray);
JScrollPane scrollPane = new JScrollPane(j);
j.setBounds(30, 40, 200, 300);
j.setSize(500, 200);
j.setVisible(true);
}
}
我的所有代码都按预期运行,除了没有桌子,我也尝试了很多不起作用的东西,所以这基本上是我开始的地方,这样它就不会被大量不正确的东西所拥挤
【问题讨论】:
-
广泛的在线研究 - 我建议您从阅读 JTable API 开始。在 API 中,您将在
How to Use Tables上找到指向 Swing 教程的链接。阅读教程并下载演示代码。演示代码还将向您展示如何更好地构建代码以及如何使用布局管理器。所以首先让代码只使用一个表。一旦成功,您就可以在框架中添加一个按钮。此外,您永远不会为这样的事情扩展 JTable。您的班级名称应以大写字符开头。同样,教程示例将向您展示如何完成所有这些操作。 -
all of my code runs as expected except there is no table,- 你在哪里将滚动窗格添加到框架中?