den Code mitWie entferne ich ein (Sub-) Menü und alle seine Existenzspuren?
#targetengine "mine"
var mainmenu = app.menus.items("$ID/Main");
var menu = mainmenu.submenus.add("Test");
Ich habe später ein Untermenü InDesign-Menü, dass ich über
menu.remove();
delete menu;
Leider
entfernt, wenn ich versuche, um das Menü zu erstellen, geschieht nichts, da InDesign es scheint zu denken, ist immer noch da - bis ich InDesign neu starte, danach erscheint das Menü (aber ohne hinzugefügte Elemente). Wie kann ich das Menü dauerhaft entfernen, damit es später neu erstellt werden kann, ohne InDesign neu starten zu müssen? Das Menü zeigt auch noch in InDesign-Menü Einstellungen auf (noch schlimmer, sogar zweimal, da ich „Test“ und „& Test“ als Menünamen versucht), die Ich mag würde auch reparieren ...
bearbeiten Dieses seltsame Verhalten tritt nur dann auf, wenn das Skript über das InDesign-Skriptfenster ausgeführt wird, aber weder über den Start noch über das ExtendScript-Toolkit. Die Menüeinträge bleiben jedoch nach dem Entfernen erhalten.
Das Problem ist, auch nach 'menu.remove(); delete menu; ',' mainmenu.untermenus.items ("Test"). isValid' ist immer noch 'true' und das zuvor entfernte Menü wird erst angezeigt, wenn ich InDesign neu starte. Danach muss ich die Menüpunkte neu hinzufügen. –
Hm, ich habe mir nie die Mühe gemacht, zu überprüfen, wo InDesign standardmäßig ein Menü platziert, aber das ist ein guter Punkt. –
BTW, wenn ich die 'LocationOptions.before' weglasse, wird das neue Menü _after_" Help "hinzugefügt –