好的,所以我一直在努力解决这个问题,但我完全陷入困境,我确信这很简单。
所以我有一组JTextField,我想在JTable上打印。我该怎么办呢? 这是我的JTable代码的一部分:
static String[] vdLabel = {"Date", "Trans. Type", "Check No.", "Trans Description", "Payment/Debit(-)", "Deposit/Credit(+)", "Balance"};
static DefaultTableModel viewTable = new DefaultTableModel(vdLabel,0);
static JTable viewLabel = new JTable(viewTable);
我想将这些变量放在“日期”“Trans Type”等
下static JTextField dateTrans = new JTextField();
static JTextField typeOfTrans = new JTextField();
static JTextField checkNo = new JTextField();
如果你不明白我想要做什么,这里可能会有所帮助。
http://www.javalobby.org/articles/jtable/images/img2.png
在那张照片中有“Title”“Artist”和“Album”,这是我的字符串变量'vdLabel'
如何将日期等字符串添加到vdLabel,然后将其添加到JTable?
答案 0 :(得分:2)
如果您想让某些表格单元格可编辑,那么您就不会这样做了。您不必使用DefaultTableModel
,而是使用自己的AbstractTableModel
子类,并适当地覆盖isCellEditable
。您还可以适当地覆盖getValueAt
,并返回java.util.Date
个日期。 Swing将根据值使用适当的渲染器和编辑器。
在执行任何其他操作之前,请先查看Java Tutorial on How to Use Tables。无论如何,请确保您有型号。然后,如果要动态地向表中添加行,则需要在每行的末尾添加一个按钮。选择它应该触发一个动作,使控制器向模型添加记录。然后控制器应发送TableModelChanged
事件。 JTable
应该已经在控制器中注册,因此它获取事件并重新绘制。
答案 1 :(得分:2)
例如,按钮会打开一个窗口以输入信息。用户输入此信息,如“名称”等。我希望能够获取该名称变量并将其放在不同卡片窗口的JTable中
当用户点击此modal JDialog
上的“保存”按钮时,您只需从文本字段中获取数据,然后使用DefaultTableModel
方法向addRow(....)
添加一行。