0

![]() |
![]() |
Senior |
Este es un Control de Usuario realizado en VB6 por Leandro Ascierto , lo converti y modifique a ocx para tener compatibilidad con PowerCobol , se pueden lograr hacer muchas y lograr una interfaz mas moderna.
link : http://leandroascierto.com/blog/836-2/
Se pueden crear varios controles button , label , checkbox , toggle botton , radio button , image tc
Eventos : Click , DobleClick , MouseOver , MouseLeave etc
Propiedades:BackColor , Border , ForeColor , FrontColor , Hotline , Picture
Metodos : PictureFromURL PictureFromPath
ocx: ElsisBoxUpgr.ocx registrarla
Soporta fuentes tipo icofonts : como Segoe MDL2 , IconsFont Awsome
Soporta imagenes de tipo png , jpg etc
Saludos....
![]() |
![]() |
Guardián del Foro |
Muchas gracias. muy buen aporte
Saludos
Fito....
![]() |
![]() |
Senior |
Muito bom!
![]() |
![]() |
Junior |
Obrigado.
Bom trabalho
![]() |
![]() |
Senior |
Hola @Joseg , los valores son unicode convertidos a decimal
es decir el valor E700(unicode)(hex) su valor dec es 59136 tipo long para la ocxCOBOL Código:
IF "IconCharCode" OF BOX-CHECK5 = 59193 THEN *>HEX E739 MOVE 59194 TO "IconCharCode" OF BOX-CHECK5 *>HEX E73A ELSE MOVE 59193 TO "IconCharCode" OF BOX-CHECK5 *>HEX E739 END-IF.
En este link estan los valores del fuente Segoe MDL2 Assets icons
Segoe MDL2 Assets icons - Windows apps | Microsoft Docs
Saludos ....
![]() |
![]() |
Senior |
Existe alguma possibilidade da janela ser Moveable:
Indicates whether the form is moveable when the title bar is dragged or the system menu Move function is selected. This corresponds to the Moveable property.
"Style" sem "TitleBar" penso que não há alternativa, mas se houvesse seria interessante, as janelas ficavam mais "modernas" !!!
Gracias.
![]() |
![]() |
Senior |
@Joseg Se puede mover , arrastrar y soltar el formulario perfectamente desde Box-LBLTITULO = Titulo con la siguientes lineas
Declarar en el WORKING-STORAGEEn el Evento Box-LBLTITULO-MouseUpCOBOL Código:
*-----RUTINAS PARA MOVER LA FORM SIN TITULO 01 GLOBAL-DATA GLOBAL. 02 G-DRAG-START PIC 1(1) BIT. 88 G-IS-DRAG-START VALUE B"1". 01 tempx PIC S9(9) COMP-5 IS GLOBAL. 01 tempy PIC S9(9) COMP-5 IS GLOBAL. 01 new-tempx PIC S9(9) COMP-5 IS GLOBAL. 01 new-tempy PIC S9(9) COMP-5 IS GLOBAL. 01 ScreenLeft PIC S9(9) COMP-5 IS GLOBAL. 01 ScreenTop PIC S9(9) COMP-5 IS GLOBAL. 01 ScreenWidth PIC S9(9) COMP-5 IS GLOBAL. 01 ScreenHeight PIC S9(9) COMP-5 IS GLOBAL. 01 ScreenScale PIC S9(4) COMP-5 IS GLOBAL. 01 W-BUTTON PIC S9(4) COMP-5 IS GLOBAL. 01 W-BOOL REDEFINES W-BUTTON IS GLOBAL. 02 FILLER PIC 1(5) BIT. 02 W-BUTTON-CENTER PIC 1(1) BIT. 02 W-BUTTON-RIGHT PIC 1(1) BIT. * 88 W-IS-BUTTON-RIGHT VALUE B"0". 02 W-BUTTON-LEFT PIC 1(1) BIT. 88 W-IS-BUTTON-LEFT VALUE B"1". 02 FILLER PIC 1(8) BIT. *------------------------------------------------------En el Evento Box-LBLTITULO-MouseDownCOBOL Código:
ENVIRONMENT DIVISION. DATA DIVISION. WORKING-STORAGE SECTION. LINKAGE SECTION. 01 POW-BUTTON PIC S9(4) COMP-5. 01 POW-SHIFT PIC S9(4) COMP-5. 01 POW-X COMP-1. 01 POW-Y COMP-1. PROCEDURE DIVISION USING POW-BUTTON POW-SHIFT POW-X POW-Y. IF G-IS-DRAG-START THEN MOVE B"0" TO G-DRAG-START move 0 to "MousePointer" OF pow-self end-if.En el Evento Box-LBLTITULO-MouseMoveCOBOL Código:
ENVIRONMENT DIVISION. DATA DIVISION. WORKING-STORAGE SECTION. LINKAGE SECTION. 01 POW-BUTTON PIC S9(4) COMP-5. 01 POW-SHIFT PIC S9(4) COMP-5. 01 POW-X COMP-1. 01 POW-Y COMP-1. PROCEDURE DIVISION USING POW-BUTTON POW-SHIFT POW-X POW-Y. move POW-BUTTON to W-BUTTON. move pow-x to tempx. move pow-y to tempy. IF W-IS-BUTTON-LEFT THEN MOVE B"1" TO G-DRAG-START end-if.Estas rutinas tambien las podes colocar en los eventos MouseDown - MouseUp - MouseMove del formulario para mover y soltarCOBOL Código:
ENVIRONMENT DIVISION. DATA DIVISION. WORKING-STORAGE SECTION. LINKAGE SECTION. 01 POW-BUTTON PIC S9(4) COMP-5. 01 POW-SHIFT PIC S9(4) COMP-5. 01 POW-X COMP-1. 01 POW-Y COMP-1. PROCEDURE DIVISION USING POW-BUTTON POW-SHIFT POW-X POW-Y. IF G-IS-DRAG-START THEN compute new-tempy = "Top" OF pow-self + pow-y - tempy compute new-tempx = "Left" OF pow-self + pow-x - tempx move new-tempy to "Top" OF pow-self move new-tempx to "Left" OF pow-self MOVE 2 TO "MousePointer" OF POW-SELF END-IF.
desde el formulario
Saludos ........
![]() |
![]() |
Senior |
Perfeito
Todos os OCX deste site: http://leandroascierto.com/blog/category/ocx/
são muito interessantes !!!!
![]() |
![]() |
Guru de COBOL |
Felicidades por el trabajo, impresionante aporte.
Actualmente hay 1 usuarios viendo este tema. (0 miembros y 1 visitantes)
Marcadores