【发布时间】:2013-06-01 06:36:31
【问题描述】:
我正在 Netbeans 中构建一个 GUI - 它用于一个简单的小应用程序 - 一个转换器程序。基本上,用户键入他们想要转换的任何内容到文本字段中,从多个单选按钮(比如 lbs 到 kg)中选择转换,然后单击“转换”。
问题是,我希望“转换”按钮和单选按钮的行为如下:
- 单选按钮和“转换”按钮在程序加载时被禁用。
- 如果用户在文本字段中输入数字(并且仅是数字),单选按钮和“转换”按钮将启用。
- 如果 used 会删除他们输入的内容,则所有内容都将再次被禁用,直到他们输入另一个数字。
通过取消选中每个组件的属性中的“启用”框,我设法将单选按钮和“转换”按钮设置为禁用。我还能够使用简单的 if 语句和 keyTyped 事件来启用/禁用,如下所示:
private void txtUsrInputKeyTyped(java.awt.event.KeyEvent evt)
{
if (!txtUsrInput.getText().equals(""))
{
btnCalculate.setEnabled(true);
}
else
{
btnCalculate.setEnabled(false);
}
}
我想扩展我的代码,这样如果用户不小心在文本字段中输入了一个字母或符号(不要问我为什么要这样做,因为他们知道他们必须只输入一个数字)然后程序要么忽略他们输入的内容,或者显示错误。当然,例外情况是键入句点 (.),因为他们可能想要表示十进制数。
对我如何做到这一点有任何想法吗?希望我写的有意义!
【问题讨论】: