# uigetfile

ファイル,名前,パス,フィルタ添字取得用のダイアログウインドウ

## 呼び出し手順

    [FileName[,PathName[,FilterIndex]]]=uigetfile([file_mask[,dir[,boxTitle[,multipleSelection]]]])
                PathFileName=uigetfile([file_mask[,dir[,boxTitle[,multiple]]]])

## 入力パラメータ

file_mask

  ファイル選択時に使用されるファイルマスクを指定する 文字列行列. `file_mask` はUnix表記で指定します. デフォルト値は '*'です.

  ["*.x*","X files";"*.bin","BIN files"]のように, マスクに説明を追加することができます.

dir

  ファイル検索に使用される初期ディレクトリを 指定する文字列. デフォルトで uigetfile は 以前に選択されたディレクトリを使用します.

boxTitle

  uigetfileウインドウの表題を指定する文字列. デフォルトでuigetfileの表題は'uigetfile'です.

multipleSelection

  論理値で,'%f'(false)を指定した場合に一つのファイルのみ, '%t' (true)を指定した場合に複数のファイルを 読み込むことができます. デフォルトで, uigetfileの複数ファイル選択は 有効ではありません.

## 出力パラメータ

FileName

  ユーザが "Ok" と答えた場合は, ユーザが選択したファイルを指定する文字列の行列 (パス + ファイル名), ユーザが "Cancel"した場合は " "文字列を.

PathName

  ユーザーが "Ok" と答えた場合はユーザが選択したファイル, ユーザが"Cancel"と答えた場合は" "文字列.

FilterIndex

  ユーザーが "Ok" と答えた場合はリストボックスで ユーザが選択したファイル添字, ユーザが"Cancel"と答えた場合は" "文字列.

## 説明

ファイル選択用のダイアログを作成します.

## コメント

Windowsでは, uigetfileで使用されるjava要素は .zipアーカイブもブラウズするため, 大きな.zipファイルの場合は非常に遅くなります.

この機能を無効にするには以下のようにします:

if getos() == 'Windows' then unix("REGSVR32 /u %WINDIR%\System32\zipfldr.dll") ;end

再度有効にするには以下のようにします,

if getos() == 'Windows' then unix("REGSVR32 %WINDIR%\System32\zipfldr.dll") ;end

## 例

    uigetfile(["*.bin";"*.sce";"*.cos*"])
                uigetfile(["*.sci";"*.bin"],"SCI/modules/gui/macros/")
                uigetfile(["*.sc*";"*.bin"],"SCI/modules/gui/macros/")
                uigetfile(["*.x*","X files";"*.bin","BIN files"],"SCI/modules/gui/macros/")
                uigetfile(["*.sce";"*.bin"],"SCI/modules/gui/macros/", "Choose a file name", %t);
                uigetfile(["*.sce";"*.bin"],"SCI/modules/gui/macros/", "Choose a file name", %f);

## 参照

- uiputfile
- uigetdir
- x_dialog
- file
- read
- write
- exec