Die Community zu .NET und Classic VB.
Menü

Klasse: VB Syntax Highlight

 von 

VB Syntax Highlight  

Die Klasse CFormat stellt einen Dienst bereit, der VB Quellcodes formatiert darstellt und zwar wahlweise als HTML (genauer: XHTML 1.0 Strict) unter Verwendung von CSS, oder als RichTextFormat.

Die Klasse stellt folgende Tokentypen unterschiedlich dar:

  • normalen Text
  • VB Schlüsselwörter
  • Kommentare
  • Strings

Für jede dieser Tokentypen können folgende Formatierungen individuell festgelegt werden:

  • Font As StdFont
  • Bold As Boolean
  • Charset As Integer
  • Italic As Boolean
  • Name As String
  • Size As Currency
  • Strikethrough As Boolean
  • Underline As Boolean
  • ForeColor As OLE_COLOR
  • BackColor As OLE_COLOR
  • Extended AS CExtStyleProps
  • ...

Die "Extended"-Eigenschaften sind besonders interessant: hier kann der User sich weitere Styles definieren, die als gültiges CSS2 formatiert sind. Die erweiterten Styles werden in einer Collection gespeichert.

Aus verschiedenen Gründen sind die Möglichkeiten für RTF ein wenig eingeschränkter: obige Eigenschaften sind für HTML-Format voll vewendbar. In RTF werden folgende Eigenschaften _nicht_ interpretiert:

  • Font
  • Size
  • Strikethrough
  • BackColor
  • Extended

alle anderen Styles funktionieren genauso wie unter HTML.

Die Klasse CFormat verfügt über folgende wichtige Eigenschaften und Methoden:

  • Sub FixOptions() - fixiert die veränderten Optionen und macht sie benutzbar.
  • Property KeywordList As String - enthält alle Schlüsselwörter, die die Klasse erkennt, getrennt durch das einen senkrechten Strich ("|"), der auch am Anfang und am Ende der Liste stehen muß.
  • Sub LooseOptions()
    resetted die Optionen
  • Property OutputDevice As OutputDevice
    legt das Ausgabeformat fest. Gültig sind folgende Werte:
    - OD_RTF
    - OD_XHTML
  • Function Parse(Code As String) As String
    parst einen gegebenen Code und gibt eine Version mit eingefügten Formattags zurück, in Abhängigkeit vom gewählten Ausgabeformat.
  • Property Style_Comments As CStyleProps
    enthält die Styleeigenschaften für Kommentare
  • Property Style_Keywords As CStyleProps
    enthält die Styleeigenschaften für Schlüsselwörter
  • Property Style_Normal As CStyleProps
    enthält die Styleeigenschaften für normalen Text
  • Property Style_String As CStyleProps
    - enthält die Styleeigenschaften für Strings


Abbildung 1: Screenshot

Die Zipdatei enthält auch ein Beispielprojekt

Geschrieben wurde die Klasse von

Download cFormat.zip [3090 Bytes]

Ihre Meinung  

Falls Sie Fragen zu diesem Artikel haben oder Ihre Erfahrung mit anderen Nutzern austauschen möchten, dann teilen Sie uns diese bitte in einem der unten vorhandenen Themen oder über einen neuen Beitrag mit. Hierzu können sie einfach einen Beitrag in einem zum Thema passenden Forum anlegen, welcher automatisch mit dieser Seite verknüpft wird.