Share via


tabbedTextOutA 函式 (winuser.h)

TabbedTextOut 函式會在指定的位置寫入字元字串,將索引卷標展開至製表位位置陣列中指定的值。 文字是以目前選取的字型、背景色彩和文字色彩撰寫。

語法

LONG TabbedTextOutA(
  [in] HDC       hdc,
  [in] int       x,
  [in] int       y,
  [in] LPCSTR    lpString,
  [in] int       chCount,
  [in] int       nTabPositions,
  [in] const INT *lpnTabStopPositions,
  [in] int       nTabOrigin
);

參數

[in] hdc

裝置內容的句柄。

[in] x

字串起點的 X 座標,以邏輯單位表示。

[in] y

字串起點的 Y 座標,以邏輯單位表示。

[in] lpString

要繪製之字元字串的指標。 字串不需要以零結束,因為 nCount 會指定字串的長度。

[in] chCount

lpString 所指向的字串長度

[in] nTabPositions

製表位位置陣列中的值數目。

[in] lpnTabStopPositions

陣列的指標,其中包含邏輯單元中的製表位位置。 製表位必須依遞增順序排序;最小的 x 值應該是陣列中的第一個專案。

[in] nTabOrigin

以邏輯單位展開索引標籤之起始位置的 X 座標。

傳回值

如果函式成功,則傳回值會是字串的邏輯單位維度。 高度是高序單字,寬度是低序字。

如果此函式失敗,則傳回值為零。

備註

如果 nTabPositions 參數為零,且 lpnTabStopPositions 參數為 NULL,則索引卷標會展開為平均字元寬度的八倍。

如果 nTabPositions 為 1,製表位會以 lpnTabStopPositions 陣列中第一個值所指定的距離分隔。

如果 lpnTabStopPositions 陣列包含一個以上的值,則會針對數位中的每個值設定製表位,最多為 nTabPositions 指定的數位。

nTabOrigin 參數可讓應用程式針對單行呼叫TabbedTextOut函式數次。 如果應用程式每次呼叫 TabbedTextOut 多次, 且 nTabOrigin 設定為相同的值,則函式會展開與 nTabOrigin 所指定位置相關的所有索引卷標。

根據預設, TabbedTextOut 函式不會使用或更新目前的位置。 如果應用程式在呼叫 TabbedTextOut 時需要更新目前的位置,則應用程式可以呼叫 SetTextAlign 函式,並將 wFlags 參數設定為 TA_UPDATECP。 設定此旗標時,系統會改用目前的位置,在後續呼叫TabbedTextOut函式時忽略 XY 參數。

注意 針對 Windows Vista 和更新版本, TabbedTextOut 會在繪製文字時忽略文字對齊。
 

注意

winuser.h 標頭會將 TabbedTextOut 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例

規格需求

需求
最低支援的用戶端 Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限桌面應用程式]
目標平台 Windows
標頭 winuser.h (包含 Windows.h)
程式庫 User32.lib
Dll User32.dll
API 集合 ext-ms-win-ntuser-misc-l1-5-1 (於 Windows 10 10.0.14393 版)

另請參閱

DrawText

字型和文字函式

字型和文字概觀

GetTabbedTextExtent

GrayString

SelectObject

SetBkColor

SetTextAlign

SetTextColor

TextOut