사용자가 드래그 앤 드롭 방식으로 다시 배열 할 수 있도록 확장 한 내 JList (Reorder a JList with Drag-and-Drop 및 Use drag and drop to reorder a list)가 이상한 결과를 제공합니다. 나에게 나의 주문 JComponent
를주는 대신에, 그것은 나에게 .toString()
가치를 준다. 내 맞춤형 모델 JList
을 DefaultListModel<JComponent>
으로 설정하면 효과가 있다고 생각되지만 그렇지는 않습니다.Java JList 원하지 않는 toString() 변환
답변
렌더링 할 개체에 대해 사용자 지정 CellRenderer
을 만들어야합니다. 디폴트에서는, JList는 컴퍼넌트의 toString 치를 표시합니다 (DefaultListCellRenderer가 JLabel를 확장하기 (위해) 때문에).
class MyRenderer extends DefaultListCellRenderer {
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
Component c = super.getListCellRendererComponent(...);
setText(getValue(value)); // where getValue is some method you implement that gets the text you want to render for the component
return c;
}
문자열을 실제로 렌더링하지 않으려면 렌더링 할 구성 요소를 반환하는 CellRenderer 구현을 만듭니다.
그래서 내 JComponent를 확장하는 동안'CellRenderer'을 구현하고 getListCellRendererComponent()가 내 JComponent를 반환하도록 만드시겠습니까? 시도해 볼게. 감사:). –
** 고마워요! ** 잘 돌아갔습니다! –
확실한 점 - 도움을 주어서 기쁩니다. –
- 1. Java - jList getSelectedValue 문제
- 2. SQL 함수에서 라틴 문자를 원하지 않는 변환
- 3. jlist 선택을 문자열로 변환
- 4. arraylist에서 원하지 않는 문자를 제거 하시겠습니까? Java
- 5. Java Jlist Scrollbar
- 6. Java - toString to Color
- 7. toString() in java
- 8. Java : enum toString()
- 9. Java toString 오류
- 10. java toString() 반환이
- 11. CSS - 원하지 않는 테두리 아래쪽
- 12. Firefox 원하지 않는 스크롤
- 13. UIDatePicker 원하지 않는 동작
- 14. IE6에서 원하지 않는 배경색
- 15. 원하지 않는 문자
- 16. 원하지 않는 반올림 C++
- 17. 원하지 않는 태그 이름은
- 18. 원하지 않는 여백이 메뉴
- 19. 원하지 않는 노이즈 줄이기
- 20. UITableView 원하지 않는 셀
- 21. XSLT 원하지 않는 값
- 22. 원하지 않는 설정 디렉토리
- 23. 원하지 않는 cron 잠금
- 24. Lucene.net 원하지 않는 문서
- 25. 원하지 않는 sal.h 경고
- 26. 원하지 않는 거리
- 27. 레이아웃에서 원하지 않는 여백
- 28. 원하지 않는 내비게이션 막대
- 29. CATextLayer의 원하지 않는 패딩
- 30. 원하지 않는 세션 생성
렌더러는 무엇입니까? –
해당 기사는 심각하게 구식입니다. dnd를 사용자 정의하는 현재 방법은 사용자 정의 TransferHandler입니다. http://docs.oracle.com/javase/tutorial/uiswing/index.html의 해당 장을 참조하십시오. – kleopatra
방금 알아 챘습니다 : _never_ (99.99 %)에는 목록에 JComponent 유형의 항목이 있습니다. – kleopatra