Hallo Fake,
du machst dir das vielleicht ein wenig zu schwer. Den letzten Teil deines Codes könntest du auch so schreiben:
Delphi-Quellcode:
// ...
// iCounter := 0;
while not tMandant.EOF do
begin
cbMandant.Items.AddObject(Format('%d - %s', [
tMandant.FieldByName('Mandantennummer').AsInteger,
tMandant.FieldByName('Bezeichnung').AsString,
Pointer(tMandant.FieldByName('Mandantennummer').AsInteger)
]));
tMandant.Next;
end;
Du brauchst den iCounter doch eigentlich nirgends. Und den Schlüssel habe ich im Objects-Array der ComboBox-Strings abgelegt. Da kommst du dann leicht wieder dran:
Delphi-Quellcode:
with cbMandant do
iMandant := Integer(Objects[ItemIndex]);
Viel Erfolg mit deinem Projekt.