Metodo StringFormat::GetTabStops (gdiplusstringformat.h)
Il metodo StringFormat::GetTabStops ottiene gli offset delle tabulazioni in questo oggetto StringFormat .
Sintassi
Status GetTabStops(
[in] INT count,
[out] REAL *firstTabOffset,
[out] REAL *tabStops
);
Parametri
[in] count
Tipo: INT
Intero che specifica il numero di offset tabulazioni nella matrice tabStops .
[out] firstTabOffset
Tipo: REAL*
Puntatore a un oggetto REAL che riceve la posizione di offset iniziale. Questa posizione di offset iniziale è relativa all'origine della stringa e l'offset della prima tabulazione è relativo alla posizione di offset iniziale.
[out] tabStops
Tipo: REAL*
Puntatore a una matrice di tipo REAL che riceve gli offset tabulazioni. L'offset della prima tabulazione è il primo valore della matrice, l'offset della seconda tabulazione, il secondo valore della matrice e così via.
Valore restituito
Tipo: Stato
Se il metodo ha esito positivo, restituisce Ok, ovvero un elemento dell'enumerazione Status .
Se il metodo ha esito negativo, restituisce uno degli altri elementi dell'enumerazione Status .
Commenti
Ogni offset tabulazione nella matrice tabStops , ad eccezione del primo, è relativo a quello precedente. Il primo offset tabulazione è relativo alla posizione di offset iniziale indicata da firstTabOffset. Ad esempio, se la posizione iniziale di offset è 8 e il primo offset tabulazione è 50, la prima tabulazione è in posizione 58. Se la posizione di offset iniziale è zero, il primo offset tabulazione è relativo alla posizione 0, l'origine stringa.
Esempio
L'esempio seguente crea un oggetto StringFormat , imposta le tabulazioni e usa l'oggetto StringFormat per disegnare una stringa contenente caratteri di tabulazione (\t). Il codice disegna anche il rettangolo di layout della stringa. Il codice ottiene quindi le tabulazioni e procede per usare o controllare le tabulazioni in qualche modo.
VOID Example_GetTabStop(HDC hdc)
{
Graphics graphics(hdc);
REAL tabs[] = {150, 100, 100};
FontFamily fontFamily(L"Courier New");
Font font(&fontFamily, 12, FontStyleRegular, UnitPoint);
SolidBrush solidBrush(Color(255, 0, 0, 255));
StringFormat stringFormat;
stringFormat.SetTabStops(0, 3, tabs);
graphics.DrawString(
L"Name\tTest 1\tTest 2\tTest 3",
25,
&font,
RectF(20, 20, 500, 100),
&stringFormat,
&solidBrush);
// Draw the rectangle that encloses the text.
Pen pen(Color(255, 255, 0, 0));
graphics.DrawRectangle(&pen, 20, 20, 500, 100);
// Get the tab stops.
INT tabStopCount = 0;
REAL firstTabOffset = 0;
REAL* tabStops = NULL;
tabStopCount = stringFormat.GetTabStopCount();
tabStops = (REAL*)malloc(tabStopCount*sizeof(REAL));
stringFormat.GetTabStops(tabStopCount, &firstTabOffset, tabStops);
for(INT j = 0; j < tabStopCount; ++j)
{
// Inspect or use the value in tabStops[j].
}
}
Requisiti
Client minimo supportato | Windows XP, Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | gdiplusstringformat.h (include Gdiplus.h) |
Libreria | Gdiplus.lib |
DLL | Gdiplus.dll |