SearchNavaidPage (IPage)
| Eigenschaft |
Wert |
| Modul |
Mcdu/Pages |
| Klasse |
SearchNavaidPage |
| Typ |
IPage Implementation |
| Sichtbarkeit |
Public |
| Datei |
Mcdu/Pages/NavSearchPages.vb |
Beschreibung
NAVAID Suchseite — durchsucht die Navigationsdatenbank nach Navaids (VOR, NDB, ILS, DME etc.) anhand eines 2-8-stelligen Idents. State A: amber Eingabefeld. State B: zeigt Ident, CLASS, FREQ, LAT/LONG. Bei ILS-Typen werden zusaetzlich RWY IDENT, CATEGORY und COURSE angezeigt. Navigation wie SearchWptPage: L1 sucht/loescht, R5 vorig, R1-R4 naechst, R6 SAVE/INSERT, L6 zu InitA. Portiert aus VB6 CreateSEARCHNavaid.
Implementierte Methoden
Render
Public Sub Render(ctx As McduContext, buffer As Inet.Arinc429ScreenBuffer) Implements IPage.Render
| Name |
Typ |
Beschreibung |
Standard |
| ctx |
McduContext |
MCDU-Kontextdaten (NavSearchNavaidResults, NavSearchNavaidActiveIndex) |
— |
| buffer |
Inet.Arinc429ScreenBuffer |
Zielpuffer fuer die gerenderten ARINC-429-Bildschirmdaten |
— |
HandleLsk
Public Function HandleLsk(key As McduLskKey, ctx As McduContext) As McduCommand Implements IPage.HandleLsk
| Name |
Typ |
Beschreibung |
Standard |
| key |
McduLskKey |
Gedrueckte LSK-Taste |
— |
| ctx |
McduContext |
MCDU-Kontextdaten |
— |
Rückgabewert (HandleLsk)
| Typ |
Beschreibung |
| McduCommand |
MultiCommand bei L1 mit Eingabe, NavSearchNavaidPrev/Next bei R5/R1-R4, NavigateTo(NewWpt) oder InsertWaypoint bei R6 |
Ablaufdiagramm
flowchart TD
A[Start Render] --> B[LISTCLEAR senden]
B --> C[Titel NAVAID]
C --> D{Ergebnisse vorhanden?}
D -- Nein --> E[State A: IDENT Eingabefeld amber]
D -- Ja --> F[State B: Ident blau + CLASS]
F --> G{ILS-Typ?}
G -- Ja --> H[RWY IDENT / CATEGORY / COURSE]
G -- Nein --> I[LAT/LONG + FREQ]
H --> J[R5: PREV / R6: SAVE oder INSERT]
I --> J
E --> K[ParseAndRender]
J --> K
K --> L[Ende]
Aufgerufen von
| Modul |
Sub/Function |
Kontext |
| McduActor |
RenderActivePage |
Seitenrendering bei aktivem PageType.SearchNavaid |
Ruft auf
| Modul |
Sub/Function |
Kontext |
| McduCommandParser |
ParseAndRender |
Kommandoliste in Bildschirmpuffer rendern |
| SearchWptPage.FormatLatLon |
(Friend Shared) |
Koordinaten formatieren |
| MapNavaidClass |
(Private Shared) |
Navaid-Typ-Code in Anzeigestring umwandeln |
| FormatFreq |
(Private Shared) |
Frequenz fuer VOR/NDB/ILS formatieren |
Beispiel
Dim page As New SearchNavaidPage()
page.Render(ctx, buffer)
' Scratchpad "FRA" eingeben, L1 druecken → Navaid-Suche
Dim cmd = page.HandleLsk(McduLskKey.L1, ctx)
' cmd ist MultiCommand(ClearNavSearchNavaidResults, RequestNavSearch("FRA", "NAVAID"))
Änderungshistorie
| Version |
Datum |
Änderung |
| 1.0 |
2026-04-16 |
Erstdokumentation |