次の方法で共有


StringFormat::SetTabStops メソッド (gdiplusstringformat.h)

StringFormat::SetTabStops メソッドは、この StringFormat オブジェクトのタブ位置のオフセットを設定します。

構文

Status SetTabStops(
  [in] REAL       firstTabOffset,
  [in] INT        count,
  [in] const REAL *tabStops
);

パラメーター

[in] firstTabOffset

種類: REAL

初期オフセット位置を指定する実数。 この初期オフセット位置は文字列の原点を基準とし、最初のタブ位置のオフセットは初期オフセット位置を基準とします。

[in] count

型: INT

tabStops 配列内のタブ位置オフセットの数を指定する整数。

[in] tabStops

型: const REAL*

タブ位置のオフセットを指定する実数の配列へのポインター。 最初のタブ位置のオフセットは、配列内の最初の値、2 番目のタブ位置のオフセット、配列内の 2 番目の値などです。

戻り値

種類: 状態

メソッドが成功した場合は、 Status 列挙体の要素である Ok を返します。

メソッドが失敗した場合は、 Status 列挙体の他の要素のいずれかを返します。

解説

tabStops 配列内の各タブ位置オフセット (最初のタブ位置を除く) は、前のタブ位置からの相対位置です。 最初のタブ位置オフセットは、 firstTabOffset で指定された初期オフセット位置を基準にしています。 たとえば、最初のオフセット位置が 8 で、最初のタブ位置オフセットが 50 の場合、最初のタブ位置は位置 58 になります。 最初のオフセット位置が 0 の場合、最初のタブ位置オフセットは位置 0 (文字列の原点) を基準とします。

次の例では、 StringFormat オブジェクトを作成し、タブ位置を設定し、 StringFormat オブジェクトを使用してタブ文字 (\t) を含む文字列を描画します。 このコードでは、文字列のレイアウト四角形も描画されます。

VOID Example_SetTabStops(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);
}

要件

   
サポートされている最小のクライアント Windows XP、Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー gdiplusstringformat.h (Gdiplus.h を含む)
Library Gdiplus.lib
[DLL] Gdiplus.dll

関連項目

テキストの書式設定

StringFormat

StringFormat::GetTabStops