所以我创建了一个小的Java应用程序,我只是想知道如何获取JTextField的内容,然后将值分配给String变量,我认为下面的方法可行:
JTextField txt_cust_Name = new JTextField();
String cust_Name;
txt_cust_Name.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
cust_Name = txt_cust_Name.getText();
}
});
现在我认为这会将JtextField的值发送到String Cust_Name。
有人有任何想法吗?
干杯。
答案 0 :(得分:3)
只有在按下Enter键时才会触发ActionListener。
也许您应该使用FocusListener并处理focusLost()事件。
或者您也可以将DocumentListener添加到文本字段的Document中。每次对文本字段进行更改时都会触发DocumentEvent。
答案 1 :(得分:2)
谢谢大家,我选择做的是在按下按钮时分配值:
JButton btn_cust_Save = new JButton("Save Customer");
btn_cust_Save.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent ae)
{
final String cust_Name = txt_cust_Name.getText();
final String cust_Door = txt_cust_Door.getText();
final String cust_Street1 = txt_cust_Street1.getText();
final String cust_Street2 = txt_cust_Street2.getText();
final String cust_City = txt_cust_City.getText();
final String cust_PCode = txt_cust_PCode.getText();
final String cust_Phone = txt_cust_Phone.getText();
final String cust_Email = txt_cust_Email.getText();
}
});
感谢您的帮助。
答案 2 :(得分:1)
你需要实际使用你的字符串变量,你可以说:
String cust_Name = txt_cust_Name.getText();
这假设在您尝试访问此值的时间点已经输入...(与每次按下键时尝试更新变量相反)
答案 3 :(得分:0)
通常,JTextField位于表单上,用户可以使用它,直到他点击表单上的 Ok 按钮。该按钮的处理程序(ActionListener
)然后从字段中获取当前文本值并对其执行某些操作。
你想做一些与众不同的事吗?您是否需要在更改时响应输入,或仅在用户离开现场时?或者他点击ENTER很重要吗?
请注意,此类非标准行为可能会使用户在现实生活中感到困惑。当然,如果你只是为自己做这件事,那么事情就会发生。
答案 4 :(得分:0)
我发现这段代码效果很好:
<script>
var forbiddenWords = ['Phone', 'Home', 'Address', 'Number', 'Postcode', 'email', 'call','n u m b e r'];
$(function () {
$('.msgbox').on('keyup', function(e) {
forbiddenWords.forEach(function(val, index) {
if (e.target.value.toUpperCase().indexOf(val.toUpperCase()) >= 0) {
e.target.value = e.target.value.replace(new RegExp( "(" + val + ")" , 'gi' ), '');
}
});
});
});
</script>
}