DrawText

機能
指定の矩形領域内にテキストを出力する
Declare Function DrawText Lib "user32.dll" Alias "DrawTextA" _
(ByVal hdc As Long, ByVal lpString As String, ByVal nCount As Long, _
lpRect As RECT, ByVal uFormat As Long) As Long
Declare Function DrawText Lib "user32.dll" Alias "DrawTextA" _
(ByVal hdc As Integer, ByVal lpString As String, ByVal nCount As Integer, _
lpRect As RECT, ByVal uFormat As Integer) As Integer

int DrawText(
HDC hDC,
LPCTSTR lpString,
int nCount,
LPRECT lpRect,
UINT uFormat
);
引数
hdc

デバイスコンテキストのハンドル
lpString
出力の文字列
nCount
同、バイト数(すべてのテキストを出力するとき-1)
lpRect
出力範囲を指定するRECT構造体
uFormat
出力する書式を指定する定数
戻り値
正常終了のとき                           テキストの高さ
エラーのとき                             0
備考
DT_SINGLELINEを設定しない場合は、複数行とみなされる。
uFormatの定数

DT_BOTTOM = &H8                          矩形の底辺にテキストを合わせる。
                                          DT_SINGLELINEと共に使う
DT_CALCRECT = &H400                      テキストが納まる実際の矩形サイズを計算
                                          概略の矩形サイズを与えて、この定数を指定する
DT_CENTER = &H1                          テキストを水平方向にセンタリング
DT_EDITCONTROL = &H2000                  テキストボックスと同じ書式化
DT_END_DLLIPISIS = &H8000&               矩形領域内に納まらないとき最後尾に...を付ける
DT_EXPANDTABS = &H40                     [TAB]をスペースに変換(デフォルト8バイト)
DT_EXTERNALLEADING = &H200               行間の計算にフォントの外部リーディングを考慮する
DT_LEFT = &H0                            左揃え
DT_MODIFYSTRING = &H10000                修正した文字をlpStringTextに返す
DT_NOCLIP = &H100                        クリッピングしないでテキストを表示
DT_PATH_ELLIPSIS = &H4000                矩形領域内に納まらないとき中央部に...を付ける
DT_NOPREFIX = &H800                      "&"に特別な意味を持たせない
DT_RIGHT = &H2                           右揃え
DT_RTLREADING = &H20000                  アラビア語などのとき、右から左に表示
DT_SINGLELINE = &H20                     テキスト中の1行を指定
DT_TABSTOP = &H80                        タブ位置を設定
                                          タブと置き換えするスペースを変更する場合は
                                          フラッグ上位バイトに設定する
                                          例えば4バイトに設定する場合は
                                          DT_TABSTOP or DT_EXPANDTABS or &H400
DT_TOP = &H0                             上揃え(DT_SINGLELINEと共に使う)
DT_VCENTER  &H4                          テキストを垂直方向にセンタリング
                                          (DT_SINGLELINEと共に使う)
DT_WORDBREAK = &H10                      単語間のスペースを改行して使うように設定
DT_WORD_ELLIPSIS = &H40000