Einzelnen Beitrag anzeigen

marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#5

Re: MyList.ValueFromIndex[index]

  Alt 16. Mai 2007, 06:23
Hallo Steven,

eine simple Zuweisung des ersten Items an die Texteigenschaft der ComboBox liefert dir die gewünschte Vorbelegung:

 with ComboBox do Text := Items[0]; Deine Daten vom alten Format in das neue Format umwandeln - ich würde es so machen:

Delphi-Quellcode:
function CommaText(const ct, value: string): string;
begin
  with TStringList.Create do
  try
    CommaText := ct;
    Add(Value);
    Result := CommaText;
  finally
    Free;
  end;
end;

function CreateFoldedValues(s: TStrings; nvs: Char = '='): TStringList;
var
  i: Integer;
  ct, name, value: string;
begin
  Result := TStringList.Create;
  s.NameValueSeparator := nvs;
  for i := 0 to Pred(s.Count) do
  begin
    name := s.Names[i];
    value := s.ValueFromIndex[i];
    ct := Result.Values[name];
    if ct = ''
      then Result.Values[name] := value
      else Result.Values[name] := CommaText(ct, value);
  end;
end;

procedure TDemoForm.ButtonClick(Sender: TObject);
var
  s: TStrings;
begin
  with ListBox do
  begin
    Items.LoadFromFile(ParamStr(1));
    s := CreateFoldedValues(Items, ';');
    Items.Assign(s);
    s.Free;
    Items.SaveToFile(ParamStr(2));
  end;
end;
Freundliche Grüße
  Mit Zitat antworten Zitat