我的目標是比較兩個字符串。一個字符串就是來自用戶的文本字段(txt)的輸入,然後,如果它們匹配,則將文本字段更改爲第三個字符串(msg)。這是什麼讓我不能使用我的按鈕或比較字符串?
但是,當我爲txt字符串輸入正確的字符並單擊按鈕時,什麼都不會發生。爲什麼它不會更改爲「Derk?」,msg字符串?
代碼:
package levels;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class LevelOne extends JFrame implements ActionListener{
private JTextField input = new JTextField("Ich spielen Golf.");
private JButton submit = new JButton("Check sentence");
public void one(){
setTitle("Conjugator");
setSize(400,400);
setLocationRelativeTo(null);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
setLayout(new BorderLayout());
setContentPane(new JLabel(new ImageIcon("images/LevelOneBG.gif")));
setLayout(new FlowLayout());
JTextArea area = new JTextArea("You enter a castle. A Goblin demands you correct his sentences!");
add(area);
setVisible(true);
JButton submit = new JButton("Check sentence");
submit.addActionListener(this);
add(submit);
setVisible(true);
JTextField input = new JTextField("Ich spielen Golf.");
input.setActionCommand("input");
add(input);
input.addActionListener(this);
setVisible(true);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == submit) {
String txt = (input.getText());
String test = ("test");
String msg = ("Derk?");
if (txt.equals(test)){
//after check
input.setText(msg);
}
}
}
}
邊評論:你並不需要所有的括號內。 'String txt = input.getText(); String test =「test」; String msg =「Derk?」;'也會工作... – assylias
謝謝,我討厭括號,所以我在安全方面進行了空氣處理。任何線索是什麼導致我的問題? – user2426434