====== lyxvision.menu ====== Vollständiges Menüsystem für LyxVision-Anwendungen: ''TMenuBar'' als horizontale Menüleiste, ''TSubMenu'' als aufklappbare Untermenüs, ''TStatusLine'' als kontextsensitive Statusleiste am unteren Bildschirmrand. → [[lyx_-_programmiersprache:units:lyxvision|lyxvision]] · [[lyx_-_programmiersprache:units:lyxvision:tapplication|lyxvision.tapplication]] · [[lyx_-_programmiersprache:units:lyxvision:types|lyxvision.types]] ---- ===== Verwendung ===== import lyxvision.menu; fn BuildMenuBar(): TMenuBar { var mb: TMenuBar := TMenuBarNew(); // Datei-Menü var mFile: TSubMenu := TSubMenuNew("~D~atei"); TSubMenuAdd(mFile, "~N~eu", cmNew, kbCtrlN); TSubMenuAdd(mFile, "~Ö~ffnen…", cmOpen, kbCtrlO); TSubMenuAdd(mFile, "~S~peichern", cmSave, kbCtrlS); TSubMenuSeparator(mFile); TSubMenuAdd(mFile, "~B~eenden", cmQuit, kbAltX); TMenuBarAddSub(mb, mFile); // Bearbeiten-Menü var mEdit: TSubMenu := TSubMenuNew("~B~earbeiten"); TSubMenuAdd(mEdit, "~K~opieren", cmCopy, kbCtrlC); TSubMenuAdd(mEdit, "E~i~nfügen", cmPaste, kbCtrlV); TMenuBarAddSub(mb, mEdit); return mb; } // Statusleiste fn BuildStatusLine(): TStatusLine { var sl: TStatusLine := TStatusLineNew(); TStatusLineAdd(sl, kbF1, cmHelp, "F1 Hilfe"); TStatusLineAdd(sl, kbF10, cmMenu, "F10 Menü"); TStatusLineAdd(sl, kbAltX, cmQuit, "Alt+X Beenden"); return sl; } ---- ===== Funktionen ===== ^ Signatur ^ Sichtbarkeit ^ Beschreibung ^ | ''TMenuBarNew(): TMenuBar'' | pub | Erzeugt leere Menüleiste | | ''TMenuBarAddSub(mb: TMenuBar, sub: TSubMenu): void'' | pub | Fügt Untermenü zur Menüleiste hinzu | | ''TSubMenuNew(title: pchar): TSubMenu'' | pub | Erzeugt Untermenü; Tilde markiert Buchstabenkürzel | | ''TSubMenuAdd(sub: TSubMenu, title: pchar, cmd: int64, key: int64): void'' | pub | Fügt Menüeintrag mit Command und Tastaturkürzel hinzu | | ''TSubMenuSeparator(sub: TSubMenu): void'' | pub | Fügt horizontale Trennlinie ein | | ''TSubMenuAddSub(sub: TSubMenu, child: TSubMenu): void'' | pub | Fügt verschachteltes Untermenü ein | | ''TStatusLineNew(): TStatusLine'' | pub | Erzeugt Statusleiste | | ''TStatusLineAdd(sl: TStatusLine, key: int64, cmd: int64, label: pchar): void'' | pub | Fügt Tastaturkürzel-Eintrag zur Statusleiste hinzu | Letzte Aktualisierung: 2026-05-22