내 레코드를 표시하기 위해 CellTable을 사용하고 있지만 이제는 사용자가 셀을 클릭 할 때 선택 상자를 표시하려고합니다. 또 하나의 선택 상자는 미리 정의 된 것이 아니라 내 자신의 위젯입니다. 이 일을하는 방법을 나에게 제안 해 주시겠습니까?어떻게 CellTable 셀에 위젯을 넣을 수 있습니까?
답변
the answer에 대해 설명하는 GWT Google 그룹의 게시물이 있습니다. 기본적으로 사용자 정의 widget을 정상적으로 만들고 render 함수 내부에서 widget.getElement(). getInnterHTML()을 사용합니다.
@Override
public void render(com.google.gwt.cell.client.Cell.Context context,
String value, SafeHtmlBuilder sb) {
if (value != null) {
MyWidget widget = new MyWidget(value);
sb.appendEscaped(widget.getElement.getInnerHTML());
}
}
widget.getElement.getInnerHTML() 대신에 외부 HTML가 포함되어 있으므로 widget.getElement.getString()을 사용하고 있습니다. –
동일한 위젯을 다시 사용하여 각 셀의 HTML을 렌더링 할 수 있습니까? (아마 그냥 알아낼 수있는 코드를 작성해야하지만 .. 흥미로운 ..) – HaveAGuess
얼마 전에 비슷한 문제 (셀 위젯을 셀 목록 셀에 삽입하려고 시도)에 직면했으나 안타깝게도 쉬운 해결책을 찾지 못했습니다.
일반적으로 AbstractCell 또는 ActionCell까지 확장하여 특정 셀 클래스를 구현할 수 있습니다. 이 경우 render() 메서드를 재정의하고 사용자 고유의 렌더링을 구현해야합니다. 좋은 예가 AbstractCell class javadoc입니다.
이것은 반 패턴입니다. 셀의 전체 목적은 위젯이 없도록하기 위해서입니다. 셀에서 HTML을 직접 "렌더링"해야합니다.
왜 그들은 celltables에 UIBinder 위젯 지원을 추가 했습니까? (정확히 인용문이 아니라 http://groups.google.com/group/google-web-toolkit/browse_thread/thread/9cfb4a3b5c4af0be/b75305d15a1c32e8?lnk=gst&q=celltable+widget#b75305d15a1c32e8) – HaveAGuess
일 수 있습니다. 하지만 가끔 어쩔 수없는 경우 – jabal
나는 동의하지 않는다. 때로는 HTML에 신경 쓰지 않고 GWT가 위젯을 렌더링하도록한다. – RockyMM
대답을 설명하는 GWT Google 그룹스에 대한 게시물이 있습니다. 기본적으로 사용자 정의 widget을 정상적으로 만들고 render 함수 내부에서 widget.getElement(). getInnterHTML()을 사용합니다.
@Override
public void render(com.google.gwt.cell.client.Cell.Context context, String value, SafeHtmlBuilder sb) {
if (value != null) {
MyWidget widget = new MyWidget(value);
sb.appendEscaped(widget.getElement.getInnerHTML());
}
}
그것은 작동하지만 한계가있다 : 당신은 는 위젯 (외부 또는 내부)에 직접 핸들러를 첨부 할 수 없습니다
- 가.
예 :
widget.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
// Won't work!!!
}
});
나 :
widget.getMyTextBox().addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
// Won't work!!!
}
});
이 제한 사항에 대한 해결 방법이 있습니까? 나는 정말로 그런 funcitonality를 구현하고 싶다. – nanospeck
에서 http : // stackoverflow를 살펴보십시오.com/questions/4691801/how-can-i-render-a-clickabletext-cell-anchor-in-a-gwt-celltable 'thomas'의 답변을보세요 – user949110
클릭 이벤트가 트리거됨을 알고 있어야합니다. 언제든지 ** 항목 **이 클릭됩니다. 열에 두 개의 버튼이있는 경우 어떤 버튼을 클릭했는지 구분할 수 없습니다. 이 경우이 답변을 참조하십시오. http://stackoverflow.com/questions/9108317/gwt-celltable-need-to-have-two-buttons-in-last-single-cell-of-each-row. – Ben
- 1. NSTableView 셀에 NSDatePicker 개체를 넣을 수 있습니까?
- 2. 날짜 문자열을 셀에 넣을 수 있습니까?
- 3. 어떻게 객관적인 테이블보기 셀에 두 번째 줄을 넣을 수 있습니까?
- 4. GWT - CellTable 셀에 HTML을 사용하게 하시겠습니까?
- 5. java SWT : 어떻게 위젯을 오프 스크린 버퍼에 그릴 수 있습니까?
- 6. 어떻게 마스터 페이지에 데이터를 넣을 수 있습니까?
- 7. 어떻게 Regex.Matches를 배열에 넣을 수 있습니까?
- 8. 어떻게 파일 이름에 /을 넣을 수 있습니까?
- 9. 어떻게 dateTimePicker의 날짜를 변수에 넣을 수 있습니까?
- 10. 어떻게 배열에 항목을 디렉토리에 넣을 수 있습니까?
- 11. 어떻게 내 iPhone보기에 스크롤을 넣을 수 있습니까?
- 12. 어떻게 titleForHeaderInSection 메서드의 테이블 섹션에 이미지를 넣을 수 있습니까?
- 13. 위젯을 캐싱 할 수 있습니까?
- 14. 색상으로 인쇄/넣을 수 있습니까?
- 15. 오디오를 '전화'모드로 넣을 수 있습니까?
- 16. 어디에서 registerDefaults를 넣을 수 있습니까?
- 17. 어떻게 커스텀 셀에 버튼을 추가 할 수 있습니까?
- 18. 어떻게 클라이언트 측 GridView의 DataKey 셀에 연결할 수 있습니까?
- 19. PHP 생성 테이블의 셀에 링크를 어떻게 만들 수 있습니까?
- 20. 멋진 SO 달력 위젯을 IE에서 어떻게 작동시킬 수 있습니까?
- 21. PyGTK : gtk.Notebook 탭과 같은 맞춤 위젯을 어떻게 만들 수 있습니까?
- 22. jQuery를 사용하여 웹 페이지에서 위젯을 상대적으로 어떻게 위치시킬 수 있습니까?
- 23. 화면상의 텍스트 선택 위젯을 어떻게 바꿀 수 있습니까?
- 24. GtkHBox에서 위젯을 어떻게 제거합니까?
- 25. webview에서 홈 스크린 위젯을 만들 수 있습니까?
- 26. 어떻게 피클 이미지의 영역을 PIL 이미지에 넣을 수 있습니까?
- 27. [] (대괄호)를 어떻게 RegExp javascript에 넣을 수 있습니까? 나는이 시도하고
- 28. 안드로이드 애플리케이션 포스트 컴파일에 정보를 어떻게 넣을 수 있습니까?
- 29. 파이썬에서 어떻게 프로그램 안에 프로그램을 넣을 수 있습니까?
- 30. 어떻게 문자열의 단어를 자바 스크립트의 테이블에 넣을 수 있습니까?
하십시오 [사용하지 않는 서명 또는 태그 라인] 게시물에서 (http://stackoverflow.com/faq#signatures). – meagar
나는 똑같은 문제가있다 - 테이블에있는 셀에 꽤 많은 중량의 위젯 (로직 측면에서)을 렌더링해야한다. CellTable에서 원했던 것은 IsWidget 팩토리를 제공하여 열의 각 셀을 렌더링하기위한 위젯을 생성하는 데 사용할 수 있어야했습니다. 이 작업을 쉽게 수행 할 수는 없지만 처음부터 테이블을 구현하지는 않을 것입니다. – drdozer