Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   carga de un TCheckListBox!! (https://www.clubdelphi.com/foros/showthread.php?t=15513)

kye_z 26-10-2004 10:50:44

carga de un TCheckListBox!!
 
buenas

ya vuelvo a ser yo otra vez... preguntando cosas simples pero que ahun no se como se puede hacer i llevo un tiempecito rebanandome la cabesa.....

os cuento mi pequeño,gran, problema...

tengo un TCheckListBox el cual quiero llenarlo en tiempo de ejecución sacando los items de una tabla de mi base de datos.

primero he hecho la conexion con la bbdd i luego ADOTable para tener accesso a la tabla que quiero.

el problema es que no se como leches recorrer la tabla i meter los datos en el Checklistbox.

a ver si alguien me pudiesse ayudar un pokitin...

muchisssimas gracias de antemanooo

kye_z 26-10-2004 11:12:05

De momento tengo esto pero no me funciona...

Código:

 
procedure TcrearClasse.FormShow(Sender: TObject);
begin
  nomClasse.Text:='';
  numTripulants.Text:='';
  taulaCategories.First;
  while not taulaCategories.Eof do
        begin
          categories.AddItem(taulaCategories.IndexName,TObject.Create);
          taulaCategories.Next;
        end

end;
end.

el taulaCategories es el TADOTable con la tabla que necesito.

Lepe 26-10-2004 11:33:46

Código Delphi [-]
  
procedure TcrearClasse.FormShow(Sender: TObject);
var idx:integer;
begin
  nomClasse.Text:='';
  numTripulants.Text:='';
  taulaCategories.First;
  while not taulaCategories.Eof do
  begin
    idx := categories.Items.Add(taulaCategoriesNombreCampo.AsString);
          categories.Checked[idx] := true; // marcamos la casilla del recien añadido.
    taulaCategories.Next;
  end

end;
end.

Saludos.

Lo que estabas usando es para añadir información Extra a cada item, es decir, guardar un objeto a dicho elemento del checkbox. Para añadir una cadena, haces lo mismo que en cualquier TStrings.

Neftali [Germán.Estévez] 26-10-2004 11:43:53

Vamos por partes,...
Lo primero es que tienes que tener claro si un TCheckListBox es el componente que necesitas. Si lo utilizas sólo podrás mostrar en él una de las columnas de tu tabla, ya que un checkListBox es una lista de cadenas on un check delante.

Cita:

Empezado por kye_z
De momento tengo esto pero no me funciona...
Código:


...
        categories.AddItem(taulaCategories.IndexName,TObject.Create);


Lógico, ésto que has puesto aquí no tiene ni pies ni cabeza, o al menos yo no entiendo que quieres hacer con ésto...
Lo dicho, un TCheckListBox es una lista de cadenas con un Check, además opcionalmente puedes añadirle a cada cadena un objeto, pero eso es tema a parte.

taulaCategories.IndexName, esto te va a añadir n veces la cadena definida en la propiedad IndexName de tu componente ¿?¿?¿?¿, y el TObject.Create te va a crear "algo" (supongo que lo has puesto porque te pedía el parámetro y no sabías qué hacer....).

Para añadir elementos de tipo String al componente utiliza Items.Add(cadena), y si deseas añadir un objeto debes crearlo antes (y en ese caso utilizar AddItem)
Prueba con un código como éste:

Código Delphi [-]
  nomClasse.Text:='';
  numTripulants.Text:='';
  ADOTable1.Open;
  while not ADOTable1.Eof do begin
    CheckListBox1.Items.Add(ADOTable1.FieldByName('NombreCampo').AsString);
   ADOTable1.Next;
 end

A partir de ahí si necesitas más cosas ya dirás...

kye_z 26-10-2004 11:48:15

MUCHIISSSIMAS GRACIAS!!

ya ta.. lo consegui... :)

siento preguntar cosas tan simples... pero toy ahun aprendiendo i a veces me quedo en el intento de hacer algo... aunke sea simple.. i por eso vengo a preguntar... :))

gracias por todo i ya volvere a aparecer por aqui en cuanto tenga alguna dudilla mas... :)


La franja horaria es GMT +2. Ahora son las 16:56:59.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi