-2
コンボボックスの項目のプロパティに、実行時にapplicaton.exeディレクトリにあるデータベース名(* .mdb)を設定するにはどうすればよいですか?コンボボックスの項目のデータベース名のリストを取得する
コンボボックスの項目のプロパティに、実行時にapplicaton.exeディレクトリにあるデータベース名(* .mdb)を設定するにはどうすればよいですか?コンボボックスの項目のデータベース名のリストを取得する
TDirectory.GetFiles関数を使用して、すべての* .mdbファイルを列挙し、結果をTStringDynArrayに格納します。結果をループし、値をコンボボックスに挿入します。 System.IOUtilsとSystem.Typesが含まれていることを確認してください。パスを使用せずにファイル名のみを挿入するには
var
I: Integer;
MyList: TStringDynArray;
begin
MyList := TDirectory.GetFiles(ExtractFilePath(ParamStr(0)), '*.mdb',
TSearchOption.soAllDirectories);
for I := 0 to Length(MyList) - 1 do
begin
ComboBox1.Items.Add(MyList[I]);
end;
end;
:
ComboBox1.Items.Add(ExtractFileName(MyList[I]));
は移入する方法(http://stackoverflow.com/q/16496352/576719)[コンボボックスの項目を作成し、Delphi7]を参照してください。実行時にアイテムを持つコンボボックス。 –
'' Delphiの文字列グリッドのディレクトリからすべてのファイルを一覧表示する ''(http://stackoverflow.com/q/11489680/576719) 'TStrings'リストにディレクトリのファイルを埋め込む方法を参照してください。 –
私はこのようなことを念頭に置いていました:procedure TForm1.FormCreate(Sender:TObject); var データベース:TStringList; i:整数。 パス:文字列。 begin パス:= ExtractFilePath(Application.ExeName)+ '* .mdb'; databases:= TStringList.Create; i:= 0〜databases.Count-1 do combobox1.Items.Add(databases [i]); 最終的に databases.free; end; end; – user3351050