Swing上传头像功能:
Swing初学者,磨了一个上午才做出来的,分享一下具体的代码。
不合理的地方希望指出,谢谢。
运行效果图:
具体代码:
public void a(JButton btnNewButton){
//创建一个文件选择器对象
JFileChooser choose = new JFileChooser();
//设置文件不可多选
choose.setMultiSelectionEnabled(false);
//创建一个文件过滤器对象 过滤出JPG PNG格式的文件(这里过滤只是再文件选择器中显示过滤,而不是别的文件不能选择!!)
FileNameExtensionFilter filter = new FileNameExtensionFilter("jpg","png");
//将过滤器设置进文件选择器
choose.setFileFilter(filter);
//设置一个打开文件选择器的触发组件 这个方法的返回值是int型 返回的是两个常量 1 0
int returnVar = choose.showOpenDialog(btnNewButton);
//判断returnVar的值,如果返回的是APPROVE_OPTION,则用户选择了YES或者OK,也就是确定了上传的文件
//APPROVE_OPTION对应的常量为0
if(returnVar == choose.APPROVE_OPTION){
//得到选择的文件
File f = choose.getSelectedFile();
//创建一个fileName得到选择文件的名字
String fileName =f.getName();
//lastIndexOf(".") 返回"."在文件名中最后一次出现的下标
//substring(int index)从指定的index开始截取后面的字符串
//比如: a.txt 最后一次出现的.下标是 1 substring(1)就是从下标1的位置开始截取 截取后的新字符串为 .