Por medio de un script puede agregar uno o varios elementos al menú Programas de apoyo . Para ello se utiliza el atributo [DeclareMenu] en el script correspondiente y a través de ese atributo se accede a la función MenuFunction(). Si entonces se carga el script, se genera el elemento de menú especificado a través de la función AddMenuItem.
La estructura general de un script C# correspondiente tiene el siguiente aspecto:
public class <ScriptName> { [DeclareMenu] public void MenuFunction() { Eplan.EplApi.Gui.Menu oMenu = new Eplan.EplApi.Gui.Menu(); oMenu.AddMenuItem("<MenuText>","<ActionName>"); } }
Un elemento de menú siempre va asociado a una acción que se activa al ejecutar dicho elemento. Esto significa que, o bien el script declara una acción de forma adicional (mediante [DeclareAction]) o bien el elemento de menú se asigna a una acción ya existente.
El siguiente ejemplo muestra un script en C# que declara una acción y un elemento de menú:
public class RegisterScriptMenu { [DeclareAction("MyScriptActionWithMenu")] public void MyFunctionAsAction() { MessageBox.Show("MyFunctionAsAction was called!", "RegisterScriptMenu"); return; } [DeclareMenu] public void MenuFunction() { Eplan.EplApi.Gui.Menu oMenu = new Eplan.EplApi.Gui.Menu(); oMenu.AddMenuItem("MyMenuText", "MyScriptActionWithMenu"); } }
En el ejemplo antes citado, la función AddMenuItem() de la clase Eplan.EplApi.Gui.Menu genera el nuevo elemento de menú MyMenuText y la asocia con la acción MyScriptActionWithMenu.
El mismo ejemplo en Visual Basic.Net tiene el siguiente aspecto:
Public Class RegisterScriptMenu <DeclareAction("MyScriptActionWithMenu")> _ Public Sub MyFunctionAsAction() MessageBox.Show("MyFunctionAsAction was called!", "RegisterScriptMenu") Return End Sub 'MyFunctionAsAction <DeclareMenu()> _ Public Sub MenuFunction() Dim oMenu As New Eplan.EplApi.Gui.Menu() oMenu.AddMenuItem("MyMenuText", "MyScriptActionWithMenu") End Sub 'MenuFunction End Class 'RegisterScriptMenu
Véase también