在制作網(wǎng)頁(yè)時(shí),經(jīng)常要選擇文件并上傳,使用傳統(tǒng)的InputFile控件,每次只能選擇一個(gè)文件,甚為不便。如果使用Microsoft的公共對(duì)話框組件就方便很多了,它可以一次就選擇多個(gè)文件,就像QQ空間的相片上傳功能一樣。如何實(shí)現(xiàn)呢?經(jīng)過多次試驗(yàn),終于搞掂。
源代碼如下:
至于對(duì)話框參數(shù)設(shè)置,可參考下面說(shuō)明
打開或保存對(duì)話框參數(shù)
常數(shù) 值 描述
cdlOFNAllowMultiselect &H200 它指定文件名列表框允許多重選擇。
運(yùn)行時(shí),通過按 SHIFT 鍵以及使用 UP ARROW 和 DOWN ARROW 鍵可選擇多個(gè)文件。作完此操作后,F(xiàn)ileName 屬性就返回一個(gè)包含全部所選文件名的字符串。串中各文件名用空格隔開。
cdlOFNCreatePrompt &H2000 當(dāng)文件不存在時(shí)對(duì)話框要提示創(chuàng)建文件。該標(biāo)志自動(dòng)設(shè)置 cdlOFNPathMustExist 和 cdlOFNFileMustExist 標(biāo)志。
cdlOFNExplorer &H80000 它使用類似資源管理器的打開一個(gè)文件的對(duì)話框模板。適用于 Windows 95 和 Windows NT 4.0。
CdlOFNExtensionDifferent &H400 它指示返回的文件擴(kuò)展名與 DefaultExt 屬性指定的擴(kuò)展名不一致。如果 DefaultExt 屬性是 Null,或者擴(kuò)展相匹配,或者沒有擴(kuò)展時(shí),此標(biāo)志不設(shè)置。當(dāng)關(guān)閉對(duì)話框時(shí),可以檢查這個(gè)標(biāo)志的值。
cdlOFNFileMustExist &H1000 它指定只能輸入文件名文本框已經(jīng)存在的文件名。如果該標(biāo)志被設(shè)置,則當(dāng)用戶輸入非法的文件名時(shí),要顯示一個(gè)警告。該標(biāo)志自動(dòng)設(shè)置 cdlOFNPathMustExist 標(biāo)志。
cdlOFNHelpButton &H10 使對(duì)話框顯示幫助按鈕。
cdlOFNHideReadOnly &H4 隱藏只讀復(fù)選框。
cdlOFNLongNames &H200000 使用長(zhǎng)文件名。
cdlOFNNoChangeDir &H8 強(qiáng)制對(duì)話框?qū)?duì)話框打開時(shí)的目錄置成當(dāng)前目錄。
CdlOFNNoDereferenceLinks &H100000 不要間接引用外殼鏈接(也稱作快捷方式)。缺省時(shí),選取外殼鏈接會(huì)引起它被外殼間接引用。
cdlOFNNoLongNames &H40000 無(wú)長(zhǎng)文件名。
CdlOFNNoReadOnlyReturn &H8000 它指定返回的文件不能具有只讀屬性,也不能在寫保護(hù)目錄下面。
cdlOFNNoValidate &H100 它指定公共對(duì)話框允許返回的文件名中含有非法字符。
cdlOFNOverwritePrompt &H2 使“另存為”對(duì)話框當(dāng)選擇的文件已經(jīng)存在時(shí)應(yīng)產(chǎn)生一個(gè)信息框,用戶必須確認(rèn)是否覆蓋該文件。
cdlOFNPathMustExist &H800 它指定只能輸入有效路徑。如果設(shè)置該標(biāo)志,輸入非法路徑時(shí),應(yīng)顯示一個(gè)警告信息。
cdlOFNReadOnly &H1 建立對(duì)話框時(shí),只讀復(fù)選框初始化為選定。該標(biāo)志也指示對(duì)話框關(guān)閉時(shí)只讀復(fù)選框的狀態(tài)。
cdlOFNShareAware &H4000 它指定忽略共享沖突錯(cuò)誤。
如對(duì)本文有疑問,請(qǐng)?zhí)峤坏浇涣髡搲?,廣大熱心網(wǎng)友會(huì)為你解答!! 點(diǎn)擊進(jìn)入論壇