我正在尝试向我的JTable
添加数据。我有以下代码,它不会引发任何错误,但是当我运行预览模式并单击按钮时,什么都没发生。
Object[][] data = null;
String[] columnNames = new String[2];
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
columnNames = new String[] {"Title", "Author"};
data = new Object[1][2];
data[0][0] = JOptionPane.showInputDialog("Enter a book title");
data[0][1] = JOptionPane.showInputDialog("Enter author name");
jTable1.setModel(new DefaultTableModel(data, columnNames));
}
答案 0 :(得分:2)
[...]但是当我运行预览模式并单击按钮时没有 一切都好了。
基于引用行和您的code我怀疑您正在运行NetBeans GUI Designer预览模式:
如果是这样,则不会发生任何事情,因为此选项旨在显示设计的GUI但不与其交互。因此,您可以整天按下该按钮而不会产生任何结果。相反,您需要在面板中显示JFrame或JDialog,如下所示:
public class Test {
private void createAndShowGUI() {
JPanel bookStoreSystem = new BookStoreSystem();
JFrame frame = new JFrame("Test");
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
frame.getContentPane().add(bookStoreSystem);
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
new Test().createAndShowGUI();
}
});
}
}
书店系统无法找到
根据您的文件树:
由于缺少对此类的导入,因此无法找到BookStoreSystem
类。首先在默认包中创建类不是一个好习惯,所以你应该重命名这个包(比如说gui
):右键单击包 - >重构 - >改名。第二步是在BookStore
类中添加正确的导入:
import gui.BookStoreSystem;
这应该可以解决你的问题。