JTabel 리셋 시키는 방법 좀 알려주세요 ㅠㅠ
찬슬
JTable을 이용해서 윈도우 탐색기 만들고 있습니다.^^
휴.. 어떻게 해서 마우스로 선택한 값을 추출하는데 까지 성공했습니다.
제가 하려는 것은 마우스로 디렉토리를 클릭시에 디렉토리 하위에 있는 data를 출력하려고 합니다.
처음에 abstractTableModel을 이용해서 table을 만들때
Vactor column과 data를 이용해서 만들었습니다.
그래서 처음에 table을 만들때 사용했던 data에 선택한 디렉토리의 하위 디렉토리 정보를 넣고 fireTableDataChanged() 메소드를 호출 하였습니다. 그런데 안 바뀌더라고요 ㅠ
resetData는 선택된 디렉토리위 하위 디렉토리를 읽어와서 테이블을 갱신해주려고 만든것 입니다.
public void resetData(File recentDirectory){
if( recentDirectory.isDirectory()){
System.out.println(resetData call);
File[] recentList = recentDirectory.listFiles(); //선택한 디렉토리의하위에 있는file들
int recentFilesLength = recentList.length;
for( int i=0 ; i recentFilesLength ; i++ ){
Vector row = new Vector();
absolutePath.addElement(recentList[i].getAbsoluteFile()); row.addElement(recentList[i].getName());
row.addElement(recentList[i].length());
row.addElement(recentList[i].lastModified());
data.addElement(row);//처음에 table을 생성할 때 사용했던 data를 다시 이용.
}
this.fireTableDataChanged(); // 이 모델을 갱신(?) ㅎㅎ
}else if( recentDirectory.isFile()){
}
}
이렇게 하면은 안되나요??^^;;/??^^;;
이전에 사용했던 data에 addElement하면 뒤에 계속 추가만 될 것 같은데 그렇지도 않네요^^;;
-
은G
답변 너무 감사드립니다^^ 요새 면접 준비하느라고 사실 제 코드를 못 보고 있습니다^^ㅎ
면접 끝나는데로 다시 한번 소스 보고 알려주신 것 시도해 본다음에 글 다시 올리겠습니다^^
좋은 하루 보내세요^^ -
상처입은마음
온몸 // TableDataChanged(); 라는 메소드를 호출하면 내부적으로 어딘지는 몰라도 아무튼 데이터가 변경되었으니까 view는 model(여기서는 TableModel 리스너를 구현한 인스턴스겠죠) 로부터 데이터를 긁어서 화면에 뿌려줍니다. table 에서는 이 때 getValueAt(int, int) 라는 메소드를 사용하죠. 즉, 화면에 아무런 변화가 없다면 이 메소드가 제대로 구현되었는지를 보아야 하고, 이게 제대로 구현되었다면 현재 보여질
-
봄해
답변감사드립니다. 한번 테스트 해보겠습니다.^^
테이블이 굉장히 사용하기 어렵네요^^
그런데 getValueAt은 구현이 되어 있는데요 getValueAT이 제대로 된 값을 반환하지 않는거랑 무슨 관계가 있는지 궁금합니다. fireTableDataChanged()메소드 안에서 이를 사용하는건가요?? -
늘다
이 코드만 봐서는 알 수 없습니다. 위 코드를 보면 AbstractTableModel이 해야하는 일까지 모두다 다루고 있는게 보이네요. Vector row를 만들어서 파일의 이름과 길이, 마지막 수정 날짜를 긁어다가 테이블 셀에 뿌리는건 AbstractTableModel에 구현되어 있는겁니다.
님께서는 현재 테이블에 보여질 최상위 파일만 갱신해주고 public Object getValueAt(int row, int column); 을 확실하게 구현해주 -
한국녀
답변 감사드립니다^^ [How to] Windows Explorer을 따라하면서 트리는 만들었습니다. table부분은 보이지가 않던데요 ㅠㅠ
-
리나
전에 ilovemedic 님이란 분이 윈도우즈 탐색기 관련해서 강좌를 했던게 있는데, 보신지 모르겠네요.
[How to] Windows Explorer 만들기 로 검색해보면...