| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
DohKo Cdt

Registrado: 13 Mar 2006Mensajes: 7
|
Publicado: Lun 13 Mar, 2006 11:17 pm Asunto: ¿Cómo saber que di un click en el checkbox en un listview? |
|
|
Hola!!
Quisiera saber si alguien sabe como determinar que di un click en un checkbox contenido en un listview.
Lo que quiero hacer(y ya logre) es que al dar un click en cualquier parte de la fila, se seleccione o deseleccione el checkbox de esta, mi problema surge cuando doy un click en el checkbox ya que no hace nada.
| Código: | void __fastcall TForm1::lvUsersClick(TObject *Sender)
{
TListView* ptrSender = static_cast<TListView*>(Sender);
TListItem* ptrItem=ptrSender->Selected;
if(ptrItem != NULL){
if(ptrItem->Checked){
ptrItem->Checked = false;
}else {ptrItem->Checked = true;}
}
}
|
Como ven al dar click al checkbox adquiere otro valor y con mi código lo dejo igual. Ojalá alguien sepa como resolver este problema.
Saludos!! |
|
| Volver arriba |
|
 |
Angel Master


Registrado: 15 Abr 2003Mensajes: 2311Ubicación: Toledo (España)
|
Publicado: Jue 13 Jul, 2006 12:25 pm Asunto: |
|
|
Yo lo que hago es VERIFICAR si se ha seleccionado el item. En el evento OnSelectItem
| Código: | TListItem *pItem;
if (!Selected)
return;
else
pItem = Item; |
Una vez que ya tengo "guardado" el item selecionado puedo trabajar con el a nivel de celdas, bien con la porpiedad Caption bien con SubItems:
| Código: | AnsiString Celda_0_del_Item = pItem->Caption;
AnsiString Celda_1_del_Item = pItem->SubItems->Strings[0];
etc. |
No sé si te valdrá esta solución. _________________ Un saludo
Necesitamos tu ayuda: Envía AI al 27595 (Coste 1,20 euros + IVA) |
|
| Volver arriba |
|
 |
Angel Master


Registrado: 15 Abr 2003Mensajes: 2311Ubicación: Toledo (España)
|
Publicado: Vie 14 Jul, 2006 1:47 pm Asunto: |
|
|
Perdón, perdón. Había entendido mal la pregunta. Yo, cuando tengo que verificar si el CheckBox de un ListView se ha activado o no uso un sistema similar al Select. Por ejemplo, en el evento OnClick:
| Código: | if (ListView1->Items->Item[nItem]->Checked)
{
<Código si está activado el CheckBox>
}
else
{
<Código si no está activado el CheckBox>
} |
_________________ Un saludo
Necesitamos tu ayuda: Envía AI al 27595 (Coste 1,20 euros + IVA) |
|
| Volver arriba |
|
 |
|