Que tal, buen dia a todos.
Tengo un programa que crea una lista de combos (TDBLookUpComboBox) de forma dinámica, este programa lo comencé a desarrollar en Delphi 7 y todo iba bien, pero al cambiar a Turbo Delphi, compila correctamente, el problema es que cuando el usuario elige los datos de los combos, al hacer click sobre uno de los combos, se desaparece la selección que había realizado de los demas, esto solo sucede si compilo el programa con turbo delphi.
Los componentes son creados de la siguiente forma:
Código Delphi
[-]
while not QryRutaHor.Eof do
begin
...
combo:= TDBLookUpComboBox.Create(SBViajes);
combo.Name:='ComboV'+QryRutaHor.FieldByName('CveHorario').AsString;
if i>0 then combo.Top:=SBViajes.Controls[SBViajes.ComponentCount-4].Top-4
else combo.Top:=5;
combo.Left:=arrCol[c+3]; combo.Parent:= SBViajes;
combo.ListSource:=DSQryVeh;
combo.ListField:='NUMEROVEH';
combo.KeyField:='NUMEROVEH';
combo.OnExit:=BuscaChofer;
combo.Visible:=false;
combo.Width:=widthCombo-140;
combo:= TDBLookUpComboBox.Create(SBViajes);
combo.Name:='ComboE'+QryRutaHor.FieldByName('CveHorario').AsString;;
if i>0 then combo.Top:=SBViajes.Controls[SBViajes.ComponentCount-5].Top-4
else combo.Top:=5;
combo.Left:=arrCol[c+4]; combo.Parent:= SBViajes;
combo.ListSource:=DSQryEmpl;
combo.ListField:='NOMBRE';
combo.KeyField:='CVEEMPL';
combo.Visible:=false;
combo.Width:=widthCombo;
combo.OnCloseUp:=PonCambioRol;
...
end;
De lo anterior quedan dos columnas de combos todos con el mismo listsource:
Combo A1 Combo B1
Combo A2 Combo B2
Combo A3 Combo B3
Los nombres de cada combo son similares pero no iguales, por ejemplo :
"ComboV1" "ComboE1"
"ComboV9" "ComboE15"
"ComboV11" "ComboE8"
Al seleccionar un valor de un combo de la columna A, se borran todos los valores elegidos previamente en los combos de esta columna, los de la B no se afectan, lo mismo sucede con la columna de combos B.
No se a que se debe este problema, ya que solo sucede al compilar con Turbo Delphi.
Alguien sabe como puedo solucionarlo?
Muchas gracias