Thema: Delphi MRU Liste erstellen.

Einzelnen Beitrag anzeigen

Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#6
  Alt 23. Jun 2003, 07:47
Für alle die es noch interessiert:
Delphi-Quellcode:
procedure TForm1.AddLastFileToList(Filename: String);
var
  ini: TInifile;
  slKeyNumbers: TStringList;
  KeyNumber, LastKeyWritten: Integer;
begin
  ini := TIniFile.Create(ExtractFilePath(ParamStr(0)) + '\mru.ini');
  try
    slKeyNumbers := TStringList.Create;
    try
      ini.ReadSectionValues('MRU', slKeyNumbers);
      KeyNumber := slKeyNumbers.Count;
      LastKeyWritten := ini.ReadInteger('LKW', 'LastKeyWritten', 0);
      if (KeyNumber = MAXFILES) and (LastKeyWritten = MAXFILES-1) then
      begin
        KeyNumber := 0;
        ini.WriteString('MRU', IntToStr(KeyNumber), Filename);
      end;
      if (KeyNumber = MAXFILES) and (LastKeyWritten < MAXFILES-1) then
      begin
        KeyNumber := LastKeyWritten+1;
        ini.WriteString('MRU', IntToStr(KeyNumber), Filename);
      end;
      ini.WriteString('MRU', IntToStr(KeyNumber), Filename);
      ini.WriteInteger('LKW', 'LastKeyWritten', KeyNumber);
    finally
      slKeyNumbers.Free;
    end;
  finally
    ini.Free;
  end;
end;
So geht's. Ich war eben nur immer darauf versessen gewesen und wollte es mit einer if-Anweisung lösen und hatte dabei aus dem Blick verloren, dass man doch zwei braucht.

Aber nichts desto trotz: Wer den Code vereinfachen kann, soll sich keinen Zwang antun.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat