Med hjälp av ett skript kan en eller flera menypunkter läggas till i menyn Hjälpprogram . Då används attributet [DeclareMenu] i motsvarande skript, och via detta attribut öppnas funktionen MenuFunction(). När sedan skriptet läses in, då genereras menypunkten, som specificeras via funktionen AddMenuItem.
Den allmänna strukturen på ett motsvarande C#-skript ser ut enligt följande:
public class <ScriptName> { [DeclareMenu] public void MenuFunction() { Eplan.EplApi.Gui.Menu oMenu = new Eplan.EplApi.Gui.Menu(); oMenu.AddMenuItem("<MenuText>","<ActionName>"); } }
En menypunkt är alltid länkad till en åtgärd, som öppnas, när menypunkten utförs. Detta betyder, att skriptet antingen anmäler en extra åtgärd (via [DeclareAction]) eller att menypunkten tilldelas till en redan befintlig åtgärd.
Följande exempel visar ett skript i C#, som anmäler en åtgärd och en menypunkt:
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"); } }
I exemplet ovan genererar funktionen AddMenuItem() via klassen Eplan.EplApi.Gui.Menu den nya menypunkten MyMenuText och förbinder den till åtgärden MyScriptActionWithMenu.
Samma exempel i Visual Basic.Net ser ut enligt följande:
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
Se också