![]() |
Modificar El Font en un Menu
Estimados Companeros de forum es possible modificar el tamaño del font de un menu he buscado como hacerlo y no se.
Gracias. |
@Fabio, tienes que pasar por WinAPI.
Tienes que obtener el Handle del Menú: GetMenu function (winuser.h) - Win32 apps | Microsoft Docs Luego recuperar las propiedades del menú: GetMenuInfo function (winuser.h) - Win32 apps | Microsoft Docs Lo tienes que hacer en la siguiente estructura de datos: MENUINFO (winuser.h) - Win32 apps | Microsoft Docs Luego cambias el valor de cbSize y vuelves a setear el menú: SetMenuInfo function (winuser.h) - Win32 apps | Microsoft Docs |
Muchas Gracias Kuk pero tengo un problema y es que no se utilizar las api donde me pierdo es en definer los parametros de entrada de la function.
|
@Fabio,
Código COBOL:
No olvides de añadir al proyecto la User32.lib ---------- Post añadido el 21 de octubre de 2021 a las 11:08 ---------- @Fabio, ya nos dirás si ha funcionado ;) |
Kuk disculpa la demora pero tenia problemas con mi internet y si lo probe y me devuelve un valor handle del menu pero la function getmenuinfo no me retorna ningun valor en los parametron.
|
@Fabio, pues me he equivocado macho. Es lo que pasa siempre que andamos con prisas, mea culpa amigo.
Por lo pronto las funciones GetMenuInfo y SetMenuInfo sólo aparecen en Windows 10. Con lo cual, no existen en la User32.lib que trae PowerCOBO: [TABLE] Minimum supported client |Windows 2000 Professional [desktop apps only] Minimum supported server |Windows 2000 Server [desktop apps only] Target Platform |Windows Header |winuser.h (include Windows.h) Library |User32.lib DLL |User32.dll API set |ext-ms-win-ntuser-menu-l1-1-3 (introduced in Windows 10, version 10.0.14393) [/TABLE] Además, según me he documentado, podemos jugar con varias cosas, pero no con el tamaño del texto, porque este viene de los parámetros generales de Windows... La única opción es cambiarlo a nivel de parámetros de Windows o pasar por OwerDraw (dibujarlo en "custom"): Change System Menu Text Size |
Kuk una ultima pregunta y perdoname la insistencia he leido un post tuyo titulado call a cualquier DLL sin lib ni loadlibrary en powercobol podria ser esta una possible solucion?.
saludos, |
@Fabio, efectivamente se puede hacer esto añadiendo las líneas correspondientes en el fichero COBOL85.CBR de la manera siguiente:
Código:
[SHEET1.Entry]O lo cambias en los parámetros de Windows, o nos vamos a las historias "OwerDraw" que es dibujarlo tu mismo mediante la API de Windows. |
| La franja horaria es GMT +2. Ahora son las 01:28. |
Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.