我正在尝试设置GUI来显示类的数组,但无法弄清楚如何将数组添加到GUI。我对Java很新,所以我可以尽可能地使用所有帮助。
Book[] bk = new Book{10]
JFrame frame = new JFrame("Bookstore");
frame.setSize(600, 600);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLocationRelativeTo(null);
JPanel panel = new JPanel();
frame.getContentPane().add(panel, BorderLayout.NORTH);
frame.getContentPane().add(panel);
frame.setVisible(true);
class Book implements Comparable<Book> {
//rest of code }
如何在GUI中显示Book?
答案 0 :(得分:1)
当您需要显示某个类的集合或对象数组的属性时,您可以使用多种选项,包括:
详细信息取决于您前往的路线。
答案 1 :(得分:1)
您的问题有点不清楚,但如果您想在GUI中显示图书的名称,首先您需要为每个Book
提供一个名称,即字符串表示。使用name
方法向Book
添加getName()
属性。
然后创建一个包含书名的String
数组。你可以通过以下方式做到:
String names = new String[books.length];
for(int i=0; i<names.length; i++){
names[i] = books[i].getName();
}
如果您希望用户能够选择一本书,您可以将所有名称输入JTextArea
,或者可能输入JComboBox
。
使用JComboBox
:
JComboBox combo = new JComboBox(names);
panel.add(combo);
使用JTextArea
:
JTextArea textArea = new JTextArea(10,names.length);
textArea.setEditable(false);
for(int i=0; i<names.size; i++){
textArea.append("Book " + i + "#: " + names[i] + "\n");
}
panel.add(textArea);
希望这有帮助。