Tengo el siguiente código que se encarga de llenar un TComboBoxEx con los datos de un dataset ya definido con el fin de agregar una opción que es "Todos" y ademas usar el campo ID como identificador en el arreglo generado para los elementos del TComboBoxEx:
Código:
procedure TfmPrincipal.CargarBloques();
begin
if dmDatos.qyBloques.Active = False then
dmDatos.qyBloques.Active := True
else
dmDatos.qyBloques.Refresh;
if dmDatos.qyBloques.RecordCount > 0 then
begin
dmDatos.qyBloques.First;
cbBloques.Items.Clear;
cbDetBloques.Items.Clear;
cbBloques.Items.AddObject('Todos', TObject(0));
while dmDatos.qyBloques.Eof = False do
begin
cbBloques.Items.AddObject(dmDatos.qyBloquesDESCRIPCION.AsString,
TObject(dmDatos.qyBloquesID.AsInteger));
dmDatos.qyBloques.Next;
end;
cbBloques.ItemIndex := 0;
end;
end;
Ahora, me encuentro que en otras formas también necesito rellenar algunos TComboBoxEx con información y no quiero volver a repetir la rutina. Esto además lo hago porque este dataset esta ligado a una base de datos que pertenece a otro sistema y no quiero tenerla abierta demasiado tiempo para evitar errores de concurrencia.
Mi duda es, si ese código lo necesito para cargar otros combos en otras formas, como puedo hacer para que este sea independiente del TComboBoxEx que este llenando, pasando el TComboBoxEx que voy a llenar como parámetro.
De antemano, Gracias.