我必须存储变量:itemName,origPrice,salesPrice和department,然后显示JTextBox或JTable中的所有记录。无论显示什么,都必须能够将值添加到具有getContentPane();
我不知道如何存储变量。安装JDK时java是否附带数据库?
此外,变量存储在一个动作侦听器中,显示值按钮具有不同的动作侦听器。
//Calculate action listener
buttonCalc.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent evt) {
itemName = fieldItem.getText();
originalPrice = Double.parseDouble(fieldOrigPrice.getText());
discount = Double.parseDouble(fieldDiscount.getText());
salesPrice = originalPrice - (originalPrice * discount);
//store these values
// sales price label
JLabel label = new JLabel();
...
container.add( label );
}
});
//Display values action listener
buttonDisplay.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent evt) {
/*Must use a JTextArea or JTable to display all the stored values for:
*
* Item name
Department
Original price
Sale price
*/
}
});
编辑:用户输入项目名称,部门,原始价格和百分比折扣。我必须在用户在JFrame打开时输入的JTextArea或JTable中显示每个itemName,department,originalPrice和salesPrice。
答案 0 :(得分:4)
您不需要数据库或任何此类实体,因为您不必担心程序关闭后数据持久存在。你需要的是一个TableModel来保存你的数据,比如一个DefaultTableModel对象,如果它很简单,或者一个扩展AbstractTableModel的类,如果你想要更多的灵活性。输入新数据时,向TableModel添加一个新行,并且(如果不是DefaultTableModel)调用其中一个fire数据更改方法。
有关详细信息,请查看How to use Tables。