내 응용 프로그램에서 .xml 파일을 읽고 JTable에 데이터를 쓰고 있습니다. 표의 데이터 외에도 .xml 파일에는 각 행의 배경색을 정의하는 속성이 있습니다. 셀 렌더링 방법은 다음과 같습니다.자바에서 캐스팅 오류
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int col) { JComponent comp = new JLabel(); if (null != value) { //reading the data and writing it in the comp } GenericTableModel model = (GenericTableModel) table.getModel(); GenericObject go = model.getRowObject(row); Color test = new Color(255, 255, 255); if (go.getValueByName("COLOR") == null){ }else{ test =(Color) go.getValueByName("COLOR"); } comp.setBackground(test); return comp; }
.xml 파일은 프로그램 내에서 초기화됩니다. 내 문제는 변수 테스트를 색으로 저장할 수 있도록 파일에서 색을 정의하는 방법을 모른다는 것입니다. "Color.white", "white"및 심지어 "255, 255, 255"로 쓰려고했지만 변수에 저장하려고하면 캐스팅 오류가 발생합니다.
파일의 색상을 어떻게 정의 할 수 있습니까?
당신은 Color 객체에 Row 객체를 던지려고합니다. – Rob
아니요 ... 올바른 객체를 추가하고 있습니다 ... 행을 가져 가고 색상 속성 만 가져 오는 중입니다 ... 그리고 나서 그것을 시도해보십시오. 어떤 시도가 작동하지 않습니다. – schmimona
테스트가 문자열이고 test = go.getValueByName ("COLOR")라고 쓰면됩니다. toString(); 그것은 효과가 있었을 것입니다 ...하지만 그때 문자열에서 구성 요소의 배경을 설정할 수 없습니다, 내가? – schmimona