2014-04-07 329 views
0

我試圖在按下按鈕時添加分數,分數顯示在JTextField中,但是當按下按鈕時添加了分數inst,它表示爲0. 我有一個整數字段,用於存儲得分Score ++ does not work

private int score=0; 

yesButton = new JButton("True"); 
panel.add(yesButton); 
yesButton.addActionListener(new ActionListener() { 
    int index = 0; 
    @Override 
    public void actionPerformed(ActionEvent e) { 
     index++; 
     score++; 
     qScore.setText("",+score); 
     qText.setText(questions.get(index).getQuestions()); 
    } 
}); 

得分

JPanel scorePanel = new JPanel(); 
     scorePanel.setLayout(new GridLayout(1,0)); 
     JLabel label = new JLabel("Score:"); 
     JTextField qScore = new JTextField(); 
     qScore.setEditable(false); 

任何想法,我究竟做錯了什麼?

+1

如何發佈整個班級? – JamesB

+0

你是否在按下yes按鈕時調試了代碼? – JamesB

+0

您是否調試過actionPerformed方法? – JamesB

回答

3

在你actionPerformed方法,你不更新與新成績的看法。我想它會是這樣的:

score.setText("Score:" + score); 
+0

我試過..不工作..我陶錫源編輯我貼我的成績 – user3507763

+0

不知道爲什麼,這個答案正在接收標誌尚未 – JamesB

+0

你好,我更新了我的代碼代碼..但我得到的錯誤不能應用於給定的類型 – user3507763

0

您的變量qScore應該是一個實例成員並構造一次。

然後當actionPerformed方法被觸發,調用的setText

// in actionPerformed 
score++; 
qScore.setText(score); 
+0

您好!,感謝您的回覆,但是當我嘗試使用 – user3507763

+0

時,我得到的操作無法應用於此給定類型什麼是完整的錯誤消息? – JamesB

+0

方法javax.swing.text.JTextComponenet中的setText不能用於給出類型...原因實際和形式參數列表的長度不同 – user3507763