DrawText()メソッド | |
virtual int DrawText( LPCTSTR lpszString, int nCount, LPRECT lpRect, UINT nFormat ); int DrawText( const CString& str, LPRECT lpRect, UINT nFormat ); | |
引数 | 概要 |
lpszString | 描画文字列のポインタ |
nCount | 文字列のバイト数 |
lpRect | CRectオブジェクト(描画領域?) |
nFormat | テキストのフォーマット方法。論理和で設定可能 |
str | 描画文字列 |
nFormatの値(抜粋) | |
値 | 概要 |
DT_BOTTOM |
テキストを四角形の下辺に揃えます。 この値は必ず DT_SINGLELINE と組み合わせます。 |
DT_CALCRECT |
四角形の幅と高さを決めます。 テキストが複数行あるときは、DrawText 関数は、 引数 lpRect で指定された四角形の幅を変えずに、 テキストの最終行が収まるように、四角形の底辺を拡張します。 テキストが 1 行だけのときは、DrawText 関数は四角形の右辺を調整して、 最後の文字が四角形に収まるようにします。どちらの場合も、 DrawText 関数はフォーマットされたテキストの高さを返しますが、 テキストの描画は行いません。 |
DT_CENTER | テキストを水平方向に中央揃えします |
DT_END_ELLIPSIS DT_PATH_ELLIPSIS |
指定された四角形に収まるように、 指定された文字列の一部を省略記号 (...) に置き換えます。 文字列を変更するときは、DT_MODIFYSTRING フラグも指定する必要があります。 DT_END_ELLIPSIS を指定すると、文字列の末尾部分の文字が置換されます。 DT_PATH_ELLIPSIS を指定すると、文字列の中間部分の文字が置換されます。 DT_PATH_ELLIPSISでは、文字列に円記号 (\) が含まれていると、 最後の円記号の後のテキストはできる限り残されます。 |
DT_EXPANDTABS | タブ文字数を展開します。デフォルトのタブ設定は 8 文字です。 |
DT_EXTERNALLEADING |
行の高さにフォントの外部リーディングを含めます。 通常、外部リーディングはテキストの行の高さには含まれません。 |
DT_LEFT | テキストを左端に揃えます。 |
DT_MODIFYSTRING |
表示テキストに合わせて、指定された文字列を変更します。 このフラグを指定するときは、DT_END_ELLIPSIS または DT_PATH_ELLIPSIS フラグも指定する必要があります |
DT_NOCLIP | クリッピングせずに描画します。 |