Intento modificar un menú hecho con el generador de Menús Visual FoxPro cambiando el estilo de fuente, el tamaño y el color.
Esto lo hago poniendo en la condición Saltar por: .F. FONT "tahoma", 12. COLOR RGB(0,0,225,240,240,240) Azul sobre gris claro. Pero solo consigo que funcione bien el estilo y el tamaño de la fuente en los submenús, pero no los colores. En el menú principal no consigo que cambie nada.
No sé si esto puede estar relacionado con que el generador de menús, en el fichero .MPR, introduce COLOR SCHEME 3 en la elaboración (DEFINE PAD) del menú principal y COLOR SCHEME 4 en la elaboración (DEFINE POPUP) de los submenús. Pero no sé como puedo cambiarlo desde el generador de menús.
Agradecería mucho que alguien me ayudara a resolverlo.
Saludos.
Gracias por tu respuesta.
Si, ya sé que el DEFINE PAD lleva las cláusulas FONT, STYLE y COLOR. El problema está en yo hago el menú con el generador de FoxPro. Para poner el color en un barra (DEFINE BAR) es fácil, basta con poner en el apartado SALTAR POR: la fuente, el tamaño el color, ( por ejemplo: .F. FONT "calibri", 11 COLOR RGB(128,128,128,240,240,240), RGB(255,128,0,240,240,240) ) y todo sale correctamente.
Cuando escribo lo mismo en el apartado SALTAR POR: del menú superior (DEFINE PAD), es entonces cuando me sale un error porque el generador crea su propio color ( COLOR SCHEME 3), y por lo tanto se duplica la cláusula COLOR con la que pongo en el apartado SALTAR POR. Si dejo solo la fuente y el tamaño no se genera ningún error, pero no hace ningún caso de lo escrito.
Muchas gracias por su interés, HernanCano
Esa solución que me propones es imposible por dos motivos:
Primero: porque el .MPR no se genera con COLOR dobles, ya que se produce un error de compilación avisando del duplicado antes de su generación.
Segundo: en DEFINE PAD, el .MPR solo toma la cláusula COLOR que pone el generador de menús, y si le pongo una cláusula COLOR en la condición SALTAR POR, da error por duplicado con la que él genera. Si no la pongo, no da ningún error y genera el ejecutable con el color que el generador pone. Si edito el .MPR con posterioridad a la generación del ejecutable, no servirá de nada, seguirá con el color que él generó, porque el ejecutable no lee el .MPR. Es más, puedo hasta borrar o renombrar el .MPR que no se producirá ningún fallo en la ejecución.
Saludos.
Sr. HenanCanon, le luego que No ponga en mi escritura palabras que NO he escrito. Lea bien lo que escribo, por favor.
No he dicho que no use el .MPR, esas son palabras suyas, no mías. Le copio literalmente lo que escribí “ el ejecutable no lee el .MPR. Es más, puedo hasta borrar o renombrar el .MPR que no se producirá ningún fallo en la ejecución.” Eso es justamente lo que escribí, lo de que no use el .MPR es cosa suya.
Claro que uso el .MPR, es necesario para generar el ejecutable, de hecho lo llamo en mi código. Pero cada vez que se genera el ejecutable se genera también un nuevo .MPR que queda dentro de él, por lo que es inútil modificarlo con posterioridad. Una vez generado el ejecutable ya que no vuelve a leer el .MPR (Eso fue lo que escribí).
También podría modificarlo antes de generar el ejecutable, pero es igualmente inútil, porque durante la generación del ejecutable se sobrescribe el .MPR que he modificado y deja la cláusula COLOR original.
Y si no me cree, es problema suyo. Además el problema no es si uso el .MPR o no, el problema es por qué, si con el generador de menús, en la condición SALTAR POR de DEFINE BAR puedo poner la cláusula COLOR y funciona, ¿cómo tengo que hacerlo en DEFINE PAD sin que me de error de compilación?.
No sé si no me expreso bien o es que no me entiendes.
“2. Si necesitas hacer el ajuste de COLOR dentro del MODIFY MENU, pues entonces no lo puedes hacer. ¿Por qué? Simple y llenamente por que en VFP no se puede (vía MODIFY MENU).”
Sí se puede ajustar el color con MODIFY MENU, pero el color de una barra, DEFINE BAR, y se hace en la opción SALTAR POR. Esa parte me funciona. Lo que no logro modificar es el DEFINE PAD (El menú superior). Ahí no funcional.
¿Hay solución? Sí: vía MODIFY COMMAND el menú.MPR generado.
Te repito lo mismo que en el anterior. Cada vez que se genera un archivo ejecutable, se genera un nuevo .MPR. He modificado el .MPR en dos situaciones, la primera antes de generar el ejecutable, y la segunda después de generar el ejecutable.
Si modifico el .MPR antes de generar el ejecutable, cambiando en el DEFINE PAD la cláusula COLOR con los colores que deseo, resulta que al generar el ejecutable, me modifica el .MPR y vuelve a poner los colores que tiene por defecto.
Cuando modifico el .MPR después de generar el ejecutable, no sirve de nada porque el ejecutable no lee, o si prefieres, no usa el .MPR después de generado.
El archivo .MPR es necesario para generar el ejecutable, pero una vez generado no se lee o no se usa, porque el ejecutable ya lleva todas las instrucciones de este archivo. La prueba la tienes que cuando instalas un programa a un cliente no le pones el .MPR, solo el ejecutable y las librerías necesarias.
--
Blog de la Comunidad Visual FoxPro en Español http://comunidadvfp.blogspot.com
---
Has recibido este mensaje porque estás suscrito al grupo "Comunidad de Visual Foxpro en Español" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a publicesvfoxp...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/publicesvfoxpro/3607acc5-5532-416c-9ce8-38431077b1f1n%40googlegroups.com.
