Mit Hilfe eines Scripts können Sie dem Menü Dienstprogramme ein oder mehrere Menüpunkte hinzufügen. Dazu wird im entsprechenden Script das Attribut [DeclareMenu] eingesetzt, und über dieses Attribut wird die Funktion MenuFunction() aufgerufen. Wird dann das Script geladen, so wird der Menüpunkt, der durch die Funktion AddMenuItem spezifiziert wird, erzeugt.
Der allgemeine Aufbau eines entsprechenden C#-Scripts sieht wie folgt aus:
public class <ScriptName> { [DeclareMenu] public void MenuFunction() { Eplan.EplApi.Gui.Menu oMenu = new Eplan.EplApi.Gui.Menu(); oMenu.AddMenuItem("<MenuText>","<ActionName>"); } }
Ein Menüpunkt ist immer mit einer Aktion verknüpft, die aufgerufen wird, wenn der Menüpunkt ausgeführt wird. Dies bedeutet, dass entweder das Script zusätzlich eine Aktion anmeldet (über [DeclareAction]) oder dass der Menüpunkt einer bereits bestehenden Aktion zugewiesen wird.
Das folgende Beispiel zeigt ein Script in C#, das eine Aktion und einen Menüpunkt anmeldet:
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"); } }
Im oben aufgeführten Beispiel erzeugt die
Funktion AddMenuItem() aus der Klasse Eplan.EplApi.Gui.Menu den neuen Menüpunkt MyMenuText und verbindet ihn mit der Aktion MyScriptActionWithMenu.
Das gleiche Beispiel in Visual Basic.Net sieht wie folgt aus:
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
Siehe auch