Consulta sobre como crear un ListView32 (solucionado)

Iniciado por el_c0c0, 15 Marzo 2010, 01:02 AM

0 Miembros y 1 Visitante están viendo este tema.

el_c0c0

Cita de: Eternal Idol en 15 Marzo 2010, 22:53 PM
Detesto FASM ... al menos tenes que llamar a InitCommonControls/InitCommonControlsEx (fue en lo primero que pense al leer el hilo pero la explicacion me confundio, no se creaba el control ...), CreateWindowEx en createlv devuelve 0.

Sigo viendo, esto tambien esta mal:
invoke  SendMessage,[dlglvhwnd], LVM_INSERTITEM,0,[lvi]
invoke  SendMessage,[dlglvhwnd], LVM_INSERTITEM,0, lvi

Lo mismo para la columna (lvc no [lvc]) y sacando WindowProc2 ya podes seguir  ::)

Bien, agregue el initcommoncontrols y initcommoncontrolsex con el parametro ICC_LISTVIEW_CLASSES, pero no me va. Ah, tambien cambie de [lvi] a lvi. Tambien saque la linea de SetWindowLong,[dlglvhwnd], GWL_WNDPROC, WindowProc2,pero igual. Que rayos pasa?
Saludos !
'-     coco
"Te voy a romper el orto"- Las hemorroides

bizco

#11




start:
      [b] invoke   InitCommonControls [/b]
       invoke  GetModuleHandle,0
       mov     [wc.hInstance],eax
       invoke  LoadIcon,0,IDI_APPLICATION
       .......
       .......


No me va, no es una explicacion. mira justo en el call que devuelve la funcion. si actualizaste el codigo lo mejor es que lo pongas aqui y podemos ser mas concretos.



No te voy a dar el codigo, pero fijate bien en tu codigo. ¿que va primero el huevo o la gallina?

En pocas palabras intentas meter un item cuando aun no existe la columna que lo contiene.

Columna1            Columna2           ColumnaX

Elemento1            sub                     sub

PD ya no se cuantas veces edite,  ese "problema" te viene pq usas  LVS_REPORT ¿quieres ese estilo para tu lv?

Eternal Idol

Cita de: el_c0c0 en 16 Marzo 2010, 04:14 AMBien, agregue el initcommoncontrols y initcommoncontrolsex con el parametro ICC_LISTVIEW_CLASSES, pero no me va. Ah, tambien cambie de [lvi] a lvi. Tambien saque la linea de SetWindowLong,[dlglvhwnd], GWL_WNDPROC, WindowProc2,pero igual. Que rayos pasa?
Saludos !

¿Y esta parte?: "Lo mismo para la columna (lvc no [lvc])", tenes que agregar la columna, usa elcodigo que tenias antes para eso pero con lvc (yo lo copie del primer mensaje del hilo).
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

el_c0c0

Cita de: Eternal Idol en 16 Marzo 2010, 07:56 AM
Cita de: el_c0c0 en 16 Marzo 2010, 04:14 AMBien, agregue el initcommoncontrols y initcommoncontrolsex con el parametro ICC_LISTVIEW_CLASSES, pero no me va. Ah, tambien cambie de [lvi] a lvi. Tambien saque la linea de SetWindowLong,[dlglvhwnd], GWL_WNDPROC, WindowProc2,pero igual. Que rayos pasa?
Saludos !

¿Y esta parte?: "Lo mismo para la columna (lvc no [lvc])", tenes que agregar la columna, usa elcodigo que tenias antes para eso pero con lvc (yo lo copie del primer mensaje del hilo).

Bien, no habia posteado resultados porque no estuve en casa. Si, quiero LVS_REPORT. Ya lo solucione, habia que usar Initcommoncontrols sin el Ex. Ahora lo que no entiendo es porque solo toma la letra L de la variable LV32, imagino que es por el tema de Wide o Ansi. No?

Muchisimas gracias gente :D
'-     coco
"Te voy a romper el orto"- Las hemorroides

Eternal Idol

De nadas  ::)

Seguramente; yo lo habia cambiado asi: include 'win32a.inc' probando otras cosas por eso me olvide y no lo mencione (a mi me sale LV32).
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

el_c0c0

Cita de: Eternal Idol en 18 Marzo 2010, 18:43 PM
De nadas  ::)

Seguramente; yo lo habia cambiado asi: include 'win32a.inc' probando otras cosas por eso me olvide y no lo mencione (a mi me sale LV32).

Claro yo habia usado eso mismo. Pero bueno, para sacarme la duda, como seria el asunto en Wide? yo tengo declarado _cap1 TCHAR 'LV32',0 sera otro tipo en vez de TCHAR? podria usar db para eso?. Saludos!
'-     coco
"Te voy a romper el orto"- Las hemorroides

Eternal Idol

TCHAR suena correcto pero es algo de FASM (en cuanto a ASM), mejor consulta su documentacion.
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

bizco

si, puedes usar db perfectamente. realmente tchar lo que haces es declarar como db (multibyte) o du para unicode que es el caso de la cabecera que estas usando.

Eternal Idol

Si usas db tenes que llamar a SendMessageA y usar la estructura LV_ITEMA (si incluis la cabecera correcta eso se hace automaticamente en teoria).
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