Einzelnen Beitrag anzeigen

automatix

Registriert seit: 1. Mai 2008
Ort: Remscheid
39 Beiträge
 
Delphi 2007 Enterprise
 
#2

Re: Key/Value Pairs in Arrays

  Alt 17. Jun 2008, 13:37
Vielleicht so?
Delphi-Quellcode:
  while not ADOQuery1.Eof do begin
    ComboBox1.AddItem(ADOQuery1.FieldByName('BEZEICHNUNG').AsString,
                      TObject(ADOQuery1.FieldByName('MANDANT').AsInteger));
    ADOQuery1.Next;
  end;

  ...

  ShowMessage(Format('%d', [Integer(ComboBox1.Items.Objects[ComboBox1.ItemIndex])]);
Ist Mandant wirklich ein String? Dann würde ich es so implementieren (vielleicht nicht gerade einfacher, aber IMHO sauberer und verständlicher).

Delphi-Quellcode:
  TMandant = class(TObject)
  private
    FMandant: string;
    FBezeichnung: string;
  public
     constructor Create(const aMandant: string;
                       const aBezeichnung: string); reintroduce;

    property Mandant: string read FMandant;
    property Bezeichnung: string read FBezeichnung;
  end;

  ...

  while not ADOQuery1.Eof do begin
    ComboBox1.AddItem(ADOQuery1.FieldByName('BEZEICHNUNG').AsString,
                      TMandant.Create(ADOQuery1.FieldByName('MANDANT').AsString,
                                      ADOQuery1.FieldByName('BEZEICHNUNG').AsString)));
    ADOQuery1.Next;
  end;

  ...

  ShowMessage(TMandant(ComboBox1.Items.Objects[ComboBox1.ItemIndex]).Mandant);
Grüße
  Mit Zitat antworten Zitat