所以我知道这是一个很普遍的问题,已经找到了解决方案。但是,当我尝试这样做时,它无法正常工作。
我的JTextField为空,并且未启用该按钮。当我在文本字段中写入内容时,该按钮未启用。
因此,我的程序应每秒检查一次此字段是否为空。只要有人在文本字段中写入内容,就应启用该按钮。^^
loginbt = new JButton("Login");
loginbt.addActionListener(new loginHandler());
add(loginbt);
if(name.getText().equals("")) {
loginbt.setEnabled(false);
}else {
loginbt.setEnabled(true);
}
为此,您需要在中添加更改侦听器(一个DocumentListener
响应文本更改的侦听器)JTextField
,并且在内actionPerformed()
,您需要loginButton
根据是否JTextfield
为空将其更新为enabled
/ disabled 。
以下是我从此线程中发现的内容。
yourJTextField.getDocument().addDocumentListener(new DocumentListener() {
public void changedUpdate(DocumentEvent e) {
changed();
}
public void removeUpdate(DocumentEvent e) {
changed();
}
public void insertUpdate(DocumentEvent e) {
changed();
}
public void changed() {
if (yourJTextField.getText().equals("")){
loginButton.setEnabled(false);
}
else {
loginButton.setEnabled(true);
}
}
});
我在运行时遇到一个错误。使用if语句检查是否为空时会导致此错误。
抱歉发了“修复我的代码”的帖子 编辑:与循环的语法比质数更相关,现在也解决了。 我的任务是从控制台取一个整数,并打印出(在不同的行上)从1到n的所有素数。我的方法从n开始,检查它的素数,然后将n递增1,并循环直到n=2。为了检查一个数字是否是素数,我运行一个循环,检查跳水的余数x等于零,x从2开始,停止在根(n)。现在这一切在理论上都是可行的,阅读我的代码,我看不出哪里出错了。 例如,输入10将返
问题内容: 如何检查列表是否为空?如果是这样,系统必须给出一条消息,指出 List为空 。如果不是,则系统必须给出一条消息,指出 List不为空 。用户可以输入数字以停止程序。这是我现在拥有的代码,但这不起作用,它总是显示“列表不为空”。 问题答案: 就像: 请注意,快速浏览该文档将为您提供该信息。
问题内容: 如何检查布尔值是否为null?因此,如果我知道“ hideInNav”为空。如何阻止它进一步执行?像下面这样的东西似乎不起作用,但是为什么呢? 问题答案: 只能是或因为它是原始数据类型(+ 变量的默认值为)。如果要使用值,则可以改用类。布尔是一种引用类型,这就是您可以分配给布尔“变量”的原因。例:
我想知道检查列表是否为空的最佳方法是什么。在我的Stream中,我调用两次。它有效,但我不知道它是否正确?它看起来有点难看: 当列表为空并且没有找到任何项目时,我必须抛出错误