Показать сообщение отдельно
  #44  
Старый 05.07.2019, 19:06
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,004
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Ну, например, сохранять файлы в подкаталог программы (не давая пользователю вводить имя файла). При старте программы просто читаешь все файлы в список и заполняешь ComboBox именами проектов.
Код:
type
  TForm1=class(TForm)
  ...
  private
    ProbjectList : TObjectList;
  ...
  end;

procedure Form1.FormCreate(Sender : TObject);
var
  dataPath : String;
  F : TSearchRec;
  i : Integer;
  M : TModel;
begin
  ComboBox1.Items.Clear;
  ProjectList := TObjectList.Create(True);
  dataPath := IncludeTrailingPathDelimiterIncludeTrailingPathDelimiter(ExtractFilePath(Application.ExeName)) + 'Data');
  i := FindFirst(dataPath + '*.dat',faAnyFile,F);
  While i = 0 Do
    Begin
       Try
          M := TModel.Load(dataPath + F.Name);
          ProjectList.Add(M);
          ComboBox1.Items.AddObject(M.PrjName,M);
       Except
       End;
      i := FindNext(F);
    End;
  FindClose(F);
end;

procedure Form1.FormDestroy(Sender : TObject);
begin
  ProjectList.Free;
end;
Ответить с цитированием