다양한 데이터베이스 레코드 용 편집기가있는 앱이 있습니다. 이 기록들은 서로를 참조하고 있습니다.Vaadin 7 콤보 상자 - 텍스트를 입력 할 때 채우고 드롭 다운하는 방법?
구성 요소가 콤보 상자처럼 보이는- (나는 쉽게 할 수있다) : 여기
public abstract class CustomDbLookupField<T> extends CustomField<T> implements Field<T>
내가 원하는 것입니다 : 나는 콤보 기반으로하는 새 사용자 정의 데이터 인식 컴포넌트를 개발하고 있어요
- 해당 필드에 행 ID 값이있는 경우 구성 요소는 해당 참조 레코드의 텍스트 표현을 표시합니다 (이 또한 수행 할 수 있음)
- 사용자가 콤보 상자에 텍스트를 입력하기 시작하면 검색하려고합니다. 데이터베이스에 키워드를 추가하고 콤보를 채 웁니다. 그 항목 상자에 다음 그를 위해 다운 콤보 박스
- 하락하자 등 그를 내가 마지막 두 부분을 할 수가 없어 결과
에서 선택합니다. 리스너를 "콤보 상자에 입력 된 텍스트"이벤트에 바인드하려고했지만 그 방법을 찾을 수 없습니다. . 또한, 나는이 시도되었다 단지에 입력 된 텍스트를 얻는 방법을 모르는 :
cmb.addListener(com.vaadin.event.FieldEvents.TextChangeEvent.class,target, method);
하지만 매개 변수 대상 및 방법 통과 모르겠어요.
이것이 유일한 답변이므로이 대답을 수락합니다. 적어도 이것이 작동하지 않는 이유를 설명합니다. 나는 누군가가 구성 요소에 대해 유효하지 않더라도 모든 이벤트에 등록 할 수있는 것이 특히 어렵다는 것을 안다. 나는 커스텀 자바 스크립트 모듈을 작성하지 않을 것이다. 나는 PopupButton과 TextField + ListSelect의 조합을 사용하여 끝난다. 좋지는 않지만 적어도 상자 밖으로 나옵니다. – nagylzs
코드 예제에 대한 링크를 사용하여 답변을 업데이트했습니다. –