カートにアイテムを追加できる Store クラスがあり、カートのアイテム番号と合計金額が増加します。
カートの表示ボタンのようなものもあります。クリックすると、カートのアイテムが表示される別のフレームが表示されます。このカート フレームから [削除] ボタンをクリックすると、前のフレームからカウントと合計金額を減らす予定ですが、合計価格がある jLabel で使用した setText メソッドが機能しません。
カート フレームからこのメソッドを呼び出し、削除ボタンをクリックするたびに削除する価格を渡します
public void updateTotalAmount(double deduct){
System.out.println("updateTotalAmount - "+deduct);
tAPriceL.setText(String.valueOf(deduct)); //Total amount price label
cICountL.setText(String.valueOf(--cICount)); //cart item count label
}
system.out 行は機能する唯一のステートメントであり、残りは機能しません。
このようにコードを交換しようとすると。
public void updateTotalAmount(double deduct){
tAPriceL.setText(String.valueOf(deduct)); //Total amount price label
cICountL.setText(String.valueOf(--cICount)); //cart item count label
System.out.println("updateTotalAmount - "+deduct);
}
system.out が機能しなくなったので、setText 部分に問題があると思います。
どこに問題があるのか わかりません。誰でもこれで私を助けることができますか?
ここにこれの要約があります..メインストアクラスの場合..例私は5000価値のアイテムを持っています
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class NewClass extends JFrame implements ActionListener {
JLabel tAPrice = new JLabel("5000");
JButton viewcart = new JButton("view cart");
public NewClass() {
this.setLayout(new FlowLayout());
add(tAPrice);
add(viewcart);
viewcart.addActionListener(this);
}
public static void main(String[] args) {
NewClass n = new NewClass();
n.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
n.setSize(1150, 730);
n.setVisible(true);
}
public void update(double deduct) {
System.out.println("updated");
tAPrice.setText(String.valueOf(Double.parseDouble(tAPrice.getText())
- deduct));
}
@Override
public void actionPerformed(ActionEvent e) {
if (e.getSource() == viewcart) {
Cart2 c = new Cart2();
c.setVisible(true);
c.setSize(250, 230);
}
}
}
そしてカートクラスの場合...たとえば、合計金額から1000を削除したい
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
public class Cart2 extends JFrame implements ActionListener {
JButton remove = new JButton("remove");
public Cart2() {
add(remove);
remove.addActionListener(this);
}
public static void main(String[] args) {
Cart2 r = new Cart2();
r.setVisible(true);
r.setSize(250, 230);
r.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
@Override
public void actionPerformed(ActionEvent e) {
if (e.getSource() == remove) {
NewClass nc = new NewClass();
nc.update(1000);
}
}
}