![]() |
Dudas con un CheckList...
veamos tengo estas dudas:
1. como controlo los items seleccionados? necesito seleccionar 4 de una lista.... si los "selecciono" si se, pero al deseleccionar???? :p 2. le puedo poner "iconitos" dentro?? he visto hacerlo en un LiSTBOX por eso pregunto. :confused: 3. komo obtengo los items completos ?? por ejemplo le pongo al item "cuadrado" y me envia "uadrado". :D por el momento estas son mis dudas......alguien me ayuda? se los agradeceria mucho. :) |
veamos
Espero te ayude. Nunca he usado ese componente(soy novato pero, con ganas de ayudar). Y logre esto:
SALUDOS!!! |
Cita:
2) En un CheckList creo que no, pero puedes usar el TreeView de la pestaña Win32 que te permite establecer jerarquias y poner iconos y hacer multiselects, pero ahora que miro creo que no tiene el Check para marcar un item. 3) Tampoco lo entiendo, algo debes hacer para que te borre el primer carácter. ¿Puedes poner esa parte de código? Saludos |
en cuanto a joHn je@N. voy a probar el codigo a ver ke sale y te aviso hermano, yo no soy experto, pero si he usado, y ahorita la verdad akabo de temrinar un proyecto y no me da mucho la cabeza para pensar :), te agradezko el codigo y si no va, buscare la idea ke das para adaptarla, :)
gracias. en cuanto a lo de bicho: 1. si, deseo controlarlo, porke kiero tener 4 items seleccionadas MAXIMO, y si selecciono 4 si puedo controlarlo, pero si el usuario des-selecciona 1, pierdo el control de los 4. 2. he usado en los LISTBOX junto a un IMAGELIST el ponerles dibujitos (iconitos) pero kiero ver si con el checklist se puede. 3.pues para obtenerlo solo hago :
|
Cita:
1) No tienes que perder el control de eso. El checkListBox tiene la propiedad Selected a la que le indicas el indice que quieres saber si está seleccionado y te devuelve true o false 2) No veo nada al respecto 3) No se de donde sacas ValueFromIndex. Debería bastarte con esto:
A todo ésto. ¿que versión de Delphi estás usando? Es que no encuentro la propiedad ValueFromIndex y hablas de CheckList en lugar de CheckListBox :confused: Saludos |
darkphantom no tengas miedo a explicar desde un principio lo que quieres hacer, porque aqui no se cobra por palabras, hombre.
hablas de un CheckListBox, pero no es lo mismo seleccionar que marcar, se permiten ambas cosas. "seleccionar" es hacer clic en un elemento de lista y que quede con fondo azul (seleccionado) "marcar" es poner la marca de verificación a su casilla correspondiente. ¿qué quieres, seleccionar o marcar? Por otra parte, cuando obtienes "uadrado" es porque accedes incorrectamente a los items. No uses las propiedades Values, Sections, ValueFromIndex, etc, ya que eso pertenece al TStrings, y está pensado para archivos ini donde guardas un par de valores al estilo: Nombre=Pepe Nombre es lo que se llama "llave" (key) y Pepe es lo que se llama el valor (Value), de tal forma que ambos estan emparejados. Cuando accedes con la propiedad Values, internamente delphi cree que tiene el símbolo igual "=" a su izquierda, por eso te devuelve una letra menos. Para rescatar un valor, usa esto:
Por eso, lo mismo de antes, explica qué quieres hacer. Además en principio, se resuelve una duda por cada hilo; si empezamos a hablar de 3 temas distintos en un mismo hilo se puede formar la gorda :D. Saludos |
Para las otras 2 preguntas... vamos por parte:
- Si quieres dibujar iconitos... vete tú mismo a dibujar el control, que no, que no estoy de mal humor, es que tienes que poner su propiedad Style a owner-Draw y usar técnicas de pintado para colocar los iconos y el texto que quieras tú mismo. Busca en el foro que para un Listbox es lo mismo que un checklistbox. Para seleccionar 4 nada más... bueno, cuando: - seleccionas haz un bucle mirando la propiedad Selected[i] si está a true, y cuentas si hay 4 o no - Si quieres 4 marcados nada más, usa un bucle mirando la propiedad Checked[i] Incluso tienes la propiedad Items[i].ItemEnabled que lo puedes poner a falso o true, es decir... si el usuario ha hecho 4 selecciones o marcas, inhabilitas (poner en gris) el resto de elementos para obligarle a desmarcar o deseleccionar un item antes de activar otro. Para saber cuando a deseleccionado un item es igual que cuando selecciona, haz un bucle recorriendo todos los elementos y preguntando si está selecionado o no. Saludos |
bueno antes ke nada, muchas gracias a todos, y perdon por la falta de informacion o la mala explicacion, es ke me he hecho bolas yo mismo y no sabia komo explicar.
y comenzando, 1.- si, tienen razon es MARCAR o CHEKEAR o no se, en lugar de seleccionar....... 2.- en cuestion de las preguntas variadas, pues komo eran del mismo componente por eso krei ke un solo tema estaba bien, sorry......... 3.- lepe, no te preocupes si suenas a mal humor, pero tienes razon, eso se hace en la otra opcion, y krei ke era diferente. tratare de ver todas estas opciones y les komento ke paso, si pude resolver el problema o no, :) gracias y perdon por las molestias. y por cierto, solo puse CHECKLIST porke no hay otro componente con nombre parecido.....por eso no puse CHECKLISTBOX, pero korrijo, es un CHECKLISTBOX, :) y uso Delphi 7. |
???bueno
Creo que estan haciendo una tormenta en un vaso de agua. jejejeje
Porque no veo la complicación.(sera que a lo mejor no he entendido bien) pero, lo mas simple que se me ocurre es una variable que vaya de 1 a 4 y veceversa dependiendo el caso en el que se seleccione (check = true, Inc(variable)) o deseleccione (check = false, Dec(variable)). y para ver cuantos tienes seleccionados pues puedes ver el valor de la variable o con un ciclo como ya lo han dicho antes.
Checa bien los códigos. creo que ahi esta la respuesta que buscas. SALUDOS |
Cita:
Saludos de buen rollo :cool: |
Asi es
Totalmente de acuerdo.
No hay más que decir. Para hacer algo, necesitas saber que es!!!. SALUDOS |
La franja horaria es GMT +2. Ahora son las 07:12:35. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi