我是Java事件,侦听器和处理程序的新手。我可以编写代码来创建一个按钮点击事件和一个工作结果。但是,我无法在TextField中使用简单的输入事件来工作。Java输入事件不会激活处理程序
注意我声明并调用动作侦听器,输入处理程序并定义生成的方法执行。 (我进口的java.awt和javax.swing中的库未如下图所示)。
public convertStringToCapitalLetters() {
setTitle("Convert String to All Capital Letters");
Container c = getContentPane();
c.setLayout(new GridLayout(2, 2));
inputLabel = new JLabel("Enter String: ", SwingConstants.LEFT);
stringTextField = new JTextField(50);
outputLabel = new JLabel("Capitalized String: ", SwingConstants.LEFT);
newStringLabel = new JLabel("", SwingConstants.RIGHT);
c.add(inputLabel);
c.add(stringTextField);
c.add(outputLabel);
c.add(newStringLabel);
inputHandler = new InputHandler();
stringTextField.addActionListener(inputHandler);
setSize(WIDTH, HEIGHT);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
}
private class InputHandler implements ActionListener {
public void actionPerformed(ActionEvent e) {
String str, newStr;
str = stringTextField.getText();
newStr = str.toUpperCase();
newStringLabel.setText(String.format("", newStr));
}
}
public static void main(String[] args) {
convertStringToCapitalLetters capitalConv = new convertStringToCapitalLetters();
}
请详细描述您的问题。你究竟做了什么,你无法做到?你的代码的哪一部分试图做到这一点?假设我们没有事先知道您的问题或您的代码,特别是未显示的代码。 –
幸运的是,人们能够理解你的代码,但下一次,请告诉我们更多。我不知道为什么你从来没有回复我上面的评论。 –
对不起,下次我会更好地格式化我的代码。我在文本框中的代码格式有问题。虽然我的错。感谢您的回应! –