CDC::GetTabbedTextExtent
Rufen Sie die Memberfunktion auf, um die Breite und Höhe einer Zeichenfolge mit m_hAttribDC berechnen, der Attributgerätekontext.
CSize GetTabbedTextExtent(
LPCTSTR lpszString,
int nCount,
int nTabPositions,
LPINT lpnTabStopPositions
) const;
CSize GetTabbedTextExtent(
const CString& str,
int nTabPositions,
LPINT lpnTabStopPositions
) const;
Parameter
lpszString
Punkte in eine Zeichenfolge. Sie können ein CString-Objekt für diesen Parameter übergeben.nCount
Gibt die Anzahl der Zeichen in der Zeichenfolge. Wenn nCount ist - 1, die Länge wird berechnet.nTabPositions
Gibt die Anzahl der Tabulationspositionen im Array, das auf durch lpnTabStopPositions gezeigt wird.lpnTabStopPositions
Punkte in einem Array von ganzen Zahlen, die die Tabulationspositionen in logischen Einheiten enthalten. Die Tabstopps müssen in aufsteigender Reihenfolge sortiert werden, der kleinste XWert sollte der erste Punkt im Array sein. Hintere Registerkarten sind nicht zulässig.str
Ein CString-Objekt, das die angegebenen gezeichnet werden Zeichen enthält.
Rückgabewert
Die Dimensionen der Zeichenfolge (in logischen Einheiten) in einem CSize-Objekt.
Hinweise
Wenn die Zeichenfolge eine oder mehrere Tabstoppzeichen enthält, wird die Breite der Zeichenfolge nach den Tabstopps, die von lpnTabStopPositions angegeben werden. Die Funktion verwendet die aktuell ausgewählte Schriftart, um die Dimensionen der Zeichenfolge zu berechnen.
Der aktuelle Clippingbereich stimmt nicht mit der Breite und Höhe aus, die die GetTabbedTextExtent-Funktion zurückgegeben werden.
Da einige Geräte keine Zeichen in regulären Zellenträgern (das heißt, sie Kern die Zeichen) platzieren, könnte die Summe des Wertebereichs der Zeichen in einer Zeichenfolge nicht dem Umfang der Zeichenfolge.
Wenn nTabPositions 0 ist und lpnTabStopPositionsNULL ist, werden Registerkarten zu achtmal die durchschnittliche Zeichenbreite erweitert. Wenn nTabPositions 1 ist, werden die Tabstopps durch den Abstand getrennt, der durch den ersten Wert im Array angegeben wird, auf das lpnTabStopPositions zeigt. Wenn lpnTabStopPositions zu mehr als ein einzelner Wert zeigt, wird ein Tabstopp für jeden Wert im Array, bis der Zahl festgelegt, die von nTabPositions angegeben wird.
Anforderungen
Header: afxwin.h