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.
→ lyxvision · lyxvision.tapplication · lyxvision.types
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;
}
| 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