在Netbeans中,我创建了一个表,并向其中添加了“ film”和“ director”列。这可以正常工作,但是我不能正确地看到表的最后一行的一小部分,尽管提醒我所有行都已添加。我仍然看不到它们。
代码和屏幕截图如下。
码
private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {
DefaultTableModel MovieTable = (DefaultTableModel) MovieTable.getModel();
MovieTable.getDataVector().removeAllElements();
Column1 ="Film1";
Column2 ="Director";
MovieTable.addRow(new Object[]{Column1, Column2}); }
屏幕截图
如果有帮助,此表将放在面板顶部。
最佳答案
不确定您在做什么错,因为您没有提供相关代码。但是,即使您这样做了,由于GUI Builder生成的所有凌乱代码,它甚至可能对您有所帮助(我想这就是您所使用的)。因此,请参见下文。
简单的分步教程,不会重复您的问题。希望你能从中得到一些好处。
创建您的JFrame
表单
将JPanel
拖放到框架。扩大框架的尺寸。
将JTable
拖放到面板上。无需JScrollPane
,因为GUI构建器将自动将表包装在滚动窗格中。
突出显示/选择设计视图中的表,然后转到设计视图右侧的“属性”窗口。
单击模型属性右侧的...。
在对话框中创建模型,即设置行数和列数,并命名列标题。完成后单击确定。
拖放“电影”和“导演”列的两个JTextFeild
拖放JButton
。通过右键单击为按钮创建actionPerformed
并选择Event -> action -> actionPerformed
在自动生成的actionPerformed
中执行此操作。
private void jButton1ActionPerformed(ActionEvent evt) {
DefaultTableModel model = (DefaultTableModel)jTable1.getModel();
model.getDataVector().removeAllElements();
String column1 = jTextField1.getText();
String column2 = jTextField2.getText();
model.addRow(new Object[] {column1, column2});
}
如果您只想添加行而不删除所有其他行,请摆脱
model.getDataVector().removeAllElements();
运行程序,在文本字段中添加一些文本,然后按按钮。遵循上述所有这些步骤,一切都应该正常工作。每次都为我工作。