Hola wull.
Traducción de la ayuda de Delphi:
Cita:
Utilice TDBComboBox para permitir a los usuarios cambiar el valor de un campo en el registro actual de un conjunto de datos ya sea mediante la selección de un elemento de una lista o escribiendo en el cuadro de edición de parte del control. El elemento seleccionado o el texto introducido se convierte en el nuevo valor del campo si la propiedad ReadOnly del cuadro combinado de base de datos es falsa. El cuadro combinado se puede personalizar para activar o desactivar escribiendo en el área de edición del control, para visualizar la lista como una lista desplegable o como una lista permanentemente visible, para ordenar los elementos de la lista, y así sucesivamente.
|
Es decir que usado solamente para elegir una opción, no hay grandes ventajas frente al
TComboBox, ya que de todos modos tendrías que realizar la carga de los registros en su propiedad
Items al inicio y además no dispondrás del evento
OnChange al cambiar de ítem.
Por otro lado, reviendo el código que te sugerí, tal vez no sea necesario que almacenes el ID. Si sólo es a fin de posicionarte basta con que hagas:
Código Delphi
[-]
procedure TForm1.FormCreate(Sender: TObject);
begin
ComboBox1.Items.Clear;
with Query1 do
begin
Open;
while not Eof do
begin
ComboBox1.Iems.Add(FieldByName('CAMPO_X').AsString); Next;
end;
First;
end;
ComboBox1.Text := 'Elija su opción';
end;
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
if ComboBox1.ItemIndex <> -1 then
Query1.Locate('CAMPO_X', ComboBox1.Items[ComboBox1.ItemIndex],[]);
end;
Saludos.