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:
Código Delphi
[-]
ComboA1 ComboB1
ComboA2 ComboB2
ComboA3 ComboB3
Los nombres de cada combo son similares pero no iguales, por ejemplo :
Código Delphi
[-]
"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