implementar un menu en un webtoolbar

Estimados Amigos
Comunidad xojo

Nuevamente recurriendo a su valiosa ayuda y ojala me puedan ayudar.

Tengo un WebToolBar llamado MainToolBar en una webpage

Al MainToolBar le agregado 2 WebToolbarButton y en uno de ellos llamado MaestroButton

He intentado de crear un menú para se muestre, cuando el usuario pulse clic en el boton MaestroButton, con el siguiente código de programa:

Dim tbMenu As WebToolbarMenu = WebToolbarMenu(Me.ItemWithName(“MaestroButton”))
Dim menu As New WebMenuItem
menu.Append(New WebMenuItem(“Uno”))
menu.Append(New WebMenuItem(“Dos”))
menu.Append(New WebMenuItem(“Tres”))

tbmenu.Menu = menu

El problema es que no me reconoce el nombre del botón MaestroButton, en la siguiente instrucción:

Me.ItemWithName(“MaestroButton”)

He revisado en el botón y tiene los siguientes datos:
Item Name: MaestroButton
Item Super:WebToolBarButton
Caption: Maestro

No tengo la certeza en que evento del MainToolBar debo poner el código de programa

Muy agradecido quedo de ustedes y gracias por sus respuestas que son muy importantes

Cordialmente,

Raul

Hola Raúl,

En este caso en particular me vendría (o nos vendría) bien un enlace desde el que pudiésemos descargar un proyecto Xojo de ejemplo que mostrase ese problema en particular. Creo que de ese modo nos resultaría más sencillo indicarte el “por qué” del problema :wink:

Gracias!

Javier

Tras haber echado un vistazo al cdigo de ejemplo, pongo en pblico la solucin al problema para que pueda resultar de ayuda a otros usuarios de Xojo.

La forma en la que podemos crear y asignar un men de forma dinmica a una barra de herramientas en un proyecto web, asegurndonos previamente de que el botn sobre el que se va a crear/asignar el men se corresponda con la clase “WebToolbarMenu”. Por ejemplo, el siguiente cdigo puede ir tanto en los eventos Open como Shown de la WebToolBar aadida a la pgina (preferiblemente en el evento Open):

[code] dim menu as new WebMenuItem

menu.Append(New WebMenuItem(“Uno”))
menu.Append(New WebMenuItem(“Dos”))
menu.Append(New WebMenuItem(“Tres”))

WebToolbarMenu(me.ItemWithName(“MaestroButton”)).Menu = menu

[/code]

Como de costumbre, ms informacin sobre WebToolbar en la documentacin en lnea de Xojo.

Javier Rodrguez
Autor del libro “Programacin Multiplataforma Xojo
Autor del plug-in GuancheMOS para Xojo

Gracias a la ayuda de Javier pude resolver la situacin planteada

Realmente lo que haba pasado es que el tipo de Botn para el men al momento de aadirlo a la barra de herramientas lo haba realizado incorrectamente, haba asignado un tipo botn BUTTON (estndar) y que para un men debe ser un tipo de botn MENU, por eso no lo reconoca.

El cdigo para generar el men se asigna en el evento open de la barra de herramientas.
y para determinar que opciones de las barra de Herramientas ha sido seleccionado mediante un clic por el usuario en el momento de ejecucin, si es para un tipo de botn BUTTON (estandar) se evala mediante el evento ButtonAction y si es de un botn Tipo Menu se evala mediante el evento MenuAction.
Por lo general en una barra de herramientas llevan estos 2 tipos de botones y para determinar las acciones de los usuarios se trabaja tanto con el evento ButtonAction y el evento MenuAction.
Espero que ha alguien le pueda servir de ayuda

Cordialmente,

Raul

sera posible que coloques el cdigo para poder tomar de referencia porque estoy con ese mismo problema

Gracias