Here you can find the source of createBrowseButton(final JTextField txtInput, final Window parent, final boolean directoryBrowser)
public static JButton createBrowseButton(final JTextField txtInput, final Window parent, final boolean directoryBrowser)
//package com.java2s; /*//from w ww .ja v a 2 s . c o m * Copyright 2004-2010 Information & Software Engineering Group (188/1) * Institute of Software Technology and Interactive Systems * Vienna University of Technology, Austria * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.ifs.tuwien.ac.at/dm/somtoolbox/license.html * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import java.awt.Window; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.File; import javax.swing.JButton; import javax.swing.JFileChooser; import javax.swing.JTextField; public class Main { public static JButton createBrowseButton(final JTextField txtInput, final Window parent, final boolean directoryBrowser) { JButton btnChooser = new JButton(); btnChooser.setText("..."); btnChooser.setToolTipText("Browse for the " + (directoryBrowser ? "directory" : "file")); btnChooser.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { JFileChooser fileChooser = new JFileChooser(); fileChooser .setFileSelectionMode(directoryBrowser ? JFileChooser.DIRECTORIES_ONLY : JFileChooser.FILES_ONLY); if (txtInput.getText().trim().length() > 0) { File current = new File(txtInput.getText()); if (directoryBrowser && !current.isDirectory()) { current = current.getParentFile(); } fileChooser.setCurrentDirectory(current); } int result; result = fileChooser.showOpenDialog(parent); if (result == JFileChooser.APPROVE_OPTION) { final File selectedFile = fileChooser.getSelectedFile(); txtInput.setText(selectedFile.getAbsolutePath()); } } }); return btnChooser; } }