📄 filenamebean.java
字号:
/**
* @version 1.20 1999-09-24
* @author Cay Horstmann
*/
import java.awt.*;
import java.awt.event.*;
import java.beans.*;
import java.io.*;
import javax.swing.*;
public class FileNameBean extends JPanel
implements Serializable
{ public FileNameBean()
{ dialogButton = new JButton("...");
nameField = new JTextField("");
chooser = new JFileChooser();
chooser.setCurrentDirectory(new File("."));
chooser.setFileFilter(
new javax.swing.filechooser.FileFilter()
{ public boolean accept(File f)
{ String name = f.getName().toLowerCase();
return name.endsWith("." + defaultExtension)
|| f.isDirectory();
}
public String getDescription()
{ return defaultExtension + " files";
}
});
setLayout(new GridBagLayout());
GridBagConstraints gbc = new GridBagConstraints();
gbc.weightx = 100;
gbc.weighty = 100;
gbc.anchor = GridBagConstraints.WEST;
gbc.fill = GridBagConstraints.BOTH;
add(nameField, gbc, 0, 0, 1, 1);
dialogButton.addActionListener(
new ActionListener()
{ public void actionPerformed(ActionEvent evt)
{ showFileDialog();
}
});
nameField.setEditable(false);
gbc.weightx = 0;
gbc.anchor = GridBagConstraints.EAST;
gbc.fill = GridBagConstraints.NONE;
add(dialogButton, gbc, 1, 0, 1, 1);
}
public void add(Component c, GridBagConstraints gbc,
int x, int y, int w, int h)
{ gbc.gridx = x;
gbc.gridy = y;
gbc.gridwidth = w;
gbc.gridheight = h;
add(c, gbc);
}
public void showFileDialog()
{ int r = chooser.showOpenDialog(null);
if(r == JFileChooser.APPROVE_OPTION)
{ String name
= chooser.getSelectedFile().getAbsolutePath();
setFileName(name);
}
}
public void setFileName(String newValue)
{ String oldValue = nameField.getText();
firePropertyChange("fileName", oldValue, newValue);
nameField.setText(newValue);
}
public String getFileName()
{ return nameField.getText();
}
public Dimension getMinimumSize()
{ return new Dimension(XMINSIZE, YMINSIZE);
}
public String getDefaultExtension()
{ return defaultExtension;
}
public void setDefaultExtension(String s)
{ defaultExtension = s;
}
private static final int XMINSIZE = 200;
private static final int YMINSIZE = 20;
private JButton dialogButton;
private JTextField nameField;
private JFileChooser chooser;
private String defaultExtension = "gif";
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -