listTable.addMouseListener( new MouseAdapter() { public void mouseClicked( MouseEvent e ) { int column = listTable.getSelectedColumn(); int row = listTable.getSelectedRow(); if( column == 0 ) { dialog.setVisible( true ); } } } );2.你可以把第一列的数据方imageicon,比如 data[0] = new ImageIcon( "xxx.gif" ); 然后在AbstractTableModel的 public Class getColumnClass( int c ) { } 返回第一列是ImageIcon就可以了。
listTable.addMouseListener( new MouseAdapter() { public void mouseClicked( MouseEvent e ) { int column = listTable.getSelectedColumn(); int row = listTable.getSelectedRow(); if( column == 0 ) { dialog.setVisible( true ); } } } );2.你可以把第一列的数据方imageicon,比如 data[0] = new ImageIcon( "xxx.gif" ); 然后在AbstractTableModel的 public Class getColumnClass( int c ) { } 返回第一列是ImageIcon就可以了。
这是我写的,在 ImageIcon.class和new ImageIcon("folder.gif");出问题。。 这个地方怎么处理?import java.awt.Image; import javax.swing.table.*; import java.util.Date; import java.io.File;public class FileModel extends AbstractTableModel { String titles[] = new String[] { "directory?","File Name","Read?","Write?","Size","Last Modified" }; Class types[] = new Class[] { ImageIcon.class,String.class,Boolean.class,Boolean.class,Number.class,Date.class }; Object data[][]; public FileModel() { this("."); } public FileModel(String dir) { File pwd = new File(dir); setFileStats(pwd); } public int getRowCount() { return data.length; } public int getColumnCount() { return titles.length; } public String getColumnName(int c) { return titles[c]; } public Class getColumnClass(int c) { return types[c]; } public Object getValueAt(int r,int c) { return data[r][c]; } public void setFileStats(File dir) { String files[] = dir.list(); data = new Object[files.length][titles.length]; for(int i = 0;i < files.length; i++) { File tmp = new File(files[i]); data[i][0] = new ImageIcon("folder.gif"); data[i][1] = tmp.getName(); data[i][2] = new Boolean(tmp.canRead()); data[i][3] = new Boolean(tmp.canWrite()); data[i][4] = new Long(tmp.length()); data[i][5] = new Date(tmp.lastModified()); } fireTableDataChanged(); } }
用js
window.open("aaa");
{
public void mouseClicked( MouseEvent e )
{
int column = listTable.getSelectedColumn();
int row = listTable.getSelectedRow(); if( column == 0 )
{
dialog.setVisible( true );
}
}
}
);2.你可以把第一列的数据方imageicon,比如
data[0] = new ImageIcon( "xxx.gif" );
然后在AbstractTableModel的
public Class getColumnClass( int c )
{
}
返回第一列是ImageIcon就可以了。
{
public void mouseClicked( MouseEvent e )
{
int column = listTable.getSelectedColumn();
int row = listTable.getSelectedRow(); if( column == 0 )
{
dialog.setVisible( true );
}
}
}
);2.你可以把第一列的数据方imageicon,比如
data[0] = new ImageIcon( "xxx.gif" );
然后在AbstractTableModel的
public Class getColumnClass( int c )
{
}
返回第一列是ImageIcon就可以了。
ImageIcon.class和new ImageIcon("folder.gif");出问题。。
这个地方怎么处理?import java.awt.Image;
import javax.swing.table.*;
import java.util.Date;
import java.io.File;public class FileModel extends AbstractTableModel {
String titles[] = new String[] {
"directory?","File Name","Read?","Write?","Size","Last Modified"
};
Class types[] = new Class[] {
ImageIcon.class,String.class,Boolean.class,Boolean.class,Number.class,Date.class
};
Object data[][];
public FileModel() {
this(".");
}
public FileModel(String dir) {
File pwd = new File(dir);
setFileStats(pwd);
}
public int getRowCount() {
return data.length;
}
public int getColumnCount() {
return titles.length;
}
public String getColumnName(int c) {
return titles[c];
}
public Class getColumnClass(int c) {
return types[c];
}
public Object getValueAt(int r,int c) {
return data[r][c];
}
public void setFileStats(File dir) {
String files[] = dir.list();
data = new Object[files.length][titles.length];
for(int i = 0;i < files.length; i++) {
File tmp = new File(files[i]);
data[i][0] = new ImageIcon("folder.gif");
data[i][1] = tmp.getName();
data[i][2] = new Boolean(tmp.canRead());
data[i][3] = new Boolean(tmp.canWrite());
data[i][4] = new Long(tmp.length());
data[i][5] = new Date(tmp.lastModified());
}
fireTableDataChanged();
}
}