Gracias Rui Pinto (Rapinto)
COBOL Foro
Foro dedicado a COBOL, a la Programación y a la Informática.
Retroceder   COBOL Foro > IDE-s y compiladores COBOL > Cocina Casera > Cocina PowerCOBOL + WinAPI
Cocina PowerCOBOL + WinAPI Código WinAPI en PowerCOBOL
Comunicados
Respuesta
 
Herramientas

  #1
Antiguo 1 de marzo de 2015, 23:34
IDENTIFICATION DIVISION
Rapinto
Gran amigo del Foro y Guru de COBOL
Activista del Foro: Activista del Foro - Razón: ¡Gracias!  Agradecimientos: Por muchos agradecimientos de parte de los Foreros - Razón: Por ayudar mucho a los foreros  Guru de los Gurus: Por solidos y amplios conocimientos - Razón: Por saber demasiado! 
ENVIRONMENT DIVISION
Avatar de Rapinto
DATA DIVISION
Forero desde (Registrado)febrero 2015
Portugal
Ubicación Porto
Última Actividad29.01.2018 19:23
PROCEDURE DIVISION
PostsPosts: 246
Ha dicho GraciasEnviado: 19
Ha recibido agradecimientosRecibido: 216
Mejores respuestasSoluiones: 47
ReputaciónReputación: 14
Rapinto is on a distinguished road Rapinto is on a distinguished road Rapinto is on a distinguished road Rapinto is on a distinguished road Rapinto is on a distinguished road Rapinto is on a distinguished road Rapinto is on a distinguished road
Nuclear ChooseColor

Código para escolher uma COR :

O código da Cor é devolvido em 4 Bytes.

Código COBOL:
  1.  01 W-RGB         GLOBAL.
  2.     03 W-RED                 PIC X.
  3.     03 W-GREEN               PIC X.
  4.     03 W-BLUE                PIC X.
  5.     03 W-COLORFILLER         PIC X  VALUE LOW-VALUE.


Código COBOL:
  1.     INITIALIZE LNKHANDLE.
  2.     CALL "CHOOSECOLOR" USING LNKCOLOR LNKHANDLE.  
  3.     MOVE LNKCOLOR TO W-RGB.
  4.     MOVE LOW-VALUES TO W-COLORFILLER.
  5.     MOVE W-RGB       TO "BackColor" OF CMSTATIC315.


Chamada á API do Windows:

Código COBOL:
  1.  @OPTIONS NOALPHA                                                      
  2. *****************************************************************      
  3. *  Copyright (c) 2005 RUI PINTO SOFTWARE.                              
  4. *                                                                      
  5. *  Last Modified:    Jun 2008.                                          
  6. *****************************************************************      
  7.  IDENTIFICATION DIVISION.                                              
  8.  PROGRAM-ID.    CHOOSECOLOR.                                            
  9.  AUTHOR.        Rui Pinto - JUN 2008.                                  
  10. *-----------------------------------------------------------------      
  11.  ENVIRONMENT DIVISION.                                                  
  12.  CONFIGURATION SECTION.                                                
  13.  SPECIAL-NAMES.                                                        
  14.  INPUT-OUTPUT SECTION.                                                  
  15.  FILE-CONTROL.                                                          
  16. *-----------------------------------------------------------------      
  17.  DATA DIVISION.                                                        
  18.  BASED-STORAGE SECTION.                                                
  19.  FILE SECTION.                                                          
  20.  WORKING-STORAGE SECTION.                                              
  21.  01 WSCHOOSECOLOR.                                                      
  22.      03  LSTRUCTSIZE        PIC S9(009)  COMP-5.                        
  23.      03  HWNDOWNER          PIC S9(009)  COMP-5.                        
  24.      03  HINSTANCE          PIC S9(009)  COMP-5.                        
  25.      03  RGBRESULT          PIC X(004).                                
  26.      03  LPCUSTCOLOR        POINTER.                                    
  27.      03  FLAGS              PIC S9(009)  COMP-5.                        
  28.      03  CUSTDATA           PIC S9(009)  COMP-5.                        
  29.      03  FNHOOK             PIC S9(009)  COMP-5.                        
  30.      03  TEMPLATENAME       POINTER.                                    
  31. *                                                                      
  32.  01  CUSTCOLOR              PIC X(064) VALUE ALL ZERO.                  
  33.  01  TMLP                   PIC X(001) VALUE X"00".                    
  34.  01  RESULT                 PIC S9(009)  COMP-5.                        
  35.  01  OLDRGB                 PIC X(004).                                
  36.  LINKAGE SECTION.                                                      
  37.  01  LNKCOLOR                         PIC X(004).                      
  38.  01  LNKHANDLE                        PIC S9(009)  COMP-5.              
  39. *                                                                      
  40.  PROCEDURE DIVISION USING LNKCOLOR LNKHANDLE.                          
  41.  MAIN SECTION.                                                          
  42.  MAIN-00.                                                              
  43.       MOVE LNKCOLOR TO OLDRGB CUSTCOLOR(1:4).                          
  44.       INITIALIZE WSCHOOSECOLOR.                                        
  45.       MOVE 36 TO LSTRUCTSIZE.                                          
  46.       MOVE LNKHANDLE TO HWNDOWNER.                                      
  47.       MOVE FUNCTION ADDR (CUSTCOLOR)    TO LPCUSTCOLOR.                
  48.       MOVE FUNCTION ADDR (TMLP)         TO TEMPLATENAME.                
  49.       MOVE 3         TO FLAGS.                                          
  50.       MOVE LNKCOLOR  TO RGBRESULT.                                      
  51.       CALL "ChooseColorA" WITH STDCALL USING BY REFERENCE WSCHOOSECOLOR
  52.                        RETURNING RESULT.                                
  53.       IF RESULT = 0 MOVE OLDRGB TO LNKCOLOR                            
  54.           ELSE      MOVE RGBRESULT TO LNKCOLOR.                        
  55.  MAIN-99.                                                              
  56.  END PROGRAM CHOOSECOLOR.                                              
Rapinto no ha iniciado sesión   Responder Con Cita
Han dicho Gracias: 5
Hrmcobol ( 1 de marzo de 2015), Josber (19 de abril de 2015), Kuk ( 2 de marzo de 2015), Recato53 ( 9 de marzo de 2015), Xavier ( 2 de febrero de 2016)
Respuesta


Usuarios activos actualmente viendo este tema: 1 (0 miembros y 1 visitantes)
 
Herramientas

Derechos de Publicación
No puedes publicar nuevos temas
No puedes publicar posts/responder
No puedes adjuntar archivos
No puedes editar tus posts

BB code is habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado



La franja horaria es GMT +1. Ahora son las 08:55.
Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2020, Jelsoft Enterprises Ltd.