Ved hjælp af et script kan du tilføje et eller flere menupunkter til menuen Hjælpeprogrammer . Til det brug bliver egenskaben [DeclareMenu] sat ind i det pågældende script, og via denne egenskab hentes funktionen MenuFunction(). Hvis scriptet derefter indlæses, så genereres det menupunkt, som bliver specificeret ved funktionen AddMenuItem.
Den generelle opbygning af et tilsvarende C#-Script ser sådan ud:
public class <ScriptName> { [DeclareMenu] public void MenuFunction() { Eplan.EplApi.Gui.Menu oMenu = new Eplan.EplApi.Gui.Menu(); oMenu.AddMenuItem("<MenuText>","<ActionName>"); } }
Et menupunkt er altid knyttet til en handling, som bliver hentet, når menupunktet køres. Det betyder, at enten deklarerer scriptet yderligere en handling (via [DeclareAction]), eller også bliver menupunktet tildelt en allerede eksisterende handling.
Følgende eksempel viser et script i C#, som erklærer en handling og et menupunkt:
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 det ovennævnte eksempel genererer funktionen AddMenuItem() fra klassen Eplan.EplApi.Gui.Menu det nye menupunkt MyMenuText og forbinder det med handlingen MyScriptActionWithMenu.
Samme eksempel ser i Visual Basic.Net således ud:
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 også