elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: AIO elhacker.NET 2021 Compilación herramientas análisis y desinfección malware


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  detectar item de lista con doble click y obtener id de elemento
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: detectar item de lista con doble click y obtener id de elemento  (Leído 2,920 veces)
dewolo

Desconectado Desconectado

Mensajes: 83


Ver Perfil
detectar item de lista con doble click y obtener id de elemento
« en: 4 Octubre 2011, 21:37 pm »



Uploaded with ImageShack.us

esta en la parte de maindialog
Código:
case IDC_LIST2:
switch(HIWORD(wParam))
{
case LBN_SELCHANGE:
{
                                }
                        }

de esta forma detecta si hubo seleccion de items, pero yo quisiera saber de que item se trata, osea necesitaria una ID de elemento o algo que me diga cual elemento se ha seleccionado..



En línea

Eternal Idol
Moderador
***
Desconectado Desconectado

Mensajes: 5.645


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: detectar item de lista con doble click y obtener id de elemento
« Respuesta #1 en: 4 Octubre 2011, 21:48 pm »

LB_GETCURSEL.


En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
dewolo

Desconectado Desconectado

Mensajes: 83


Ver Perfil
Re: detectar item de lista con doble click y obtener id de elemento
« Respuesta #2 en: 4 Octubre 2011, 22:06 pm »

ai si gracias  ::)

Código:
case IDC_LIST2:
switch(HIWORD(wParam))
{
case LBN_SELCHANGE:
{
int dwSel = SendDlgItemMessage(hDlg, IDC_LIST2, LB_GETCURSEL, 0, 0);

int num = dwSel;
        char num_str[255];
        itoa(num,num_str,10);

if(dwSel != LB_ERR)
{
MessageBox(0,num_str,"TP2",0);
}


si conoces una mejor forma avisame XD


En línea

Eternal Idol
Moderador
***
Desconectado Desconectado

Mensajes: 5.645


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: detectar item de lista con doble click y obtener id de elemento
« Respuesta #3 en: 4 Octubre 2011, 22:11 pm »

Supongo que podes usar esta macro para simplificar pero en definitiva es lo mismo:

ListBox_GetCurSel.
En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
dewolo

Desconectado Desconectado

Mensajes: 83


Ver Perfil
Re: detectar item de lista con doble click y obtener id de elemento
« Respuesta #4 en: 4 Octubre 2011, 22:16 pm »

lo que si  que cuando hago click en un elemento se activa LBN_SELCHANGE , pero yo quisiera al hacer doble click asi puedo simular una seleccion de un elemento de la lista y luego hacer algo al respecto, por ejemplo "cargar articulo" que abra otro dialog para cargar un artivulo
en conclusion como activar con doble click XD

En línea

Eternal Idol
Moderador
***
Desconectado Desconectado

Mensajes: 5.645


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: detectar item de lista con doble click y obtener id de elemento
« Respuesta #5 en: 4 Octubre 2011, 22:19 pm »

LBN_DBLCLK.
En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
dewolo

Desconectado Desconectado

Mensajes: 83


Ver Perfil
Re: detectar item de lista con doble click y obtener id de elemento
« Respuesta #6 en: 4 Octubre 2011, 22:23 pm »

Código:
case IDC_LIST2:
switch(HIWORD(wParam))
{
//case LBN_SELCHANGE:
case LBN_DBLCLK:
{
int dwSel = SendDlgItemMessage(hDlg, IDC_LIST2, LB_GETCURSEL, 0, 0);

int num = dwSel;
   char num_str[255];
   itoa(num,num_str,10);

if(dwSel != LB_ERR)
{
MessageBox(hDlg,num_str,"Final Lab2",0);
}

asi funciona, pero asi estaria bien? osea reemplazando el LBN_SELCHANGE por el LBN_DBLCLK, o hay otra forma mas profesional  :rolleyes:

pregunto porque se dan los dos casos, y es como que el GETCURSEL estaria suponiendo que se hizo una seleccion pero, en realidad se hizo dentro del mensaje de DBLCLK
« Última modificación: 4 Octubre 2011, 22:28 pm por dewolo » En línea

Eternal Idol
Moderador
***
Desconectado Desconectado

Mensajes: 5.645


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: detectar item de lista con doble click y obtener id de elemento
« Respuesta #7 en: 4 Octubre 2011, 22:57 pm »

Yo soy exporte en modulos de modo Kernel (drivers) para de Windows y no en su GUI asi que tomalo con pinzas lo que te diga, lo mejor que podes hacer es leer la documentacion (MSDN).

LB_GETCURSEL puede ser llamado hasta cuando no hay ningun elemento seleccionado, para eso comprabas dwSel, asi que es perfectamente valido llamarlo en LBN_DBLCLK. Es mas, imaginate que no hace falta cambiar de elemento seleccionado para hacer doble click infinitas veces en el mismo ...
En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
problema: obtener Rect de un item de ListView
Programación Visual Basic
<[(x)]> 6 2,139 Último mensaje 15 Abril 2009, 01:14 am
por <[(x)]>
como sacar cualquier elemento de lista
Programación C/C++
karmi 1 2,798 Último mensaje 11 Noviembre 2010, 09:16 am
por Akai
Evitar doble click con click simple. (Fallo mecánico) « 1 2 »
Software
Saberuneko 12 129 Último mensaje 2 Septiembre 2014, 19:21 pm
por elezekiel
Seleccionar un Item de un Listview y darle click derecho
Programación Visual Basic
jack06 2 1,487 Último mensaje 12 Noviembre 2017, 19:45 pm
por okik
[Pregunta]: Detectar un click sobre un elemento
Desarrollo Web
MiguelCanellas 7 733 Último mensaje 31 Enero 2019, 05:31 am
por MiguelCanellas
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines