Error en insertar imágenes en menú VFP6

19/09/2004 - 00:59 por Edgar Zambrano | Informe spam
Este es el codigo que estoy utilizando que me envio un compañero de
portalfox...

y no me funciona quisiera saber que error estoy cometiendo.

les agradezco su ayuda

set sysmenu to && quito el menu de VFP

set default "c:\farmacia" && ruta de inicio

*cargo mi menu
do "menu\mnuPrincipal.mpr"

*ahora si implemento este codigo
** Insertar Imágenes en el Menú de VFP 6.0

DECLARE INTEGER FindWindow IN win32api STRING,STRING
DECLARE INTEGER GetMenu IN win32api INTEGER
DECLARE INTEGER GetSubMenu IN win32api INTEGER,INTEGER
DECLARE INTEGER LoadImage IN win32api
INTEGER,STRING,INTEGER,INTEGER,INTEGER,INTEGER
DECLARE INTEGER SetMenuItemBitmaps IN win32api
INTEGER,INTEGER,INTEGER,INTEGER,INTEGER
DECLARE INTEGER GetMenuItemID IN win32api INTEGER,INTEGER
DECLARE INTEGER ModifyMenu IN win32api
INTEGER,INTEGER,INTEGER,INTEGER,STRING

* Especifico el Caption del Form donde se encuentra el Menú,
* en el caso de ser un menú definido por el usuario.
HWND = FindWindow(0,_SCREEN.CAPTION)

* Modifico el menú principal de VFP.
** Menú y Submenú a modificar, tomaremos como ejemplo el Menú "Archivo"
lnHandleMenu = GetMenu(HWND)
lnHandleSubMenu = GetSubMenu(lnHandleMenu,0)

* El segundo parámetro indica el SubMenú a modificar, en este caso:
* 0 = Archivo
* 1 = Edición
* 2 = Ver
* 3 = Formato
* 4 = Herramientas
* 5 = Programa
* 6 = Ventana
* 7 = Ayuda
** Path de las Imágenes. A modo de ejemplo se incluyen los de VFP.

lcPathImagen1 = "C:\farmacia\imgs\user.ico"
lcPathImagen2 = "C:\farmacia\imgs\close.ico"

** Carga de las Imagenes.

lnImagen1 = LoadImage(0,lcPathImagen1 ,0,13,13,16)
lnImagen2 = LoadImage(0,lcPathImagen2 ,0,13,13,16)

* Los 3 últimos parametros indican: ancho, alto y color de la imagen.
** ID del Menu.

lnMenuID1 = GetMenuItemID(lnHandleSubMenu, 0)
lnMenuID2 = GetMenuItemID(lnHandleSubMenu, 1)

* El segundo parámetro representa la opción dentro del SubMenú:

* 0 = Nuevo
* 1 = Abrir
* 4 = Guardar
* 14 = Imprimir

** Definición del Menu con la Imagen.
SetMenuItemBitmaps(lnHandleSubMenu, lnMenuID1, 0, lnImagen1, lnImagen1)
SetMenuItemBitmaps(lnHandleSubMenu, lnMenuID2, 0, lnImagen2, lnImagen2)

** Modificación del Menu.
ModifyMenu(lnHandleMenu, lnMenuID1, 0, lnMenuID1, "\<Usuarios CTR+U")
ModifyMenu(lnHandleMenu, lnMenuID2, 0, lnMenuID2, "\<Salir... CTR+S")
CLEAR DLLS

read events


espero respuesta de posibles soluciones a mi error, les agradezco o todos
los compañeros del foro que me ayuden y a los demás tambien porque se que
en otra ocasión padrán ayudarme, solo quiero saber que estoy haciendo mal
o que me falta, porque el codigo no me coloca los iconos que quiero
colocar en el menu...

Gracias.




Edgar Zambrano
Programador VFP6
ejzm19@yahoo.com
Soledad - Atlántico - Colombia.

-
PortalFox :: Nada corre como un zorr
http://www.portalfox.co

PortalFox - NNTP Forum Gatewa

Preguntas similare

Leer las respuestas

#1 Esparta Palma
19/09/2004 - 03:45 | Informe spam
Y a todo esto... cual es el error especifico???

=Este es el codigo que estoy utilizando que me envio un compañero de
portalfox...

y no me funciona quisiera saber que error estoy cometiendo.

les agradezco su ayuda

set sysmenu to && quito el menu de VFP

set default "c:\farmacia" && ruta de inicio

*cargo mi menu
do "menu\mnuPrincipal.mpr"

*ahora si implemento este codigo
** Insertar Imágenes en el Menú de VFP 6.0

DECLARE INTEGER FindWindow IN win32api STRING,STRING
DECLARE INTEGER GetMenu IN win32api INTEGER
DECLARE INTEGER GetSubMenu IN win32api INTEGER,INTEGER
DECLARE INTEGER LoadImage IN win32api
INTEGER,STRING,INTEGER,INTEGER,INTEGER,INTEGER
DECLARE INTEGER SetMenuItemBitmaps IN win32api
INTEGER,INTEGER,INTEGER,INTEGER,INTEGER
DECLARE INTEGER GetMenuItemID IN win32api INTEGER,INTEGER
DECLARE INTEGER ModifyMenu IN win32api
INTEGER,INTEGER,INTEGER,INTEGER,STRING

* Especifico el Caption del Form donde se encuentra el Menú,
* en el caso de ser un menú definido por el usuario.
HWND = FindWindow(0,_SCREEN.CAPTION)

* Modifico el menú principal de VFP.
** Menú y Submenú a modificar, tomaremos como ejemplo el Menú "Archivo"
lnHandleMenu = GetMenu(HWND)
lnHandleSubMenu = GetSubMenu(lnHandleMenu,0)

* El segundo parámetro indica el SubMenú a modificar, en este caso:
* 0 = Archivo
* 1 = Edición
* 2 = Ver
* 3 = Formato
* 4 = Herramientas
* 5 = Programa
* 6 = Ventana
* 7 = Ayuda
** Path de las Imágenes. A modo de ejemplo se incluyen los de VFP.

lcPathImagen1 = "C:\farmacia\imgs\user.ico"
lcPathImagen2 = "C:\farmacia\imgs\close.ico"

** Carga de las Imagenes.

lnImagen1 = LoadImage(0,lcPathImagen1 ,0,13,13,16)
lnImagen2 = LoadImage(0,lcPathImagen2 ,0,13,13,16)

* Los 3 últimos parametros indican: ancho, alto y color de la imagen.
** ID del Menu.

lnMenuID1 = GetMenuItemID(lnHandleSubMenu, 0)
lnMenuID2 = GetMenuItemID(lnHandleSubMenu, 1)

* El segundo parámetro representa la opción dentro del SubMenú:

* 0 = Nuevo
* 1 = Abrir
* 4 = Guardar
* 14 = Imprimir

** Definición del Menu con la Imagen.
SetMenuItemBitmaps(lnHandleSubMenu, lnMenuID1, 0, lnImagen1, lnImagen1)
SetMenuItemBitmaps(lnHandleSubMenu, lnMenuID2, 0, lnImagen2, lnImagen2)

** Modificación del Menu.
ModifyMenu(lnHandleMenu, lnMenuID1, 0, lnMenuID1, "\<Usuarios CTR+U")
ModifyMenu(lnHandleMenu, lnMenuID2, 0, lnMenuID2, "\<Salir... CTR+S")
CLEAR DLLS

read events


espero respuesta de posibles soluciones a mi error, les agradezco o todos
los compañeros del foro que me ayuden y a los demás tambien porque se que
en otra ocasión padrán ayudarme, solo quiero saber que estoy haciendo mal
o que me falta, porque el codigo no me coloca los iconos que quiero
colocar en el menu...

Gracias.




Edgar Zambrano
Programador VFP6

Soledad - Atlántico - Colombia.

ž,ø€º°`°º€ø,žž,ø€º°`°º€ø,žž,ø€º°`°º€ø,žž,ø€º°`°º
Espartaco Palma Martínez
SysOp PortalFox.com
email:mexicoSINSPAM[Arroba]portalfox.com

-
PortalFox :: Nada corre como un zorr
http://www.portalfox.co

PortalFox - NNTP Forum Gatewa
Respuesta Responder a este mensaje
#2 Edgar Zambrano
21/09/2004 - 00:38 | Informe spam
Eso es lo raro que el código no me envia ninguna clase de error... y no me
realiza los cambios que le estoy enviando a realizar, osea que no me
coloca las imagenes en el menú. por eso realize este comentario a ver si
alguien me podria decir que es lo que falta, porque el codigo no hace nada.

si quieres crea un menu de ejemplo y prueba el codigo a ver que te sucede
si te funciona o no... claro el codigo lo tengo en un archivo .prg

espero y me puedas ayudar... de todos modos yo seguire intentando a ver si
me funciona porque e realizado de todo y nada pero no daré por vencido...



Edgar Zambrano
Programador VFP6

Soledad - Atlántico - Colombia.

PD: te agradezco si encuentras solución enviarme el codigo con un ejemplo
para saber que estoy haciendo mal y corregir el rpoyecto que estoy
realizando.

-
PortalFox :: Nada corre como un zorr
http://www.portalfox.co

PortalFox - NNTP Forum Gatewa
Respuesta Responder a este mensaje
#3 Alanis Lafuente Carlos Daniel
30/09/2004 - 20:02 | Informe spam
El Error es muy simple amigo no debes de poner Iconos debes de poner BMPŽs
todo dado por la siguiente sentencia de Api DECLARE INTEGER
SetMenuItemBitmaps IN win32api
Bueno, asi debe de funcionarte, ademas otra cosa si consigues que el
tamaño de la imagen que muestras agrandarlo AVISAME, ya que probe dandole
distintos formatos e iguales y con las imagenes de igual o distinto tamaño
en:lnImagen1 = LoadImage(0,lcPathImagen1 ,0,13,13,16)
osea algo asi >lnImagen1 = LoadImage(0,lcPathImagen1 ,0,32,32,256) y
no ANDA

Bueno espero haber sido de ayuda

K

-
PortalFox :: Nada corre como un zorr
http://www.portalfox.co

PortalFox - NNTP Forum Gatewa
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida