Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  EPLAN Electric P8
  Eplan Script 2 Einträge Kontextmenü

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für EPLAN
  
Eplan Network 2024 Ganz in Ihrer Nähe: Speyer, Veranstaltung am 17.10.2024
Autor Thema:  Eplan Script 2 Einträge Kontextmenü (1362 / mal gelesen)
MW1974
Mitglied
Elektrokonstrukteur

Sehen Sie sich das Profil von MW1974 an!   Senden Sie eine Private Message an MW1974  Schreiben Sie einen Gästebucheintrag für MW1974

Beiträge: 4
Registriert: 10.09.2018

P8 2.6 HF4

erstellt am: 12. Mai. 2021 15:00    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,

ich möchte gerne im GED 2 extra punkte in das kontext menü bekommen.

Leider bekomme ich nur einen extra punkt hin.

Ich habe dieses Beispiel aus der Scripting bibel verwendet.

[DeclareMenu]
  public void MenuFunction()
  {
    Eplan.EplApi.Gui.ContextMenu menu = new Eplan.EplApi.Gui.ContextMenu();

    Eplan.EplApi.Gui.ContextMenuLocation contextMenuLocation =
        new Eplan.EplApi.Gui.ContextMenuLocation(
            "GedEditGuiText",
            "1002"
            );

    menu.AddMenuItem(
        contextMenuLocation,
        "Menüpunkt in Kontextmenü",
        "MenuAction",
        true,
        false
        );
    menu.AddMenuItem(
        contextMenuLocation,
        "Menüpunkt 2 in Kontextmenü",
        "MenuAction2",
        true,
        false
        );

    return;
  }
}

Kann es sein das es nicht möglich ist mehrere Einträge zu erzeugen?

Danke für eure Hilfe

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Jonny Wire
Mitglied
Script-Troll


Sehen Sie sich das Profil von Jonny Wire an!   Senden Sie eine Private Message an Jonny Wire  Schreiben Sie einen Gästebucheintrag für Jonny Wire

Beiträge: 796
Registriert: 08.12.2008

EPLAN Electric P8
... in allen Versionen/Varianten

erstellt am: 14. Mai. 2021 08:26    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für MW1974 10 Unities + Antwort hilfreich

Müsste eigentlich funktionieren. Gibt es beide Actions denn bzw. sind diese in EPLAN geladen?

------------------
ibKastl → Wir beraten, analysieren, strukturieren, programmieren, und vieles mehr
Suplanus → Scripting in EPLAN ist einfach (toll)
ShopForProcess → Scripte & Anwendungen für EPLAN

[Diese Nachricht wurde von Jonny Wire am 14. Mai. 2021 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

F.S.
Moderator



Sehen Sie sich das Profil von F.S. an!   Senden Sie eine Private Message an F.S.  Schreiben Sie einen Gästebucheintrag für F.S.

Beiträge: 1852
Registriert: 23.04.2003

EPLAN Electric P8
2024 Prof.

erstellt am: 14. Mai. 2021 08:37    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für MW1974 10 Unities + Antwort hilfreich

Wie Jonny schon schrieb, sollte funktionieren wenn es die Actions auch gibt.

Dieser Code funktioniert beim mir:

Code:

[DeclareMenu]
public void MenuFunction()
{
Eplan.EplApi.Gui.ContextMenu menu = new Eplan.EplApi.Gui.ContextMenu();

Eplan.EplApi.Gui.ContextMenuLocation contextMenuLocation =
new Eplan.EplApi.Gui.ContextMenuLocation(
"GedEditGuiText",
"1002"
);

menu.AddMenuItem(
contextMenuLocation,
"Menüpunkt in Kontextmenü",
"MenuAction",
true,
false
);
menu.AddMenuItem(
contextMenuLocation,
"Menüpunkt 2 in Kontextmenü",
"MenuAction2",
false,
false
);

}

[DeclareAction("MenuAction")]
public void MenuAction()
{
MessageBox.Show("MenüAction");
return;
}

[DeclareAction("MenuAction2")]
public void MenuAction2()
{
MessageBox.Show("MenüAction2");
return;
}


------------------
grüße
FrankS

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

MW1974
Mitglied
Elektrokonstrukteur

Sehen Sie sich das Profil von MW1974 an!   Senden Sie eine Private Message an MW1974  Schreiben Sie einen Gästebucheintrag für MW1974

Beiträge: 4
Registriert: 10.09.2018

P8 2.6 HF4

erstellt am: 15. Mai. 2021 14:15    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Mit der Vorlage von Frank hat es funktioniert.

Ich konnte leider nicht mehr rausfinden was jetzt das Problem war. Ich glaube es lag aber an den nicht vorhandenen Actions

Danke!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mgolec
Mitglied
ECAD-Planer


Sehen Sie sich das Profil von mgolec an!   Senden Sie eine Private Message an mgolec  Schreiben Sie einen Gästebucheintrag für mgolec

Beiträge: 89
Registriert: 12.02.2018

Pro Panel 2023

erstellt am: 16. Mai. 2024 08:25    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für MW1974 10 Unities + Antwort hilfreich

Hallo allerseits!

Wollte nachfragen ob jemand die Actions für Symbol einfügen, Gerät einfügen und Makro einfügen weiß?

So dass man das Kontextmenü auf das hin erweitern kann wie es früher war. Also man sollte mit Klick im Kontextmenü in die Symbolauswahl, Artikelauswahl oder in die Makroauswahl kommen.

Wäre für Hilfestellung sehr dankbar  

LG
Markus


Edit:
Habs wie folgt versucht:

Code:

using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
using Eplan.EplApi.ApplicationFramework;
using Eplan.EplApi.Scripting;


public class _06_Menues_06_Menuepunkt_in_Kontextmenue
{
[DeclareAction("MenuAction")]
public void ActionFunction()
{
Thread.Sleep(250);
SendKeys.SendWait("{INSERT}");
MessageBox.Show("Action wurde ausgeführt!");
return;
}


[DeclareMenu]
public void MenuFunction()
{
Eplan.EplApi.Gui.ContextMenu menu = new Eplan.EplApi.Gui.ContextMenu();
Eplan.EplApi.Gui.ContextMenuLocation contextMenuLocation =
new Eplan.EplApi.Gui.ContextMenuLocation(
"Editor",
"Ged"
);
menu.AddMenuItem(
contextMenuLocation,
"Symbol einfügen",
"MenuAction",
true,
false
);
return;
}
}



[Diese Nachricht wurde von mgolec am 16. Mai. 2024 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mgolec
Mitglied
ECAD-Planer


Sehen Sie sich das Profil von mgolec an!   Senden Sie eine Private Message an mgolec  Schreiben Sie einen Gästebucheintrag für mgolec

Beiträge: 89
Registriert: 12.02.2018

Pro Panel 2023

erstellt am: 21. Mai. 2024 13:07    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für MW1974 10 Unities + Antwort hilfreich

Hat niemand eine Idee wie man das lösen könnte?

LG Markus

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

F.S.
Moderator



Sehen Sie sich das Profil von F.S. an!   Senden Sie eine Private Message an F.S.  Schreiben Sie einen Gästebucheintrag für F.S.

Beiträge: 1852
Registriert: 23.04.2003

EPLAN Electric P8
2024 Prof.

erstellt am: 22. Mai. 2024 07:52    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für MW1974 10 Unities + Antwort hilfreich

Hallo Markus,

soll dein Memnüpunkt im Einfügezentrum landen, oder möchtes du die alten Dialoge wieder haben?

------------------
grüße
FrankS

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mgolec
Mitglied
ECAD-Planer


Sehen Sie sich das Profil von mgolec an!   Senden Sie eine Private Message an mgolec  Schreiben Sie einen Gästebucheintrag für mgolec

Beiträge: 89
Registriert: 12.02.2018

Pro Panel 2023

erstellt am: 22. Mai. 2024 08:08    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für MW1974 10 Unities + Antwort hilfreich

Hallo FrankS

Würde gerne die alten Menüpunkte wieder haben im Kontextmenü.

Als ContextMenuLocation hab ich das hier angegeben.
"GedEditGuiText",
"1002"

Das dürfte stimmen.

LG und Danke für die Antwort,
Markus

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

F.S.
Moderator



Sehen Sie sich das Profil von F.S. an!   Senden Sie eine Private Message an F.S.  Schreiben Sie einen Gästebucheintrag für F.S.

Beiträge: 1852
Registriert: 23.04.2003

EPLAN Electric P8
2024 Prof.

erstellt am: 22. Mai. 2024 09:27    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für MW1974 10 Unities + Antwort hilfreich

Dieses Skript funktioniert bei mir in der Plattform 2023:
Code:

using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
using Eplan.EplApi.ApplicationFramework;
using Eplan.EplApi.Scripting;


public class _06_Menues_06_Menuepunkt_in_Kontextmenue
{
CommandLineInterpreter CommandLineInterpreter = new CommandLineInterpreter();

[DeclareAction("MenuAction")]
public void ActionFunction()
{
//CommandLineInterpreter.Execute("XEGActionInsertSymRef"); // 2.9
CommandLineInterpreter.Execute("XInsStartModelessDialogAction /Symbol"); // 2023
return;
}


[DeclareMenu]
public void MenuFunction()
{
Eplan.EplApi.Gui.ContextMenu menu = new Eplan.EplApi.Gui.ContextMenu();
Eplan.EplApi.Gui.ContextMenuLocation contextMenuLocation =
new Eplan.EplApi.Gui.ContextMenuLocation(
"Editor",
"Ged"
);
menu.AddMenuItem(
contextMenuLocation,
"Symbol einfügen",
"MenuAction",
true,
false
);
return;
}
}


------------------
grüße
FrankS

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mgolec
Mitglied
ECAD-Planer


Sehen Sie sich das Profil von mgolec an!   Senden Sie eine Private Message an mgolec  Schreiben Sie einen Gästebucheintrag für mgolec

Beiträge: 89
Registriert: 12.02.2018

Pro Panel 2023

erstellt am: 22. Mai. 2024 10:36    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für MW1974 10 Unities + Antwort hilfreich

Hallo FrankS,

Hmmm, ich komme mit dem Script nur direkt ins Einfügezentrum und nicht in die Symbolauswahl. Hab auch Plattform 2023 (Pro Panel Update 5)

LG Markus

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

F.S.
Moderator



Sehen Sie sich das Profil von F.S. an!   Senden Sie eine Private Message an F.S.  Schreiben Sie einen Gästebucheintrag für F.S.

Beiträge: 1852
Registriert: 23.04.2003

EPLAN Electric P8
2024 Prof.

erstellt am: 22. Mai. 2024 14:19    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für MW1974 10 Unities + Antwort hilfreich

Du kannst in dem Skript die andere CommandLineInterpreter.Execute Zeile (für 2.9) ausprobieren.
Ich persönlich würde dir eher raten sich mit dem Einfügezentrum zu beschäftigen, das ist nun mal die Zukunft.

------------------
grüße
FrankS

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP



Projektingenieur Elektroplanung (m/w/d)

Wir sind ein international agierendes, innovatives Unternehmen innerhalb einer mittel­ständischen Unternehmens­gruppe. Wir bieten unseren Kunden hoch spezialisierte Lösungen in den Geschäfts­bereichen Umwelt­überwachung, Wasser­­technologie und mineralische Rohstoffe und haben uns als Industrie­forschungs- und Entwicklungs­zentrum für fort­geschrittene Technologien auf diesen Gebieten etabliert....

Anzeige ansehenFeste Anstellung
mgolec
Mitglied
ECAD-Planer


Sehen Sie sich das Profil von mgolec an!   Senden Sie eine Private Message an mgolec  Schreiben Sie einen Gästebucheintrag für mgolec

Beiträge: 89
Registriert: 12.02.2018

Pro Panel 2023

erstellt am: 23. Mai. 2024 10:00    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für MW1974 10 Unities + Antwort hilfreich

Hallo!

Zitat:
Original erstellt von F.S.:
Du kannst in dem Skript die andere CommandLineInterpreter.Execute Zeile (für 2.9) ausprobieren.

So ein blindes Huhn bin ich schon worden 
Vielen Dank, jetzt funktioniert das Ding endlich.
Super. Ich muss mich wohl wieder mehr mit dem Scripting beschäftigen.

Zitat:
Original erstellt von F.S.:
Ich persönlich würde dir eher raten sich mit dem Einfügezentrum zu beschäftigen, das ist nun mal die Zukunft.

Aktuell arbeitet bei uns keiner mit dem Einfügezentrum.
Wir hoffen nur, dass es noch laang so geht wie früher. ^^

Der vollständigkeit halber nocheinmal der Code der bei mir unter Plattform 2023 funtioniert:
Vielen Dank nocheinmal für die Hilfe @FrankS :)

LG Markus


Code:

using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
using Eplan.EplApi.ApplicationFramework;
using Eplan.EplApi.Scripting;


public class GetOldActionsInContextMenu2023
{
CommandLineInterpreter CommandLineInterpreter = new CommandLineInterpreter();

//Unterprogramm: Symbol einfügen
[DeclareAction("SymbolActionContext")]
public void ActionFunction1()
{
CommandLineInterpreter.Execute("XEGActionInsertSymRef /SymbolLibName:IEC_symbol");
return;
}

//Unterprogramm: Gerät einfügen
[DeclareAction("DeviceActionContext")]
public void ActionFunction2()
{
CommandLineInterpreter.Execute("XDLInsertDeviceAction");
return;
}

//Hauptprogramm: Kontextmenü um Symbol und Gerät einfügen erweitern
[DeclareMenu]
public void MenuFunction()
{
Eplan.EplApi.Gui.ContextMenu menu = new Eplan.EplApi.Gui.ContextMenu();
Eplan.EplApi.Gui.ContextMenuLocation contextMenuLocation =
new Eplan.EplApi.Gui.ContextMenuLocation(
"Editor",
"Ged"
);
menu.AddMenuItem(
contextMenuLocation,
"Symbol einfügen",
"SymbolActionContext",
true,
false
);

menu.AddMenuItem(
contextMenuLocation,
"Makro einfügen",
"DeviceActionContext",
true,
false
);

return;
}
}


Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2024 CAD.de | Impressum | Datenschutz