Java 如何验证SWT文本小部件的输入并分配给变量?
这个SWT程序有一个名为mBuy的组,其中包括输入股票买入价格的文本字段。按下“计算”按钮并激活事件侦听器后,我想将此文本字段中的任何内容分配给一个变量,我在这里初始化了该变量Java 如何验证SWT文本小部件的输入并分配给变量?,java,eclipse,user-interface,swt,actionlistener,Java,Eclipse,User Interface,Swt,Actionlistener,这个SWT程序有一个名为mBuy的组,其中包括输入股票买入价格的文本字段。按下“计算”按钮并激活事件侦听器后,我想将此文本字段中的任何内容分配给一个变量,我在这里初始化了该变量 final Text tmp0 = new Text(mBuy, SWT.SINGLE); tmp0.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); // Calculate Button Button tmp3 = new Button(mBu
final Text tmp0 = new Text(mBuy, SWT.SINGLE);
tmp0.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
// Calculate Button
Button tmp3 = new Button(mBuy, SWT.PUSH);
tmp3.setText("Calculate");
tmp3.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, true));
// if calculate button is pressed
tmp3.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
//take the decimal value inside textbox
bPrice=Double.parseDouble(tmp0.getText());
// don't show buy menu anymore
mBuy.dispose();
}
});
它只是
tmp0.getText()
。你应该看看。你曾经尝试过使用谷歌吗?你不认为这是我尝试的第一件事吗?这是错误的。我得到一个错误,因为tmp0生成的字符串为空。我知道必须使用verifylistener来验证SWT的输入,所以不能只使用getText()。还有其他想法吗?我发布了更新后的代码,给出了空错误。然后这看起来像SWT中的一个bug。它不应返回null:“文本小部件的文本是小部件中的字符,如果从未设置过,则为空字符串。”您也可以在VerifyListener
中使用getText
,它将返回当前文本。