• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            幽幽
             
            posts - 51,  comments - 28,  trackbacks - 0
            1、基本用法

            JFileChooser dlg = new JFileChooser();
            dlg.setDialogTitle("Open JPEG file");
            int result = dlg.showOpenDialog(this);  // 打開"打開文件"對話框
            // int result = dlg.showSaveDialog(this);  // 打"開保存文件"對話框
            if (result == JFileChooser.APPROVE_OPTION) {
            File file = dlg.getSelectedFile();
            ...
            }

            2、自定義FileFilter

            JDK沒有提供默認的文件過濾器,但提供了過濾器的抽象超類,我們可以繼承它。

            import javax.swing.filechooser.FileFilter;

            public final class PictureFileFilter extends FileFilter {

            private String extension;

            private String description;

            public PictureFileFilter(String extension, String description) {
            super();
            this.extension = extension;
            this.description = description;
            }

            public boolean accept(File f) {
            if (f != null) {
            if (f.isDirectory()) {
            return true;
            }
            String extension = getExtension(f);
            if (extension != null && extension.equalsIgnoreCase(this.extension)) {
            return true;
            }
            }
            return false;
            }

            public String getDescription() {
            return description;
            }

            private String getExtension(File f) {
            if (f != null) {
            String filename = f.getName();
            int i = filename.lastIndexOf('.');
            if (i > 0 && i < filename.length() - 1) {
            return filename.substring(i + 1).toLowerCase();
            }
            }
            return null;
            }

            }

            其實主要就是accept(File f)函數。上例中只有一個過濾器,多個過濾器可參考JDK目錄中“demo\jfc\FileChooserDemo\src”中的“ExampleFileFilter.java”


            3、多選

            在基本用法中,設置

            c.setMultiSelectionEnabled(true);

            即可實現文件的多選。

            讀取選擇的文件時需使用

            File[] files = c.getSelectedFiles();

            4、選擇目錄

            利用這個打開對話框,不僅可以選擇文件,還可以選擇目錄。

            其實,對話框有一個FileSelectionMode屬性,其默認值為“JFileChooser.FILES_ONLY”,只需要將其修改為“JFileChooser.DIRECTORIES_ONLY”即可。

            JFileChooser c = new JFileChooser();
            c.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
            c.setDialogTitle("Select path to save");
            int result = c.showOpenDialog(PrintDatetime.this);
            if (result == JFileChooser.APPROVE_OPTION) {
            String path = c.getSelectedFile().getAbsolutePath());
            ...
            }

            posted on 2008-08-08 01:38 幽幽 閱讀(10135) 評論(1)  編輯 收藏 引用 所屬分類: Java

            FeedBack:
            # re: swing中JFileChooser的用法[未登錄]
            2009-08-06 20:38 | kk
            我被博客的music嚇到了,因為緩沖了巨長時間
            不過還挺好聽  回復  更多評論
              

            <2025年8月>
            272829303112
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            常用鏈接

            留言簿(6)

            隨筆分類(35)

            隨筆檔案(51)

            文章分類(3)

            文章檔案(3)

            相冊

            我的鏈接

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            97久久香蕉国产线看观看| 大伊人青草狠狠久久| 99久久国产精品免费一区二区 | 亚洲国产成人精品无码久久久久久综合| 2020最新久久久视精品爱| 国产精品99久久久精品无码| 亚洲αv久久久噜噜噜噜噜| 国产午夜精品久久久久九九电影| 久久精品国产亚洲AV久| 久久精品成人| 成人国内精品久久久久影院| 亚洲美日韩Av中文字幕无码久久久妻妇| 国产三级久久久精品麻豆三级| 亚洲国产高清精品线久久 | 国内精品久久久久久野外| 中文字幕无码久久人妻| 精品国产婷婷久久久| 国产精品一久久香蕉国产线看| 国内精品伊人久久久影院| 久久国产综合精品五月天| 久久久久四虎国产精品| 久久久久久久久久久久中文字幕 | 国产人久久人人人人爽| 亚洲AV日韩AV永久无码久久| 色青青草原桃花久久综合| 久久久久18| 性做久久久久久免费观看| 久久精品不卡| 亚洲欧美日韩久久精品| 久久午夜免费视频| 久久精品中文字幕一区| 亚洲AV无码久久精品成人| 青草国产精品久久久久久| 久久久久久久久无码精品亚洲日韩 | 久久丝袜精品中文字幕| 日本加勒比久久精品| 久久se精品一区二区影院| 久久精品国产99国产精品| 色天使久久综合网天天| 伊人久久大香线蕉AV一区二区| 亚洲国产精品无码久久青草|