我的项目中有很多模块,在每个模块中我都有文本框。
我想验证输入(字母表)。为此,我必须写一个常用的方法。
需要一些例子。
提前致谢。
答案 0 :(得分:3)
在SWT.Verify
上收听Text
,然后检查您的情况。如果您想阻止给定的输入,请执行e.doit = false
。
以下示例允许Text
中最多包含10个字符:
public static void main(String[] args)
{
Display display = new Display();
Shell shell = new Shell();
shell.setText("StackOverflow");
shell.setLayout(new GridLayout(1, false));
final Text text = new Text(shell, SWT.BORDER);
text.addListener(SWT.Verify, new Listener()
{
@Override
public void handleEvent(Event e)
{
String oldS = text.getText();
String newS = oldS.substring(0, e.start) + e.text + oldS.substring(e.end);
if(newS.length() > 10)
e.doit = false;
}
});
shell.pack();
shell.open();
while (!shell.isDisposed())
{
if (!display.readAndDispatch())
{
display.sleep();
}
}
display.dispose();
}