2016-04-11 9 views
0

私は現在ATMプロジェクトのクラスを持っています。私のactionPerformedでは、私は4つのボタン(20、50、100など)を持っています。お金を入金することを守ります。私は貯蓄とchequing depositは異なるが、同じjavaファイルに入れたい。私の属性でactionPerformedのif(boolean == true)の使用

私が持っているユーザーはchequing(ブール値trueまたは保存(偽ブール値)のために行くされている場合を決定する

private triggerChecker checker; 

コードは以下の私のactionPerformedメソッドを示すことになる

public void actionPerformed(ActionEvent e) 
{ 
    //Loop through the keypad array to see if any of the buttons were pressed 
    for (int i = 0; i < 10; i++) 
    { 
     if (e.getSource() == keypad[i]) 
     { 
     //Edit the input display 
     cardID = cardID + i; 
     display.setText("\n\n\tPlease enter amount of money:" + "\n\t" +cardID); 
     } 
    } 

    if(e.getSource() == keypad[11]){ 
     cardID = ""; 
     display.setText("\n\n\tPlease enter amount of money:" + "\n\t" +cardID); 
    } 

    if(checker.getCheck() == true){ 
    if (e.getSource() == twenty) 
    { 
     display.setText(feature.DepositTOC(20.0)); 
     display.setFont(new Font("Arial", Font.BOLD,18)); 
     display.setVisible(true); 

    } 

    if (e.getSource() == fifty) 
    { 
     display.setText(feature.DepositTOC(50.0)); 
     display.setFont(new Font("Arial", Font.BOLD,18)); 
     display.setVisible(true); 

    } 

    if (e.getSource() == hundred) 
    { 
     display.setText(account.toString()); 
     display.setFont(new Font("Arial", Font.BOLD,20)); 
     display.setVisible(true); 
    } 

    if (e.getSource() == other) 
    { 
     cardID = ""; 
     display.setText("\n\n\tPlease enter amount of money:" + "\n\t" +cardID); 
    } 
    if(e.getSource() == keypad[12]){ 
     double num = Double.parseDouble(cardID); 
     display.setText(feature.DepositTOC(num)); 
     display.setFont(new Font("Arial", Font.BOLD,18)); 
     display.setVisible(true); 

    } 
    } 
    if(checker.getCheck() == false){ 
     if (e.getSource() == twenty) 
     { 
      display.setText(feature.DepositTOS(20.0)); 
      display.setFont(new Font("Arial", Font.BOLD,18)); 
      display.setVisible(true); 

     } 

     if (e.getSource() == fifty) 
     { 
      display.setText(feature.DepositTOS(50.0)); 
      display.setFont(new Font("Arial", Font.BOLD,18)); 
      display.setVisible(true); 

     } 

     if (e.getSource() == hundred) 
     { 
      display.setText(account.toString()); 
      display.setFont(new Font("Arial", Font.BOLD,20)); 
      display.setVisible(true); 
     } 

     if (e.getSource() == other) 
     { 
      cardID = ""; 
      display.setText("\n\n\tPlease enter amount of money:" + "\n\t" +cardID); 
     } 
     if(e.getSource() == keypad[12]){ 
      double num = Double.parseDouble(cardID); 
      display.setText(feature.DepositTOS(num)); 
      display.setFont(new Font("Arial", Font.BOLD,18)); 
      display.setVisible(true); 

     }} 
    } 

私はactionPerformedでif(boolean == true)にできないと感じています。アイデアがある場合は、ヒントや助けを借りて喜んで助けてください。誰かが私のために全機能を書くことを計画している。おかげ

チェッカークラス

public class triggerChecker { 
private boolean checkW, checkD, checkWC, checkWS, checkDC, checkDS; 

public triggerChecker(){ 
    checkW = false; 
    checkD = false; 
    checkWC = false; 
    checkWS = false; 
    checkDC = false; 
    checkDS = false; 
} 

public void setCheckW(boolean s){ 
    checkW = s; 
} 
public void setCheckD(boolean s){ 
    checkD = s; 
} 
public void setCheckWC(boolean s){ 
    checkWC = s; 
} 
public void setCheckWS(boolean s){ 
    checkWS = s; 
} 
public void setCheckDC(boolean s){ 
    checkDC = s; 
} 
public void setCheckDS(boolean s){ 
    checkDS = s; 
} 


public boolean getCheckW(){ 
    return checkW; 
} 
public boolean getCheckD(){ 
    return checkD; 
} 
public boolean getCheckWC(){ 
    return checkWC; 
} 
public boolean getCheckWS(){ 
    return checkWS; 
} 
public boolean getCheckDC(){ 
    return checkDC; 
} 
public boolean getCheckDS(){ 
    return checkDS; 
} 

} 
+0

'someBoolean == true'を書く必要はありません - ' someBoolean'は同等です(同様に '!someBoolean'は' someBoolean == false'と等価です) –

+0

if checker.getCheck()= = true){代わりにif(checker.getCheck()){ –

+0

を使用してくださいしかし、それは私の問題に役立つことはありません。それは? –

答えて

0

あなたがアクセスしたりのactionPerformed内部ブール値を使用することができない理由はありません。あなたが期待しているのは、期待していないときにactionPerformedを呼び出すことができるだけなので、ユーザーが待機しているアクションをユーザーが実行できるように常にブール値が初期化されていることを確認してください。

関連する問題