Arinc429ScreenBuffer.SetControl
| Eigenschaft |
Wert |
| Modul |
Inet |
| Klasse |
Arinc429ScreenBuffer |
| Typ |
Sub |
| Sichtbarkeit |
Public |
| Datei |
Inet/Arinc429ScreenBuffer.vb |
Beschreibung
Setzt ausschliesslich das Steuer-Byte (Farbe + Schriftgroesse) an der angegebenen Position, ohne das Zeichenbyte zu veraendern. Dies ermoeglicht das nachtraegliche Aendern der Darstellungseigenschaften eines bereits geschriebenen Zeichens. Die Position wird im Dirty-Range markiert, damit die Aenderung bei der naechsten differentiellen Nachricht beruecksichtigt wird.
Signatur
Public Sub SetControl(line As Integer, col As Integer, color As McduColor, font As McduFont)
Parameter
| Name |
Typ |
Beschreibung |
Standard |
| line |
Integer |
Nullbasierter Zeilenindex (0-12) im 13-zeiligen MCDU-Display |
-- |
| col |
Integer |
Nullbasierter Spaltenindex (0-23) im 24-spaltigen MCDU-Display |
-- |
| color |
McduColor |
Neue Zeichenfarbe |
-- |
| font |
McduFont |
Neue Schriftgroesse (Small=0, Large=128) |
-- |
Ablaufdiagramm
flowchart TD
A[Start] --> B["pos = line * COLUMNS + col"]
B --> C["_ctrlBuffer(pos) = font Or color"]
C --> D["_firstChange = Min(_firstChange, pos)"]
D --> E["_lastChange = Max(_lastChange, pos)"]
E --> F[Ende]
Aufgerufen von
| Modul |
Sub/Function |
Kontext |
| -- |
-- |
Derzeit keine direkten Aufrufe im Quellcode gefunden; steht als API fuer nachtraegliche Farbwechsel bereit |
Ruft auf
| Modul |
Sub/Function |
Kontext |
| System |
Math.Min |
Dirty-Range Startposition aktualisieren |
| System |
Math.Max |
Dirty-Range Endposition aktualisieren |
Beispiel
Dim buffer As New Arinc429ScreenBuffer()
' Zeichen "A" in Weiss schreiben
buffer.WriteChar(0, 0, CByte(AscW("A"c)), McduColor.White, McduFont.Large)
' Farbe nachtraeglich auf Gruen aendern, Zeichen bleibt "A"
buffer.SetControl(0, 0, McduColor.Green, McduFont.Large)
Aenderungshistorie
| Version |
Datum |
Aenderung |
| 1.0 |
2026-04-16 |
Erstdokumentation |