1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
| package vue;
import java.io.File;
import java.util.*;
import java.awt.*;
import javax.swing.*;
import javax.swing.border.*;
import javax.swing.filechooser.*;
import java.beans.*;
import java.text.*;
public class open extends JPanel implements PropertyChangeListener{
private JFileChooser chooser;
public JLabel nom, taille, date, icone, description;
public FileSystemView vueSysteme;
public File file;
public String s1, s2;
public open(JFileChooser chooser){
super(new GridLayout(0,1));
add(icone = new JLabel("Icône du fichier"));
add(description = new JLabel("Description du fichier"));
add(nom = new JLabel("Nom du fichier"));
add(taille = new JLabel("Taille du fichier"));
add(date = new JLabel("Dernière mod. du fichier"));
this.chooser = chooser;
this.chooser.addPropertyChangeListener(this);
setBorder(new TitledBorder("Preview"));
}
public void propertyChange(PropertyChangeEvent e) {
String prop = e.getPropertyName();
if(JFileChooser.SELECTED_FILE_CHANGED_PROPERTY.equals(prop)){
file = (File) e.getNewValue();
if(file == null){
clear();
return;
}
vueSysteme = FileSystemView.getFileSystemView();
Locale locale = Locale.getDefault();
NumberFormat nf = NumberFormat.getInstance(locale);
DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.SHORT, locale);
icone.setIcon(vueSysteme.getSystemIcon(file));
nom.setText(vueSysteme.getSystemDisplayName(file));
description.setText(vueSysteme.getSystemTypeDescription(file));
String tailleFile = nf.format(file.length()/1024.0)+" Kb";
taille.setText(tailleFile);
String dateFile = dateFormat.format(new Date(file.lastModified()));
date.setText("Dernière mod : "+dateFile);
s1 = vueSysteme.getSystemDisplayName(file);
s2 = vueSysteme.getParentDirectory(file).toString();
}
else{
clear();
}
}
private void clear(){
icone.setIcon(null);
nom.setText("Nom du fichier");
description.setText("Description fichier");
taille.setText("Taille du fichier");
date.setText("Dernière mod. du fichier");
}
} |