情報
作者名:YouTubeダウンロードし放題
引用元:なし
概要
「ファイル選択」命令よりリッチな感じの「ファイルを開く」ダイアログを生成できます
サンプル
「すべてのファイル (*.*),*.*
テキストファイル (*.txt),*.txt」を「C:\」でリッチファイル選択
それを表示
本体
●リッチファイル選択({配列}フィルタ一覧を初期ディレクトリで)
ファイル名とは文字列
フィルタとは文字列
OpenFileName構造体とは文字列
OpenFileNameグループとはOPENFILENAME
ファイル名にMAX_PATHを確保
フィルタ一覧で反復
フィルタに「{対象[0]}{\0}{対象[1]}{\0}」を追加
フィルタに"{\0}"を追加
OpenFileNameグループについて
hwndOwner = 母艦ハンドル
hInstance = インスタンスハンドル
lpstrInitialDir = POINTER(初期ディレクトリ)
lpstrFilter = POINTER(フィルタ)
lpstrFile = POINTER(ファイル名)
nMaxFile = MAX_PATH
lpstrTitle = POINTER("ファイルを開く")
Flags = OFN_FILEMUSTEXIST
PACK(OpenFileNameグループ,OpenFileName構造体,OPENFILENAME型)
もし、GetOpenFileName(POINTER(OpenFileName構造体))ならば
ファイル名=ファイル名から"{\0}"まで切り取る
ファイル名で戻る
空で戻る
●GetOpenFileName(lpofn) =DLL("comdlg32.dll",
"BOOL GetOpenFileNameA(
LPOPENFILENAME lpofn // 初期化データ
)")
!MAX_PATH = 260;
!OFN_ALLOWMULTISELECT = 512;
!OFN_CREATEPROMPT = $2000;
!OFN_ENABLEHOOK = 32;
!OFN_ENABLESIZING = $800000;
!OFN_ENABLETEMPLATE = 64;
!OFN_ENABLETEMPLATEHANDLE = 128;
!OFN_EXPLORER = $80000;
!OFN_EXTENSIONDIFFERENT = $400;
!OFN_FILEMUSTEXIST = $1000;
!OFN_HIDEREADONLY = 4;
!OFN_LONGNAMES = $200000;
!OFN_NOCHANGEDIR = 8;
!OFN_NODEREFERENCELINKS = $100000;
!OFN_NOLONGNAMES = $40000;
!OFN_NONETWORKBUTTON = $20000;
!OFN_NOREADONLYRETURN = $8000;
!OFN_NOTESTFILECREATE = $10000;
!OFN_NOVALIDATE = 256;
!OFN_OVERWRITEPROMPT = 2;
!OFN_PATHMUSTEXIST = $800;
!OFN_READONLY = 1;
!OFN_SHAREAWARE = $4000;
!OFN_SHOWHELP = 16;
!OFN_SHAREFALLTHROUGH = 2;
!OFN_SHARENOWARN = 1;
!OFN_SHAREWARN = 0;
!OPENFILENAME型 = "DWORD,HWND,HINSTANCE,LPCTSTR,LPTSTR,DWORD,DWORD,LPTSTR,DWORD,LPTSTR,DWORD,LPCTSTR,LPCTSTR,DWORD,WORD,WORD,LPCTSTR,DWORD,LPOFNHOOKPROC,LPCTSTR,LPVOID,DWORD,DWORD";
■OPENFILENAME
・{整数}lStructSize{=88}
・{整数}hwndOwner
・{整数}hInstance
・{整数}lpstrFilter
・{整数}lpstrCustomFilter
・{整数}nMaxCustFilter
・{整数}nFilterIndex
・{整数}lpstrFile
・{整数}nMaxFile
・{整数}lpstrFileTitle
・{整数}nMaxFileTitle
・{整数}lpstrInitialDir
・{整数}lpstrTitle
・{整数}Flags
・{整数}nFileOffset
・{整数}nFileExtension
・{整数}lpstrDefExt
・{整数}lCustData
・{整数}lpfnHook
・{整数}lpTemplateName
// 拡張
・{整数}pvReserved
・{整数}dwReserved
・{整数}FlagsEx
総合: -
今日: - 人
昨日: - 人
最終更新:2012年07月19日 03:51