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

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

?? winexplorer.java

?? 一個簡單的類似windows瀏覽器的Applet
?? JAVA
字號:
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 JPanel implements TreeSelectionListener{

 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);
 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() {

   setDisplay();
   this.setLayout(new BorderLayout());
   Dimension dimension = getToolkit().getScreenSize();
   int i = (dimension.width - 640) / 2;
   int j = (dimension.height - 480) / 2;
   setBounds(i,j,640,480);
   statusBar.setText(" ");

   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);

   this.add(toolBar, BorderLayout.NORTH);
   toolBar.add(bttUp, null);
   this.add(statusBar, BorderLayout.SOUTH);
   this.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一区二区| 精品成a人在线观看| 韩国v欧美v亚洲v日本v| 国产精品美女www爽爽爽| 99久久精品国产毛片| 亚洲欧美电影一区二区| 欧美日韩大陆一区二区| 捆绑紧缚一区二区三区视频| 国产精品视频免费| 在线看国产日韩| 日韩av一二三| 国产精品毛片久久久久久| 91蝌蚪porny| 免费在线观看成人| 中文字幕成人在线观看| 欧美性猛交xxxxxxxx| 欧美日韩午夜在线视频| 蜜桃久久精品一区二区| 久久99久久99| 一本大道久久a久久综合婷婷| 日本高清不卡aⅴ免费网站| 欧美一区二区三区免费视频 | 欧美午夜精品久久久久久孕妇| 91香蕉视频mp4| 欧美日韩精品久久久| 精品少妇一区二区三区免费观看| 久久久久成人黄色影片| 视频一区在线播放| 国产91高潮流白浆在线麻豆| 欧美色成人综合| 精品国产三级电影在线观看| 日本一不卡视频| 欧美系列在线观看| 日韩电影在线免费观看| 自拍偷自拍亚洲精品播放| 国产欧美日韩亚州综合| 亚洲精品videosex极品| 成人av免费观看| 丝袜亚洲另类欧美综合| 舔着乳尖日韩一区| 日韩精品中文字幕一区| 国产99精品国产| 美女视频一区在线观看| 亚洲欧美一区二区三区极速播放| www国产精品av| 欧美精品色综合| 一本色道a无线码一区v| 国产综合久久久久久鬼色| 色综合久久综合网欧美综合网| 久久色视频免费观看| 免费高清视频精品| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 精品国产一区二区三区久久影院| 久久久久九九视频| 国产成人8x视频一区二区| 午夜精品福利在线| 亚洲黄色在线视频| 国产精品久久久久久久久免费樱桃| 日韩小视频在线观看专区| 欧美三级日本三级少妇99| 一本一道波多野结衣一区二区 | 亚洲欧美日韩系列| 国产欧美日本一区二区三区| 日韩精品中文字幕一区| 91麻豆精品国产91久久久资源速度| 91丨九色丨国产丨porny| 国产a级毛片一区| 懂色av中文一区二区三区| 国产伦精品一区二区三区视频青涩| 天堂资源在线中文精品| 亚洲妇女屁股眼交7| 亚洲一区二区三区视频在线播放| 亚洲欧美在线观看| 日韩美女视频一区二区| 1024亚洲合集| 一区二区三区波多野结衣在线观看| 中日韩免费视频中文字幕| 国产精品国产精品国产专区不片| 国产精品乱人伦一区二区| 国产精品久久看| 国产精品乱人伦| 日韩一区中文字幕| 亚洲一二三四区| 天天做天天摸天天爽国产一区| 午夜精品成人在线| 日韩av不卡一区二区| 久久99精品国产麻豆不卡| 国产乱一区二区| 成人午夜免费视频| 色猫猫国产区一区二在线视频| 色婷婷国产精品综合在线观看| 欧美亚洲综合另类| 欧美一二三四区在线| 久久五月婷婷丁香社区| 欧美韩国日本综合| 一区二区三区四区在线免费观看| 亚洲福利视频一区二区| 蜜臀91精品一区二区三区| 风间由美一区二区三区在线观看 | 成人国产免费视频| 色综合久久久久| 日韩一区二区三区精品视频| 久久综合久久综合九色| 中文字幕亚洲在| 午夜av一区二区| 国产一区在线不卡| 91网站在线播放| 91精品国产综合久久香蕉的特点| 精品国产3级a| 一区二区视频免费在线观看| 蜜臂av日日欢夜夜爽一区| av福利精品导航| 5月丁香婷婷综合| 国产精品久久久久久一区二区三区| 亚洲国产欧美日韩另类综合| 精品一区二区在线看| 色综合久久六月婷婷中文字幕| 欧美午夜一区二区三区| 国产日韩欧美制服另类| 亚洲中国最大av网站| 激情伊人五月天久久综合| 国产成人鲁色资源国产91色综 | 欧美丰满一区二区免费视频| 久久精品视频在线看| 亚洲成人自拍一区| 成人精品免费看| 日韩欧美中文字幕公布| 亚洲三级久久久| 国产一区三区三区| 欧美日韩国产色站一区二区三区| 久久精品夜色噜噜亚洲a∨| 亚洲高清免费在线| 成人激情文学综合网| 日韩欧美久久一区| 亚洲va韩国va欧美va精品| 成人激情小说乱人伦| 久久综合狠狠综合久久激情| 午夜激情一区二区| 欧洲精品在线观看| 国产精品福利一区二区三区| 国产精品一区二区久久不卡 | 一区二区在线观看不卡| 国产盗摄一区二区三区| 精品久久久久香蕉网| 日日欢夜夜爽一区| 欧美亚洲国产怡红院影院| 成人欧美一区二区三区| 国产成人免费在线观看不卡| 欧美一区二区国产| 五月天精品一区二区三区| 91浏览器在线视频| 亚洲欧洲日产国产综合网| 高清beeg欧美| 国产精品你懂的在线欣赏| 国产一区二区三区在线观看精品| 日韩免费成人网| 久久狠狠亚洲综合| 欧美α欧美αv大片| 蜜臀国产一区二区三区在线播放| 欧美情侣在线播放| 亚洲午夜成aⅴ人片| 在线视频国产一区| 一区二区视频在线看| 日本韩国精品在线| 亚洲精品中文字幕在线观看| 91在线视频官网| 国产精品污污网站在线观看| 国产电影精品久久禁18| 国产亚洲精品资源在线26u| 国产一区激情在线| 久久久久高清精品| 成人开心网精品视频| 中文av字幕一区| 日本丶国产丶欧美色综合| 伊人婷婷欧美激情| 99久久精品久久久久久清纯| 国产日本一区二区| aaa欧美色吧激情视频| 一区二区三区91| 欧美一区二区三区系列电影| 麻豆国产欧美日韩综合精品二区| 欧美精品一区二区三区在线播放| 国产成人小视频| 一区二区三区精品视频在线| 欧美日韩免费高清一区色橹橹| 国产日韩欧美精品在线| 成人黄色片在线观看| 亚洲欧美日韩小说| 3d动漫精品啪啪一区二区竹菊| 久久精品国产久精国产| 国产女同互慰高潮91漫画| 91亚洲国产成人精品一区二区三| 亚洲一二三四在线观看| 欧美不卡在线视频| 色94色欧美sute亚洲13| 美女在线观看视频一区二区|