亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? winexplorer.java~1~

?? 一個簡單的類似windows瀏覽器的Applet
?? JAVA~1~
字號:
package myapplet;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.text.DateFormat;
import javax.swing.event.*;
import javax.swing.table.*;
import javax.swing.tree.*;
import javax.swing.filechooser.*;
import java.io.*;
import java.io.File;
import java.util.*;

public class WinExplorer extends JFrame implements TreeSelectionListener{
 JPanel contentPane=(JPanel)getContentPane();;
 JMenuBar menuBar = new JMenuBar();
 JMenu menuFile = new JMenu("文件");
 JMenuItem menuItemExit = new JMenuItem("退出");
 JToolBar toolBar = new JToolBar();
 JButton bttUp = new JButton();
 Icon iconUp=UIManager.getIcon("FileChooser.upFolderIcon");
 JLabel statusBar = new JLabel();
 DetailTable detailTable = new DetailTable();
 JScrollPane sp = new JScrollPane(detailTable);
 JSplitPane split = new JSplitPane();
 FileSystemView fileSystemView=FileSystemView.getFileSystemView();
 File root=fileSystemView.getRoots()[0];
 FileNode rt=new FileNode(fileSystemView.getRoots()[0]);//setRoot();
 DefaultTreeModel treeModel=new DefaultTreeModel(rt);
 JTree tree = new JTree(treeModel);
 TreePath recordTp=new TreePath(rt);
 JFrame w;
 public FileNode setRoot(){
   FileNode root1=new FileNode(fileSystemView.getRoots()[0]);
   File[] file=root.listFiles();
   for(int f=0;f<file.length;f++){
     if(file[f].isDirectory()){
//       System.out.println("this root direcctory is " + file[f].toString());
       root1.add(new FileNode(file[f]));
     }
   }
   return root1;
 }
 public static void setDisplay(){
   try {
       UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
       Font font=new Font("宋體",Font.PLAIN,12);
       String names[]={"Label","CheckBox","PopupMenu","TextPane",
                      "MenuItem","CheckBoxMenuItem","RadioButtonMenuItem",
                      "ComboBox","Button","Tree","ScrollPane","TabbedPane",
                      "EditorPane","TitledBorder","Menu","TextArea","OptionPane",
                      "MenuBar","ToolBar","ToggleButton","ToolTip","ProgressBar",
                      "TableHeader","Panel","List","ColorChooser","PasswordField",
                      "TextField","Table","Label","Viewport","RadioButtonMenuItem",
                      "RadioButton"};
       for(int i=0;i<names.length;i++)UIManager.put(names[i]+".font",font);
       UIManager.put("Label.foreground",Color.black);
       UIManager.put("Border.foreground",Color.black);
       UIManager.put("TitledBorder.titleColor",Color.black);

    }catch(Exception e){
       e.printStackTrace();
    }
 }

/* public static void main(String argv[]){
     WinExplorer we=new WinExplorer();
     we.setVisible(true);
     we.show();
 }*/
 public WinExplorer() {
   w=(JFrame)this;
   setDisplay();
   contentPane.setLayout(new BorderLayout());
   Dimension dimension = getToolkit().getScreenSize();
   int i = (dimension.width - 640) / 2;
   int j = (dimension.height - 480) / 2;
   setBounds(i,j,640,480);
   setTitle("資源管理器");
   setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
   setJMenuBar(menuBar);
   statusBar.setText(" ");
   menuItemExit.addActionListener(new ActionListener()  {
     public void actionPerformed(ActionEvent ae) {
       w.hide();
       w.dispose();
   }
   });
   bttUp.setIcon(iconUp);
   bttUp.addActionListener(new java.awt.event.ActionListener() {
     public void actionPerformed(ActionEvent e) {
       try{
           TreePath upPath=tree.getSelectionPath().getParentPath();

           if(upPath!=null){
                 tree.setSelectionPath(upPath);
                 tree.scrollPathToVisible(upPath);
           }
        }catch(Exception ex){}
     }
   });
   split.setDividerSize(6);
   split.setLeftComponent(new JScrollPane(tree));
   split.setRightComponent(sp);
   split.setDividerLocation(180);
   sp.getViewport().setBackground(Color.white);
   menuFile.add(menuItemExit);
   menuBar.add(menuFile);
   contentPane.add(toolBar, BorderLayout.NORTH);
   toolBar.add(bttUp, null);
   contentPane.add(statusBar, BorderLayout.SOUTH);
   contentPane.add(split, BorderLayout.CENTER);
   tree.addTreeExpansionListener(new MyExpandsionListener());
   tree.setCellRenderer(new MyTreeCellRenderer());
   tree.addTreeSelectionListener(this);
   tree.setComponentOrientation(ComponentOrientation.UNKNOWN);

 }

 public void valueChanged(TreeSelectionEvent e){
    Object obj=tree.getLastSelectedPathComponent();
    recordTp=e.getPath();
    if(obj==null)return;
    else {
      detailTable.setParent( ( (FileNode) obj).getFile());
    }
 }

 class MyTreeCellRenderer extends DefaultTreeCellRenderer {
   public MyTreeCellRenderer() {}
   public Component getTreeCellRendererComponent(JTree tree,Object value,
             boolean sel,boolean expanded,boolean leaf,int row,boolean hasFocus) {
       super.getTreeCellRendererComponent(tree,value,sel,expanded,leaf,row,hasFocus);
       setIcon(fileSystemView.getSystemIcon(((FileNode)value).getFile()));
       return this;
   }
 }
 class MyExpandsionListener implements TreeExpansionListener {
   public MyExpandsionListener() {}
   public void treeExpanded(TreeExpansionEvent event) {
       if (tree.getLastSelectedPathComponent()==null){return;}
       tree.setCursor(new Cursor(Cursor.WAIT_CURSOR));
       TreePath path =event.getPath();
       FileNode node = (FileNode)path.getLastPathComponent();
       node.explore();
       treeModel.nodeStructureChanged(node);
       tree.setCursor(new Cursor(Cursor.DEFAULT_CURSOR));
   }
   public void treeCollapsed(TreeExpansionEvent event) {}
 }
 class FileNode extends DefaultMutableTreeNode {

     private boolean explored = false;
     public FileNode(File file)  { setUserObject(file); }
     public boolean getAllowsChildren() { return isDirectory(); }
     public boolean isLeaf()     { return !isDirectory();}
     public File getFile()        { return (File)getUserObject(); }
     public boolean isExplored() { return explored; }
     public void setExplored(boolean b){ explored=b;}
     public boolean isDirectory() { return getFile().isDirectory();}
     public String toString() {
         File file = (File)getUserObject();
         String filename = file.toString();
         int index = filename.lastIndexOf(File.separator);
         return (index != -1 && index != filename.length()-1)
                   ? filename.substring(index+1) : filename;
     }
     public void explore() {
         if(!isExplored()) {
             File file = getFile();
             File[] children = file.listFiles();
             if(children==null||children.length==0)return;
             for(int i=0; i < children.length; ++i)
             {
                  File f=children[i];
                  if(f.isDirectory())add(new FileNode(children[i]));
             }
             explored = true;
         }
    }
 }
 class DetailTable extends JTable{
       DetailTableModel model=new DetailTableModel();
       public DetailTable(){
           setModel(model);
           setShowGrid(false);
           TableColumnModel colModel = getColumnModel();
           for (int i=0;i<3;i++)
             colModel.getColumn(i).setCellRenderer(new DetailsTableCellRenderer());
           setRowHeight(18);
           this.addMouseListener(new MouseAdapter(){
               public void mouseClicked(MouseEvent e) {
                   if(e.getClickCount()==2){
                      for (int i = 0; i <getRowCount(); i++) {
                           if(getCellRect(i,0,true).contains(e.getPoint())){
                               openSelect(model.getValueAt(getSelectedRow(),0));
                               break;
                           }
                       }
                   }
               }
           });
       }
       public void openSelect(Object obj){
//           Object obj=model.getValueAt(getSelectedRow(),0);
           if(obj==null)return;
           File f=(File)obj;
           if(f.isDirectory()){
               if(obj==null)return;
                else {
                  int index=tree.getRowForPath(recordTp);
                  tree.setSelectionRow(index);
                  tree.expandRow(index);
                  String strName="";
                  if(tree.getLastSelectedPathComponent()==null)return;
                  else{
                    if(fileSystemView.isDrive(f)||f.getName().trim().equals("ShellFolder:"))
                      strName=f.toString();
                      else{
                          strName=f.getName();
                      }
             //         System.out.println("the last selected path component "+tree.getLastSelectedPathComponent().toString()+" ths strname is "+strName);
                  while (!(tree.getLastSelectedPathComponent().toString().trim().equals(strName))){
                    tree.setSelectionRow(index++);
                  }
                  tree.setSelectionPath(tree.getPathForRow(index-1));
                  tree.expandRow(index-1);
                  }
                }

           }
           else{
            try {
              String osname=System.getProperty("os.name");
              if(osname.equals("Windows 2000")||osname.equals("Windows xp")){
                Process p = Runtime.getRuntime().exec("cmd.exe /c \"" + f.getPath() +
                                                      "\"");
              }
            }
            catch (IOException ex) {
            }
           }
       }
       public void setParent(File parent){
           model.removeAllRows();
           File list[]=parent.listFiles();
           if(list==null)return;
           Vector vDir=new Vector(),vFile=new Vector();
           for (int i = 0; i < list.length; i++) {
               if(list[i].isDirectory()&&!(list[i].getName().trim().equals("ShellFolder:")))vDir.add(list[i]);
               else vFile.add(list[i]);
           }
         sortElements(vFile);
           sortElements(vDir);
            for (int i = 0; i < vDir.size(); i++)model.addFile((File)vDir.elementAt(i));
           for (int i = 0; i < vFile.size(); i++)model.addFile((File)vFile.elementAt(i));
    }
       public void sortElements(Vector v)
        {
           for(int i=0;i<v.size();i++)
           {
                int k=i;
                for(int j=i+1;j<v.size();j++){
                    File fa=(File)v.elementAt(j);
                    File fb=(File)v.elementAt(k);
                    if(fileSystemView.getSystemDisplayName(fa).toLowerCase().compareTo(
                         fileSystemView.getSystemDisplayName(fb).toLowerCase())<0)k=j;
                }
                if(k!=i)swap(k,i,v);
           }
        }
        private void swap(int loc1,int loc2,Vector v){
            Object tmp=v.elementAt(loc1);
            v.setElementAt(v.elementAt(loc2),loc1);
            v.setElementAt(tmp,loc2);
        }
       class DetailTableModel extends DefaultTableModel {
           public DetailTableModel() {
               addColumn("名稱");
               addColumn("大小");
               addColumn("修改時間");
           }
           public void addFile(File f){
               addRow(new Object[]{f,new Double(f.length()/1024),
                    new java.sql.Date(f.lastModified())});
           }
           public void removeAllRows(){
               while(getRowCount()!=0) removeRow(0);
           }
           public boolean isCellEditable(int row, int column) {return false;}
       }
       class DetailsTableCellRenderer extends DefaultTableCellRenderer {
         DetailsTableCellRenderer() {}
         public Component getTableCellRendererComponent(JTable table, Object value,
                               boolean isSelected, boolean hasFocus, int row, int column) {
             if (column == 1){
                 setHorizontalAlignment(SwingConstants.TRAILING);
                 isSelected=hasFocus=false;
             }else if(column==2){
                 setHorizontalAlignment(SwingConstants.CENTER);
                 isSelected=hasFocus=false;
             }else setHorizontalAlignment(SwingConstants.LEADING);
             return super.getTableCellRendererComponent(
                         table, value, isSelected, hasFocus, row, column);
         }
         public void setValue(Object value) {
             setIcon(null);
             if (value instanceof File) {
                 File file = (File)value;
                 setText(fileSystemView.getSystemDisplayName(file));
                 setIcon(fileSystemView.getSystemIcon(file));
             }else{
                 super.setValue(value);
             }
         }
     }
   }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美系列一区二区| 成人av网站大全| 欧美日韩国产在线观看| 亚洲成av人片在线| 欧美一区二区三区喷汁尤物| 久久国产精品一区二区| 精品99一区二区| 成人一级视频在线观看| 自拍av一区二区三区| 在线观看日韩一区| 日日夜夜精品视频免费| 欧美xxxxx裸体时装秀| 国产露脸91国语对白| 国产精品久久一级| 欧美三区在线观看| 国内精品免费在线观看| 国产精品视频在线看| 在线免费观看一区| 日韩电影一区二区三区| 久久影院视频免费| 日本韩国视频一区二区| 男女男精品视频| 国产精品色在线| 91蜜桃传媒精品久久久一区二区| 亚洲一区av在线| 欧美成人官网二区| 色哟哟亚洲精品| 免费视频最近日韩| 国产精品免费网站在线观看| 欧美中文字幕一区| 国产一区二区女| 亚洲小说春色综合另类电影| 337p日本欧洲亚洲大胆精品| 在线视频你懂得一区| 国内精品免费**视频| 亚洲六月丁香色婷婷综合久久| 91精品国产综合久久久久久久久久 | 欧美日本在线播放| 国产激情视频一区二区三区欧美| 亚洲综合在线五月| 欧美国产乱子伦 | 久久av中文字幕片| 樱桃国产成人精品视频| 久久品道一品道久久精品| 欧美日韩在线观看一区二区| 成人午夜av电影| 日本中文字幕一区| 亚洲品质自拍视频| 国产亚洲一区二区三区四区| 欧美一区二区三区免费视频 | 亚洲午夜一区二区三区| 国产精品乱码一区二三区小蝌蚪| 777xxx欧美| 欧美日韩在线播| 91在线国产福利| 不卡在线视频中文字幕| 国产99精品国产| 国产综合色产在线精品| 男女男精品网站| 午夜欧美一区二区三区在线播放 | 亚洲国产wwwccc36天堂| 亚洲欧美另类综合偷拍| 国产欧美日本一区视频| 久久久蜜桃精品| 精品免费国产一区二区三区四区| 69堂亚洲精品首页| 欧美日韩国产高清一区二区| 91豆麻精品91久久久久久| 99久久综合精品| 成人国产亚洲欧美成人综合网| 国产精品小仙女| 国产成人午夜精品影院观看视频| 久久99热国产| 国产中文字幕精品| 精品制服美女丁香| 国产乱码字幕精品高清av| 国产一区二区三区视频在线播放| 久久er99精品| 亚洲国产成人91porn| 91蜜桃网址入口| 在线观看av一区| 欧美久久一二区| 91麻豆精品久久久久蜜臀| 欧美一区二区三区在线电影| 日韩一级高清毛片| 亚洲精品一区在线观看| 欧美激情资源网| 亚洲日本va午夜在线影院| 亚洲美女淫视频| 亚洲国产一区二区三区| 人人狠狠综合久久亚洲| 国产美女视频91| 成人精品视频.| 欧美视频在线一区二区三区 | 五月天中文字幕一区二区| 日韩国产精品久久久| 激情综合网激情| 成人国产精品免费观看| 欧美视频在线一区| 精品国产电影一区二区| 国产精品天天摸av网| 亚洲一区二区三区四区不卡| 久色婷婷小香蕉久久| 国产a视频精品免费观看| 日本高清无吗v一区| 日韩三级.com| 国产精品美女久久福利网站| 亚洲激情网站免费观看| 麻豆精品久久久| 91免费在线播放| 91精品蜜臀在线一区尤物| 国产片一区二区三区| 亚洲一区二区三区免费视频| 国内成人精品2018免费看| 99精品久久99久久久久| 制服视频三区第一页精品| 国产精品素人一区二区| 亚洲成a人在线观看| 国产91丝袜在线观看| 欧美日韩精品一区二区三区| 国产欧美一区在线| 日韩国产欧美在线播放| k8久久久一区二区三区| 欧美一级片在线观看| 中文字幕一区不卡| 国内精品免费在线观看| 欧美日韩免费观看一区二区三区| 欧美不卡一区二区三区| 一区二区三区四区国产精品| 国产麻豆视频精品| 欧美日本在线播放| 亚洲乱码中文字幕| 国产福利一区二区三区视频在线 | 国产99久久久久久免费看农村| 亚洲特级片在线| 国产一区二区免费在线| 欧美日韩视频一区二区| 国产精品三级av在线播放| 久久国内精品视频| 欧美日韩成人高清| 亚洲免费观看在线视频| 丰满白嫩尤物一区二区| 日韩精品一区二区三区老鸭窝| 亚洲乱码精品一二三四区日韩在线| 国产麻豆一精品一av一免费| 日韩欧美在线综合网| 亚洲电影视频在线| 色婷婷综合激情| 亚洲欧美日韩在线播放| 成人天堂资源www在线| 久久久久久久综合| 日本中文字幕一区二区视频| 欧美婷婷六月丁香综合色| 亚洲日本丝袜连裤袜办公室| 国产高清一区日本| 久久综合狠狠综合久久综合88| 免费高清在线一区| 91精品免费观看| 日韩成人伦理电影在线观看| 欧美日韩国产bt| 亚洲成av人片一区二区梦乃| 欧美日韩视频不卡| 日韩精品一二三| 91超碰这里只有精品国产| 日韩av一区二区在线影视| 欧美精品视频www在线观看| 亚洲午夜三级在线| 欧美精品丝袜中出| 久久精品国产99国产精品| 91精品国产91久久综合桃花| 蜜臀久久久久久久| 日韩欧美久久一区| 激情小说亚洲一区| 久久久欧美精品sm网站| 成人av免费在线播放| 成人理论电影网| 日韩午夜激情视频| 久久国产三级精品| 2017欧美狠狠色| 国产成人啪免费观看软件| 中国色在线观看另类| 波多野结衣亚洲一区| 一区二区三区高清不卡| 欧美伦理电影网| 久久er精品视频| 国产日韩精品视频一区| caoporm超碰国产精品| 亚洲伦理在线免费看| 欧美日韩不卡在线| 精品无人码麻豆乱码1区2区 | 蜜桃视频一区二区三区| 精品久久久久99| av不卡在线播放| 亚洲成人你懂的| 国产亚洲精品bt天堂精选| 99re热视频这里只精品| 日韩av在线播放中文字幕| 国产亚洲综合在线| 欧美最猛性xxxxx直播| 国模套图日韩精品一区二区 |