Main.java Source code

Java tutorial

Introduction

Here is the source code for Main.java

Source

import java.awt.Dimension;
import java.awt.Graphics;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import java.io.File;

import javax.swing.JComponent;
import javax.swing.JFileChooser;

public class Main {
    public static void main(String[] argv) {
        JFileChooser chooser = new JFileChooser();
        chooser.setAccessory(new MyAccessory(chooser));
        chooser.showOpenDialog(null);
    }
}

class MyAccessory extends JComponent implements PropertyChangeListener {
    public MyAccessory(JFileChooser chooser) {
        chooser.addPropertyChangeListener(this);
        setPreferredSize(new Dimension(50, 50));
    }

    public void propertyChange(PropertyChangeEvent evt) {
        if (JFileChooser.SELECTED_FILE_CHANGED_PROPERTY.equals(evt.getPropertyName())) {
            JFileChooser chooser = (JFileChooser) evt.getSource();
            // Get the new selected file
            File newFile = (File) evt.getNewValue();
            repaint();
        }
    }

    public void paint(Graphics g) {
        // Paint a preview of the selected file
    }
}