>Java >java지도 시간 >JTable에서 개별 행의 배경색을 어떻게 동적으로 변경할 수 있습니까?

JTable에서 개별 행의 배경색을 어떻게 동적으로 변경할 수 있습니까?

Barbara Streisand
Barbara Streisand원래의
2024-11-15 10:50:02583검색

How can I dynamically change the background color of individual rows in a JTable?

JTable에서 행의 배경색 새로 고침

Swing에서 JTable 클래스는 표 형식 데이터를 표시하고 조작하는 유연한 방법을 제공합니다. . 행 및 열 속성을 활용하여 개발자는 개별 행의 배경색을 포함하여 테이블의 다양한 측면을 쉽게 사용자 정의할 수 있습니다.

동적 행 색상 지정을 달성하려면 TableModel을 확장하는 사용자 정의 테이블 모델을 생성할 수 있습니다. prepareRenderer 메서드를 재정의합니다. 이 메소드는 테이블에 표시되기 전에 셀의 모양을 설정하는 역할을 합니다.

제공된 코드 예제에서 myTableModel 클래스는 AbstractTableModel을 확장하고 ResetTable(), setColumnNames(), addRow(), 및 제거RowAt() 메소드. 또한 rowColor라는 HashMap을 사용하여 행별 색상을 저장하므로 여러 행에 대해 서로 다른 색상을 설정할 수 있습니다.

colorTable() 클래스는 JTable을 확장하고 setRowColor(), setColumnColor(), setCellColor() 및 ResetColor() 메서드. 이러한 메소드를 사용하면 특정 행, 열 또는 셀의 색상을 지정하고 모든 행을 특정 배경색으로 재설정할 수 있습니다.

사용 예에서 배포 테이블 개체는 사용자 정의 myTableModel을 사용하여 초기화됩니다. 배경색을 변경한 후 테이블을 새로 고치기 위해 revalidate() 메서드가 호출됩니다.

배경색을 동적으로 변경하려면 colorTable.resetColor() 및 colorTable.setRowColor(를 트리거하는 버튼 작업 리스너를 사용할 수 있습니다. ) 방법. 이를 통해 행 인덱스 또는 특정 셀의 값과 같은 특정 기준에 따라 행의 배경색을 반복적으로 설정할 수 있습니다.

사용자 정의 테이블 모델에서 prepareRenderer 메소드를 재정의하고 rowColor HashMap을 활용하여 을 사용하면 JTable의 개별 행에 대한 배경색을 프로그래밍 방식으로 설정하고 수정하여 데이터 시각화의 유연성을 높일 수 있습니다.

위 내용은 JTable에서 개별 행의 배경색을 어떻게 동적으로 변경할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.