java开发实战1200(I)-------411显示文件属性

package fileoperation;

import java.awt.GridBagLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.util.Date;

import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class modifyFileAttribute extends JFrame {
    public JButton chooseButton;
    public JTextField sizeField,pathField,urField,modifyDateField;
    public JCheckBox readCheckBox,writeCheckBox,hideCheckBox;
    public JLabel path_label,size_label,choose_label,ur_label,modify_label;
    public modifyFileAttribute(){
        GridBagLayout layout=new GridBagLayout();
        setLayout(layout);
        chooseButton=new JButton("选择文件");
        add(chooseButton,new GBC(0,0));
        choose_label=new JLabel("");
        add(choose_label,new GBC(1,0).setFill(GBC.HORIZONTAL));
        
        size_label=new JLabel("文件大小:");
        sizeField=new JTextField("",20);
        add(size_label,new GBC(0,1));
        add(sizeField,new GBC(1,1));
        
        path_label=new JLabel("文件路径:");
        pathField=new JTextField("",20);
        add(path_label,new GBC(0,3));
        add(pathField,new GBC(1,3));
        
        ur_label=new JLabel("UR路径:");
        urField=new JTextField("",20);
        add(ur_label,new GBC(0,4));
        add(urField,new GBC(1,4));
        
        modify_label=new JLabel("最近修改日期:");
        modifyDateField=new JTextField("",20);
        add(modify_label,new GBC(0,5));
        add(modifyDateField,new GBC(1,5));
        
        JPanel panel=new JPanel();
        readCheckBox=new JCheckBox("只读");
        writeCheckBox=new JCheckBox("只写");
        hideCheckBox=new JCheckBox("禁止");
        panel.add(readCheckBox);
        panel.add(writeCheckBox);
        panel.add(hideCheckBox);
        add(panel,new GBC(1,6));
        chooseButton.addActionListener(new ActionListener(){
            public void actionPerformed(ActionEvent e){
                JFileChooser chooser=new JFileChooser();
                chooser.showOpenDialog(modifyFileAttribute.this);
                File file=chooser.getSelectedFile();
                choose_label.setText(file.getName());
                sizeField.setText(file.length()+"");
                pathField.setText(file.getPath());
                urField.setText(file.toURI()+"");
                urField.select(0, 0);
                modifyDateField.setText(new Date(file.lastModified())+"");
                readCheckBox.setSelected(file.canRead());
                writeCheckBox.setSelected(file.canWrite());
                hideCheckBox.setSelected(file.isHidden());
                
            }
        });
        pack();
        
    }

}

package fileoperation;

//网格组布局

import java.awt.GridBagConstraints;
import java.awt.Insets;

public class GBC extends GridBagConstraints {

    public GBC(int gridx,int gridy){
        this.gridx=gridx;
        this.gridy=gridy;
    }
    public GBC(int gridx,int gridy,int gridwidth,int gridheight){
        this.gridx=gridx;
        this.gridy=gridy;
        this.gridwidth=gridwidth;
        this.gridheight=gridheight;
    }
    public GBC setAnchor(int anchor){
        this.anchor=anchor;
        return this;
    }
    public GBC setFill(int fill){
        this.fill=fill;
        return this;
    }
    public GBC setWeight(double weightx,double weighty){
        this.weightx=weightx;
        this.weighty=weighty;
        return this;
    }
    public GBC setInsets(int distance){
        this.insets=new Insets(distance,distance,distance,distance);
        return this;
    }
    public GBC setInsets(int top,int left,int bottom,int right){
        this.insets=new Insets(top,left,bottom,right);
        return this;
    }
    public GBC setIpad(int ipadx,int ipady){
        this.ipadx=ipadx;
        this.ipady=ipady;
        return this;
    }
}
 

猜你喜欢

转载自blog.csdn.net/zdm198255/article/details/83536404