【发布时间】:2015-12-03 06:40:15
【问题描述】:
如果两个 jtextfield 为空或不为空,我正在使用 keyReleased 来启用或禁用 jbutton。我在方法中放置了一些打印行语句,以便在方法执行时查看布尔值。这些语句从不打印,让我相信该方法没有被执行。 jbutton 应该开始禁用,直到将文本输入到两个 Jtextfields 中,然后启用 jbutton。
CalculateButton.addKeyListener(new KeyAdapter()
{
@Override
public void keyReleased(KeyEvent arg0)
{
// the two jtextfields being checked for length
boolean first = ipAddress.getText().length() > 0;
boolean secoundnd = borrowedBits.getText().length() > 0;
// print statements of the boolean values
System.out.println("IpAddress " + first);
System.out.println("borrowedBits" + secoundnd);
// if statements checking to see if the button should be enabled
or disabled after each key press.
if (ipAddress.getText().length() > 0 && borrowedBits.getText().length() > 0)
{
CalculateButton.setEnabled(true);;
}
if (ipAddress.getText().length() == 0 || borrowedBits.getText().length() == 0)
{
CalculateButton.setEnabled(false);;
}
}
【问题讨论】:
-
将关键监听器添加到文本字段而不是按钮。如果它被禁用,则不会调用该方法。
-
感谢您的帮助!
-
变量名不应以大写字符开头。你的一些变量是正确的,有些不是。保持一致并从您在书籍、教程等中找到的示例中学习。
标签: java swing jbutton jtextfield keylistener