我想在Java中添加一个按钮侦听器,这样当用户只需按下enter
按钮时,按钮就会被按下。
我尝试将此操作监听器添加到我创建的按钮:
String guessText = txtGuess.getText();
JTextField txtGuess = new JTextField();
txtGuess.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
checkGuess();
}
});
这就是整个功能:
public void checkGuess() {
String guessText = txtGuess.getText();
JTextField txtGuess = new JTextField();
txtGuess.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
checkGuess();
}
});
String message = "";
int guess = Integer.parseInt(guessText);
if (guess < theNumber)
message = guess + " is too low. Try again.";
else if (guess > theNumber)
message = guess + " is too high. Try again.";
else {
message = guess + " is correct. Let's play again!";
newGame();
}
lblOutput.setText(message);
}
然而,当我的gui出现时,我在输入输入后按“回车”键,什么也没有发生。我必须亲自点击Guess
按钮,这正是我试图避免的!
这是我创建的窗口:
我希望用户输入一个数字,然后按enter键,然后单击Guess
按钮。帮助我做错了什么?
因此,我假设您希望保留权力,在按下回车键时应用相同的代码,就像按下按钮一样。
为此,我将向按钮添加ActionListener,并向文本字段添加ActionListener。然后让这两个ActionListener触发一个返回输入,并根据随机生成的数字进行检查。
当按下enter键时,JTextField的ActionListener方法会自然触发。
目前,您有一个返回和检查输入文本并创建新文本字段的方法。您似乎是以递归的方式执行此操作的,而不是以这种方式,您可以使用类似于以下内容的方法:
private JTextField txtGuess;
private void initialiseTextField(){//Initialises a textField to be used for all inputs.
txtGuess = new JTextField();
txtGuess.addActionListener(){
public void actionPerformed(ActionEvent e) {
checkGuess();
}
}
}
public void checkGuess() {
String guessText = txtGuess.getText();
txtGuess.setText("");//Empties the contents of the text field.
String message = "";
int guess = Integer.parseInt(guessText);
if (guess < theNumber)
message = guess + " is too low. Try again.";
else if (guess > theNumber)
message = guess + " is too high. Try again.";
else {
message = guess + " is correct. Let's play again!";
newGame();
}
lblOutput.setText(message);
}
为了使其工作,您需要将txtGuess声明为类的一个属性。您可以使用以下命令行执行此操作:
private JTextField txtGuess;
我已将其设置为“私人”,但如果是公共的,则应能正常工作。
初始化方法初始化整个类的文本字段条件,这意味着每次输入文本时不会生成新的JTextFields。
希望这能解决你的问题。问我你是否需要更多的帮助。
注意:我只提供了一个如何用回车键检查输入的例子,你仍然需要自己创建按钮。
我以这种方式在android活动的操作栏中添加了向上按钮: 活动: getSupportActionBar()。setDisplayHomeAsUpEnabled(真); 清单: android:parentActivityName=“.MenuActivity” 它工作正常,但现在我想在活动之间添加一个过渡效果。这种过渡效果很好: Intent意图=new Intent(getApplicati
问题内容: 我只是试图在我的注释点添加一个细节按钮而被卡住,不幸的是,我不知道该怎么做。有人可以帮我吗? 下图显示了我想要实现的目标。谢谢! MapKitViewController: 问题答案: 您做对了,您只需要实现这些方法即可添加按钮以及标题和副标题 iOS 8和Xcode 6 查看我的输出。
我用JavaFx制作了两个简单的JMS应用程序(一个是发送者,另一个是接收者)。 但是,我不能用来自发送方的新消息刷新接收方的GUI。 我使用onMessage事件在internet上查找,并重写了它(向那里的ObservableList添加一个项),但它不起作用。引发事件后,没有向ObservableList添加任何元素。 这是我的听筒: 我的发件人:
问题内容: 我有一个基于Swing的应用程序,其中包含一个。现在,我想使用唯一的行ID来更新或删除每一行。因此,我想向每行添加一个更新和删除按钮,它们具有支持ActionListener的功能。但是,我不知道如何使用NetBeans执行此操作。 问题答案: 要在列中显示按钮,您需要创建: 一个自定义渲染器以显示JButton 定制编辑器以响应鼠标单击 阅读Swing教程中有关如何使用表的部分。关于
是否可以在报告中添加一个按钮,任何操作都将被修复? 示例:按钮“查看”,将显示更详细的统计信息。 备注: 我不完全理解如何制作文本元素的按钮
问题内容: 如何在Android中动态添加按钮? 问题答案: