Werte formatieren

In diesem Abschnitt werden die Werte aufgelistet, die mit dem dwTextFlags-Parameter der Funktionen DrawThemeText und GetThemeTextExtent verwendet werden. Mindestens einer dieser Werte wird verwendet, um anzugeben, wie eine Textzeichenfolge formatiert werden soll. Die DrawThemeText-Funktion zeichnet die Textzeichenfolge in einem Anzeigerechteck, das durch den pRect-Parameter angegeben wird. Die GetThemeTextExtent-Funktion kann verwendet werden, um das erforderliche begrenzungsfähige Rechteck für Text mit einer bestimmten Länge und einem bestimmten Format zu bestimmen.

Werte formatieren

In der folgenden Tabelle sind die Formatwerte aufgeführt.

Wert BESCHREIBUNG
DT_BOTTOM Rendert die Textzeichenfolge am unteren Rand des Anzeigerechtecks. Dieser Wert wird nur mit dem DT_SINGLELINE-Wert verwendet.
DT_CALCRECT Bestimmt die Breite und Höhe des Anzeigerechtecks.
DT_CENTER Zentriert Text horizontal im Anzeigerechteck.
DT_EDITCONTROL Dupliziert die Textanzeigeeigenschaften eines mehrlineigen Bearbeitungssteuerelements. Insbesondere wird die durchschnittliche Zeichenbreite auf die gleiche Weise wie für ein Bearbeitungssteuerelement berechnet, und die Funktion zeigt keine teilweise sichtbare letzte Zeile an.
DT_END_ELLIPSIS Schneidet eine Textzeichenfolge ab, die breiter als das Anzeigerechteck ist, und fügt eine Auslassungspunkte hinzu, um den Abschneiden anzugeben. Die Zeichenfolge wird nur geändert, wenn das flag DT_MODIFYSTRING angegeben ist.
DT_EXPANDTABS Erweitert Tabstoppzeichen. Die Standardanzahl von Zeichen pro Tabstopp beträgt acht. Die Werte DT_WORD_ELLIPSIS, DT_PATH_ELLIPSIS und DT_END_ELLIPSIS können nicht mit dem DT_EXPANDTABS-Wert verwendet werden.
DT_EXTERNALLEADING Enthält die externe Führung einer Schriftart in der Zeilenhöhe. Normalerweise ist die externe Leitung nicht in der Höhe einer Textzeile enthalten.
DT_HIDEPREFIX Ignoriert das Präfixzeichen & im Text. Der folgende Buchstabe ist nicht unterstrichen, aber andere Präfixzeichen werden weiterhin verarbeitet. Beispiel:
Eingabezeichenfolge: "A&bc&&d"
normal: "Abc&d"
DT_HIDEPREFIX: "Abc&d"
DT_LEFT Richtet Text links aus.
DT_MODIFYSTRING Ändert eine Zeichenfolge so, dass sie dem angezeigten Text entspricht. Dieser Wert hat keine Auswirkung, es sei denn, DT_END_ELLIPSIS oder DT_PATH_ELLIPSIS wird angegeben.
DT_NOCLIP Zeichnet die Textzeichenfolge, ohne das Anzeigerechteck zu beschneiden.
DT_NOFULLWIDTHCHARBREAK Verhindert einen Zeilenumbruch bei einem Double-Byte-Zeichensatz (DBCS), sodass die Zeilenumbruchregel dem Single-Byte-Zeichensatz (Single-Byte Character Set, SBCS) entspricht. Dies kann beispielsweise verwendet werden, um in koreanischem Text geschriebene Symbolbeschriftungen lesbarer zu machen. Dieser Wert hat keine Auswirkung, es sei denn, DT_WORDBREAK angegeben wird.
DT_NOPREFIX Deaktiviert die Verarbeitung von Präfixzeichen. Normalerweise interpretiert DrawThemeText das Präfixzeichen & als Direktive, um das folgende Zeichen zu unterstreichen, und die Präfixzeichen && als Direktive zum Drucken einer einzelnen &. Durch Angabe DT_NOPREFIX wird diese Verarbeitung deaktiviert. Beispiel:
Eingabezeichenfolge: "A&bc&&d"
normal: "Abc&d"
DT_NOPREFIX: "A&bc&&d"
DT_PATH_ELLIPSIS Ersetzt Zeichen in der Mitte des Texts durch eine Auslassungspunkte, sodass das Ergebnis in das Anzeigerechteck passt. Wenn die Zeichenfolge umgekehrte Schrägstriche (\) enthält, behält DT_PATH_ELLIPSIS nach dem letzten umgekehrten Schrägstrich so viel wie möglich des Texts bei. Die Zeichenfolge wird nur geändert, wenn das flag DT_MODIFYSTRING angegeben ist.
DT_PREFIXONLY Zeichnet nur eine Unterstreichung an der Position des Zeichens nach dem Präfixzeichen &. Normalerweise interpretiert DrawThemeText als & Direktive, um das folgende Zeichen und die Präfixzeichen && als Anweisung zum Drucken eines einzelnen &zu unterstreichen. Wenn Sie DT_PREFIXONLY angeben, werden keine Zeichen gezeichnet, nur eine Unterstreichung. Leerzeichen werden an den Positionen platziert, an denen Normalerweise Zeichen angezeigt würden. Beispiel:
Eingabezeichenfolge: "A&bc&&d"
normal: "Abc&d
DT_PREFIXONLY: "
DT_RIGHT Richtet Text rechts aus.
DT_RTLREADING Legt Text in rechts-nach-links-Reihenfolge für bidirektionalen Text fest, z. B. Text in einer hebräischen oder arabischen Schriftart. Die Standardrichtung für Text ist von links nach rechts.
DT_SINGLELINE Zeigt Text in einer einzelnen Zeile an. Wagenrückläufe und Zeilenfeeds unterbrechen die Linie nicht.
DT_TABSTOP Legt Tabstopps fest.
DT_TOP Rendert den Text am oberen Rand des Anzeigerechtecks.
DT_VCENTER Zentrativ den Text vertikal. Dieser Wert wird nur mit dem DT_SINGLELINE-Wert verwendet.
DT_WORDBREAK Unterbricht Zeilen zwischen Wörtern, wenn ein Wort über den Rand des Anzeigerechtecks hinausreichen würde. Eine Cr/LF-Sequenz (Carriage Return/Line Feed) unterbricht die Linie ebenfalls.
DT_WORD_ELLIPSIS Schneidet alle Wörter ab, die nicht in das Anzeigerechteck passen, und fügt eine Auslassungspunkte hinzu.