Ver Mensaje Individual
  #10
Antiguo 31 de julio de 2021, 10:04
Kuk
Administrador
Última Actividad 19.09.2026 20:11
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

Citación del post de jjcol Ver Mensaje
para dejar columnas estáticas
Código COBOL:
  1.  IDENTIFICATION DIVISION.
  2.  PROGRAM-ID. VISTA-EXTENDIDA.
  3. **************************************************
  4. * RUTINA PARA OPCIONES EXTENDIDAS EN EL LISTVIEW *
  5. **************************************************
  6.  ENVIRONMENT DIVISION.
  7.  CONFIGURATION SECTION.
  8.  SPECIAL-NAMES.
  9.      DECIMAL-POINT IS COMMA.
  10.  INPUT-OUTPUT SECTION.
  11.  DATA DIVISION.
  12.  WORKING-STORAGE SECTION.
  13. *MOVE "HWND" OF NOMBRE-CONTROL TO WS-HANDLE
  14.  01  WS-LINEA-ENTERA              PIC S9(9) COMP-5 VALUE 32.
  15.  01  WS-LINK                      PIC S9(9) COMP-5.
  16.  01  WS-GRID                      PIC S9(9) COMP-5 value 01.
  17.  01  WS-DRAG                      PIC S9(9) COMP-5 VALUE 16.
  18.  01  LVM-SETEXTENDEDLISTVIEWSTYLE PIC S9(9) COMP-5 VALUE 4150.
  19.  01  LVS-EX-FULLROWSELECT         PIC S9(9) COMP-5 VALUE 32.
  20.  01  LVS-EX-HEADERDRAGDROP        PIC S9(9) COMP-5 VALUE 16.
  21.  01  LVS-EX-GRIDLINES             PIC S9(9) COMP-5 VALUE 01.
  22.  01  LVS-EX-FLATSB                PIC S9(9) COMP-5 VALUE 256.
  23.  01  LVS-NOSORTHEADER             PIC S9(9) COMP-5 VALUE h"8000".
  24.  01  LV-STYLE                     PIC S9(9) COMP-5.
  25.  01  LVM_GETHEADER    PIC S9(9) COMP-5 VALUE h"101F".
  26.  01  RESP             PIC S9(9) COMP-5.
  27.  LINKAGE SECTION.
  28.  01  WS-HANDLE                    PIC S9(9) COMP-5.
  29.  
  30.  PROCEDURE DIVISION USING WS-HANDLE.
  31. **********************************************
  32. **** HABILITA LINEA ENTERA EN EL LISTVIEW ****
  33. **********************************************
  34.      CALL "SendMessageA" WITH STDCALL USING BY VALUE WS-HANDLE
  35.                                             BY VALUE LVM-SETEXTENDEDLISTVIEWSTYLE
  36.                                             BY VALUE LVS-EX-FULLROWSELECT
  37.                                             BY VALUE WS-LINEA-ENTERA
  38.    
  39. ****************************************************
  40. **** HABILITA CAMBIO DE COLUMNAS EN EL LISTVIEW ****
  41. ****************************************************
  42.      CALL "SendMessageA" WITH STDCALL USING BY VALUE WS-HANDLE
  43.                                             BY VALUE LVM-SETEXTENDEDLISTVIEWSTYLE
  44.                                             BY VALUE LVS-EX-HEADERDRAGDROP
  45.                                             BY VALUE WS-DRAG
  46.    
  47. *****************************************************
  48. **** HABILITA APARIENCIA DE TABLA EN EL LISTVIEW ****
  49. *****************************************************
  50.      CALL "SendMessageA" WITH STDCALL USING BY VALUE WS-HANDLE
  51.                                             BY VALUE LVM-SETEXTENDEDLISTVIEWSTYLE
  52.                                             BY VALUE LVS-EX-GRIDLINES
  53.                                             BY VALUE WS-GRID
  54.    
  55. *****************************************************
  56. **** HABILITA FLAT SCROLLBARS                    ****
  57. *****************************************************
  58.      CALL "SendMessageA" WITH STDCALL USING BY VALUE WS-HANDLE
  59.                                             BY VALUE LVM-SETEXTENDEDLISTVIEWSTYLE
  60.                                             BY VALUE LVS-EX-FLATSB
  61.                                             BY VALUE -1
  62.    
  63. *****************************************************
  64. **** DESHABILITA CABECERA                        ****
  65. *****************************************************
  66.      CALL "SendMessageA" WITH STDCALL USING BY VALUE WS-HANDLE
  67.                                             BY VALUE LVM_GETHEADER
  68.                                             BY VALUE 0
  69.                                             BY VALUE 0
  70.                                             RETURNING RESP    
  71.                                            
  72.      CALL "EnableWindow" WITH STDCALL USING BY VALUE RESP
  73.                                             BY VALUE 0
  74.                                            
  75. *****************************************************
  76. **** DESHABILITA BOTONES                         ****
  77. *****************************************************
  78.       CALL "GetWindowLongA" WITH STDCALL USING BY VALUE WS-HANDLE      
  79.                                                BY VALUE -16
  80.                                                RETURNING LV-STYLE                                               .
  81.      
  82.       ADD LVS-NOSORTHEADER TO LV-STYLE
  83.      
  84.       CALL "SetWindowLongA" WITH STDCALL USING BY VALUE WS-HANDLE
  85.                                                BY VALUE -16
  86.                                                BY VALUE LV-STYLE
  87.       .

No te aolvides de añadir la opción ALPHAL(WORD)



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita