Delphi を使用しています。openpicturedialog を実行するときに、ディレクトリのすべてのファイルのリストが必要です。
つまり、開くダイアログが実行され、そこから1つのファイルを選択すると、選択したファイルのディレクトリからすべてのファイルのリストが必要になります。
Thank YouFileName
のプロパティからディレクトリ名を取得するよう提案することもできます。TOpenDialog
Delphi を使用しています。openpicturedialog を実行するときに、ディレクトリのすべてのファイルのリストが必要です。
つまり、開くダイアログが実行され、そこから1つのファイルを選択すると、選択したファイルのディレクトリからすべてのファイルのリストが必要になります。
Thank YouFileName
のプロパティからディレクトリ名を取得するよう提案することもできます。TOpenDialog
Delphi 2010 を使用している場合は、tdirectory.getfiles を使用できます。最初に ioutils.pas を uses 句に追加してから、イベント ハンドラに次のコード行を記述します (そのイベント ハンドラに既にあるコードに加えて)。
uses IOUtils;
var
path : string;
begin
for Path in TDirectory.GetFiles(OpenPictureDialog1.filename) do
Listbox1.Items.Add(Path);{assuming OpenPictureDialog1 is the name you gave to your OpenPictureDialog control}
end;
@Himadri、OpenPictureDialog の主な目的はディレクトリを選択することではありません。とにかく、このダイアログを別の目的で使用している場合は、このコードを試すことができます。
Var
Path : String;
SR : TSearchRec;
DirList : TStrings;
begin
if OpenPictureDialog1.Execute then
begin
Path:=ExtractFileDir(OpenPictureDialog1.FileName); //Get the path of the selected file
DirList:=TStringList.Create;
try
if FindFirst(Path + '*.*', faArchive, SR) = 0 then
begin
repeat
DirList.Add(SR.Name); //Fill the list
until FindNext(SR) <> 0;
FindClose(SR);
end;
//do your stuff
finally
DirList.Free;
end;
end;
end;
extractFilePath 関数を使用して、ディレクトリ名を取得できます。
myPath := extractFilePath(FileName);
ここで、FileName は OpenDialog で選択したファイルの名前です。