Retroceder   Foros del Web > Temas generales de computación > Programación > Visual Basic

Respuesta
 
Herramientas Desplegado
Antiguo 09-mar-2007, 01:26   #1 (permalink)
DeYoN está en el buen camino
 
Avatar de DeYoN
 
Fecha de Ingreso: febrero-2004
Mensajes: 80
Menu a la derecha

Saludos, quiero crear un Menu Ayuda, pero que este situado a la derecha de la ventana, en lugar a la izquierda.

¿Alguna idea?
DeYoN está desconectado   Responder Citando
Antiguo 10-mar-2007, 21:37   #2 (permalink)
seba123neo ha deshabilitado el karma
 
Avatar de seba123neo
 
Fecha de Ingreso: febrero-2007
Mensajes: 424
Re: Menu a la derecha

aca tenes un ejemplo claro:

El ejemplo utiliza las funciones Api: GetMenu, GetMenuItemID, ModifyMenu y DrawMenuBar.

Las 2 primeras recuperan los HWND necesarios para pasarle a ModifyMenu. Una ves ejecutado ModifyMenu debemos llamar a DrawMenuBar, que haría como un Refresh o repintado del mismo.

Importante, en este ejemplo hay 3 menues, y para indicar que vamos a alinear el último se especifica un 2 y no un 3 en el parámetro de ModifyMenu, es decir es el total -1

Controles

Colocar un Command1 y especificar en la línea de ModifyMenu el Index del último menú



Código fuente en el formulario

Option Explicit

'Delaraciones API
'************************************************* ***********************
Private Declare Function GetMenu Lib "user32" (ByVal hWnd As Long) As Long
Private Declare Function GetMenuItemID Lib "user32" (ByVal retMenu As Long, _
ByVal nPos As Long) As Long
Private Declare Function ModifyMenu Lib "user32" Alias "ModifyMenuA" (ByVal _
retMenu As Long, ByVal nPosition As Long, _
ByVal wFlags As Long, ByVal wIDNewItem As _
Long, ByVal lpString As Any) As Long
Private Declare Sub DrawMenuBar Lib "user32" (ByVal hWnd As Long)

Private Sub Command1_Click()
Dim retMenu As Long, IDMenu As Long

'recupera el HWND del menu de la aplicación
retMenu = GetMenu(Me.hWnd)

'Handle del menu a alinear
IDMenu = GetMenuItemID(retMenu, 2)

'Se le pasan los 2 parámetros anteriores, el tercer _
parámetro le indica la alineacion. El último el caption
ModifyMenu retMenu, IDMenu, &H4000, IDMenu, "Acerca de.."

'Se redibuja o refresca el menú pasandole al api el HWND de la venta que lo contiene
DrawMenuBar Me.hWnd

End Sub
seba123neo está desconectado   Responder Citando
Antiguo 12-mar-2007, 03:59   #3 (permalink)
DeYoN está en el buen camino
 
Avatar de DeYoN
 
Fecha de Ingreso: febrero-2004
Mensajes: 80
Re: Menu a la derecha

MUchas gracias, funciono perfectamente.
DeYoN está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 17:42.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93