![]() |
AW: Von ADOQuery to EditFeld
Okay ich erklärs mal ganz einfach
Ich hab eine DBGrid in der liste ich aus Tabelle1 bestimmte zeilen auf Diese Zeilen haben 3 spalten. Die 2. und 3. Spalte möchte ich pro Zeile variabel machen Sprich diese mit 2 Comboboxen und einem Button wo das Update drinnen steht variabel machen (änderbar) Die Tabelle is folgendermaßen aufgebaut. Spalte1 = nvarchar Spalte2 = smallint Spalte3 = bit Ich möchte die letzten zwei Spalten mit Comboboxn ändern können jedoch stehen in meinen Comboboxn Strings und da ist schon das Problem. da ich einmal smallint habe und bit Jetzt bekomm ich natürlich einen Datentyp problem denn ich kann kein Wort in ein smallint reinschreiben... da dort die Nummern drinnen stehen. Diese nummern stehen mit der Bezeichnung in einer anderen Tabelle. |
AW: Von ADOQuery to EditFeld
Du könntest die Objects-Eigenschaft von TStrings (also auch TComboBox.Items) missbrauchen, um dort den Primärschlüssel der Lookup-Tabelle abzulegen. Das müsste etwa so funktionieren:
Delphi-Quellcode:
Um nun and die hinterlegte ID zu gelangen, castest Du eben wieder zurück.
DeineComboBox.Items.BeginUpdate;
try DeineComboBox.Items.Clear; Query.SQL.Text := 'SELECT ID, Bezeichnung FROM Tabelle2 ORDER By Bezeichnung'; Query.Open; while not Query.EOF do begin DeineComboBox.Items.AddObject(Query.FieldByName('Bezeichnung').AsString, TObject(Query.FieldByName('ID').AsInteger)); Query.Next; end; finally DeineComboBox.Items.EndUpdate; end;
Delphi-Quellcode:
ID := integer(DeineComboBox.Items.Objects[DeineComboBox.ItemIndex]);
|
AW: Von ADOQuery to EditFeld
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz