DisplayMenuEntry |
Top Previous Next |
Anlegen temporärer Menüs. Mit Hilfe dieses Befehls können von der Kommandoebene oder aus Batchprozessen heraus eigene Pulldown-Menüs für das Grafik oder Inputfenster definiert werden, sowie Toolbars, Tastenkürzel und Pop-Up-Menüs. Die mit DisplayMenuEntry erstellten Menüs sind temporär und haben nur für die jeweilige Sitzung Bestand. Sollen eigene Menüerweiterungen dauerhaft installiert werden, so muß der Befehl in eine bei jedem Start aufgerufene Batchdatei geschrieben werden, z.B. in die Datei ...\Rahmen\batch\userinit.cmd oder die Menüs müssen mit dem Befehl DefineWindowMenu erstellt werden.
Voraussetzung keine Parameter /SILENT Es werden keine Ausgaben erzeugt (Sinnvoll, wenn der Befehl aus einer Batchdatei ohne Dialoge ausgerufen wird). STYLE/nn Styleinformation für die Einträge, meist 0. ATTRIBUTE/nn Attributinformation der Einträge, meist 0. POSITION/pos Position des/der neuen Einträge im Menü. Es kann eine beliebige Nummer angegeben werden, die die Position bestimmt, oder MIT_END für das Ende des Menüs. /SYSTEMMENUE Die Einträge werden in dem Systemmenü erzeugt. /MENUEBAR Die Einträge werden in dem normalen (Text-)Menü am oberen Fensterrand erzeugt. /TOOLBAR Die Einträge werden in der Toolbar (Werkzeugleiste unterhalb des normalen Textmenüs) erzeugt. /ACCEL Es werden Tastenkürzel (Accelerators).erzeugt, d.h. bestimmte Tastenkombinationen werden mit bestimmten Funktionen belegt. /POPUP Das Popup-Menü (öffnet sich beim Betätigen der rechten Maustaste) wird erweitert. /STATUSBAR Erweitern der Statusbar, noch nicht implementiert. /TEMP Menüeintrag erfolgt temporär und kann separat entfernt werden. ID/nn Fensternummer, an dem das Menü angehängt wird, z.B. -1 für das Inputfenster oder -2 für das Graphikfenster. Rückgabewert
Dialog Befehl eingeben: DisplayMenuEntry ID des Fensters -2 Style des Menüitems eingeben: (MIS_TEXT, MIS_BITMAP, MIS_SUBMENU) MIS_TEXT erstellt ausführbare Textmenüs, MIS_BITMAP erzeugt Buttons, MIS_SUBMENÜ erzeugt ein Untermenü (Drop-Down-Menü), in das danach Textmenüs oder Buttons eingefügt werden können. MIS_SUBMENU Attribut des Menüitems eingeben: (0) Die Null in Klammern ist bei diesem Befehl nur als Eingabevorschlag gedacht. Sie kann nicht durch einfaches Drücken von <Enter> bestätigt werden, sondern muß extra eingegeben werden. 0 Text des Menüitems eingeben: Programm Beenden Position des Menüitems eingeben: (MIT_END) Neben der vorgeschlagenen Eingabe MIT_END, die dafür sorgt, daß das neue Menü an das bestehende hinten angehängt wird, kann an dieser Stelle auch die tatsächliche Position des neuen Menüs als Zahl eingegeben werden. MIT_END Ausführung des Menüitems eingeben: (Bsp.: EOJ) <Enter> Style des Menütiems eingeben: (MIS_TEXT, MIS_BITMAP, MIS_SUBMENU) MIS_TEXT Attribut des Menüitems eingeben: (0) 0 Text des Menütems eingeben: Programm Beenden|jetzt beenden Verzweigungen durch Untermenüs werden wie im obigen Beispiel dargestellt durch senkrechte Striche (|) getrennt. Sollen Buttons eingefügt werden (MIS_BITMAP), so muß als Text des Menüitems die entsprechende Ressourcennummer des Bitmaps eingegeben werden. Ausführung des Menüitems eingeben: (Bsp.: EOJ) An dieser Stelle kann nun entweder ein einzelner Befehl oder auch eine Reihe mehrerer ausführbarer Befehle eingegeben werden. Im letzteren Fall werden die Befehle wie in Batchabläufen der Reihe nach und jeweils durch <Enter> getrennt eingegeben. Wird zweimal hintereinander <Enter> eingegeben, dann geht DisplayMenuEntry davon aus, daß die Eingabe der Befehlsfolge zur Ausführung des Menüitems beendet ist. Sollen in einer Befehlsfolge trotzdem auch Leerzeilen vorkommen, so muß anstelle der zweiten <Enter>-Eingabe die Zeichenfolge: _LEERZEILE_ eingegeben werden. EOJ <Enter> Das zweite <Enter> markiert das Ende der Befehlsfolge. An dieser Stelle wiederholen sich die Dialogvorgaben und es folgt nun die Aufforderung, den Style für ein neues Menüitem einzugeben. Style des Menüitems eingeben: (MIS_TEXT, MIS_BITMAP, MIS_SUBMENU) <Enter> Das dritte <Enter> beendet den Befehl. Befehl eingeben: Beispiel1 Menü anlegen Siehe oben. Wenn die Eingabe eines neuen Menüeintrages wie in dem Dialogbeispiel oben erfolgt, wird der neue Menüpunkt sofort sichtbar: Beispiel2 Tastenkürzel für die Kommandozeile definieren Befehl eingeben: DisplayMenuEntry ID des Fensters -1 Style des Menüitems eingeben: (MIS_TEXT, MIS_BITMAP, MIS_SUBMENU) Diese Angabe wird nicht ausgewertet. MIS_TEXT Attribut des Menüitems eingeben: (0) Die Null in Klammern ist bei diesem Befehl nur als Eingabevorschlag gedacht. Sie kann nicht durch einfaches Drücken von <Enter> bestätigt werden, sondern muß extra eingegeben werden. 0 Text des Menüitems eingeben: Um einzelne Tasten anzusprechen, muss man deren Code kennen. Z.B. hat die 1 auf der Tastatur den Code 49, die 2 die 50, das A den Code 65, usw. Zu diesen Tasten sind die Tasten CONTROL, ALT, ALTGR und SHIFT auch in Kombination möglich. CONTROL 49 Position des Menüitems eingeben: (MIT_END) Diese Angabe wird nicht ausgewertet. MIT_END Ausführung des Menüitems eingeben: (Bsp.: EOJ) An dieser Stelle kann nun entweder ein einzelner Befehl oder auch eine Reihe mehrerer ausführbarer Befehle eingegeben werden. Im letzteren Fall werden die Befehle wie in Batchabläufen der Reihe nach und jeweils durch <Enter> getrennt eingegeben. Wird zweimal hintereinander <Enter> eingegeben, dann geht DisplayMenuEntry davon aus, daß die Eingabe der Befehlsfolge zur Ausführung des Menüitems beendet ist. Sollen in einer Befehlsfolge trotzdem auch Leerzeilen vorkommen, so muß anstelle der zweiten <Enter>-Eingabe die Zeichenfolge: _LEERZEILE_ eingegeben werden. is.Echo /NOW "Control 1 gedrückt" <Enter> Style des Menütiems eingeben: (MIS_TEXT, MIS_BITMAP, MIS_SUBMENU) MIS_TEXT Attribut des Menüitems eingeben: (0) 0 Text des Menütems eingeben: CONTROL 50 Position des Menüitems eingeben: (MIT_END) MIT_END Ausführung des Menüitems eingeben: (Bsp.: EOJ) is.Echo /NOW "Control 2 gedrückt" <Enter> Das zweite <Enter> markiert das Ende der Befehlsfolge. An dieser Stelle wiederholen sich die Dialogvorgaben und es folgt nun die Aufforderung, den Style für ein neues Menüitem einzugeben. Style des Menüitems eingeben: (MIS_TEXT, MIS_BITMAP, MIS_SUBMENU) <Enter> Das dritte <Enter> beendet den Befehl. Befehl eingeben:
Bemerkung
Siehe auch
Dokumentation im Administratorhandbuch unter Anpassen durch den Systemadministrator|Menüs herstellen.
|