将两个String添加到jtable,同时将sum添加到jTextField中

时间:2014-02-27 19:29:34

标签: java string netbeans jtable sum

我正在尝试使用NetBeans构建GUI,我已经将MainFrame放入我的程序的第一个JFrame中,即JTextField(jTextFieldT)和JTable(jTable2),现在位于名为AdderFrame I的第二帧中当我点击按钮将价格添加到表中的一行时,已经放置了JTextField(jTextField2)和一个按钮。现在我正在尝试将价格放入jTextFieldT,每次我使用AdderFrame更新表格时,我希望将我的价格添加到已经放入jTextFieldT的价格中。

现在我的主要问题是我不能使用int添加到jtable,但似乎我找不到任何方法将2个字符串添加到表中的jtextFieldT并在那里总和。

这是我在AdderFrame按钮上使用的代码:

String Brand;
String Item;
String Price;
String Date;
String Dept;
String Total;

Brand = jComboBox1.getSelectedItem().toString();
Item  =jTextField1.getText().toString();  
Date  =jTextField4.getText().toString();
Dept  =jCheckBox1.getText().toString();
Price=jTextField2.getText().toString();
Total=MainFrame.jTextFieldT.getText().toString();

MainFrame.jTextFieldT.setText(+(Total+Price));

DefaultTableModel model = (DefaultTableModel)MainFrame.jTable2.getModel();
if(jCheckBox1.isSelected()){
   model.addRow(new Object[]{Brand,Item,Price,Date,true});
}  else {
   model.addRow(new Object[]{Brand,Item,Price,Date});
}

1 个答案:

答案 0 :(得分:1)

  1. 无需为从文本组件获取的文本调用toString()。它自动成为一个字符串。
  2. 如果需要将String转换为int,请使用Integer.parseInt(stringToConvert)
  3. 您通常应该在try / catch块中执行此操作,以捕获在尝试解析不是有效int表示形式的String时可能发生的任何NumberFormatExceptions。
  4. 一旦转换了字符串,添加它们是微不足道的。
  5. 您还可以通过将它们转换为Integer包装器对象,将您的int添加到行Object数组中。
  6. 您似乎试图直接访问另一个对象的字段,建议这些字段是公共的。将它们设为私有,不要直接访问它们。
  7. 了解并遵循Java命名约定。方法和变量名称应以小写字母和带有大写字母的类名开头。
  8. 你真的不希望你的程序同时显示多个JFrame,甚至不能依次显示,相信我。通常最好将对话框显示为对话框窗口,例如模态JDialog,或通过CardLayout交换视图。