Klingt zumindest sehr logisch ... und vor allem wesentlich kürzer
Zitat von
marabu:
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;
allerdings hätt ich noch ein paar fragen ... Pointer (= zeiger nehm ich an) muss extra deklariert werden oder? zumal der Pointer doch bei jedem durchlauf
seinen Wert ändert ... ich versteh da grad den bezug nicht.
Ich hab ja ein globals Array deklariert, um bei jedem durchlauf meinen Schlüssel zu speichern, damit ich weiß aus welcher Zeile ich mir die Mandantennummer in der Datenbank holen muss. Soweit ich weiß, sind Pointer, Zeiger die auf bestimmte Adressen zeigen, die sich doch hier mit jedem durchlauf ändern?!
Sorry ... ich weiß ich hab nachholbedarf ... wär net wenn du mir dazu ne erklärung liefern könntest.
Weiter zu frage 2:
Zitat von
marabu:
Delphi-Quellcode:
with cbMandant do
iMandant := Integer(Objects[ItemIndex]);
also mit cbMandant tue ich den Schlüssel (so wie ich rausgelesen habe) in iMandant speichern.
Welchen Schlüssel? alle "gesammelten"?
Entschuldige, zwar ne sehr gute lösung, und vor allem noch schnell aber ich begreif nicht was dahinter geschiet ... und des wär zumindest sehr hilfreich für z.B. die Zukunft ... ich dank dir trotzdem sehr
f4k3