VerifyListener을 이용하면 사용자가 입력하는 순간에 입력허용여부를 체크할 수 있다.
JDK 1.4 부터 추가된 matches 메소느를 사용하면 여러가지 패턴을 사용가능하다.
JDK 1.3에서 사용하는 방법도 있지만, 이클립스가 1.4 이상에서만 돌아가기 때문에 의미는 없으리라 생각된다.
Text numericText = new Text(parent, SWT.NONE);
numericText.addVerifyListener(
new VerifyListener() {
public void verifyText(VerifyEvent e) {
e.doit = e.text.matches("[\\-0-9]*");
}
});
소스를 보면 Text 개체를 만들고, Text개체에 Listener를 등록하면 된다. 입력할때마다 verifyText 이벤트가 발생하면서 해당 메소드로 입력허용하겠냐고 물어보게 된다.
이때 e.doit = false를 주면 입력이 안되게 되고, 반대로 e.doit = true가 되면 입력이 되게 된다.
'Eclipse' 카테고리의 다른 글
상단에 탭이 있는 Dialog 만들기 (0) | 2007.03.31 |
---|---|
Customizing Eclipse RCP applications, Part 1: Techniques to use with SWT and JFace (0) | 2007.03.28 |
Visual Studio C와 C++ 프로젝트를 Eclipse CDT로 마이그레이션 하기 (0) | 2007.02.27 |