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
