Win32 API関数の勉強をしています。
TabbedTextOut()関数の仮引数 LPINT lpnTabStopPositions にはint配列(値は昇順)へのポインタを渡すことになっています。
通常の8文字幅のタブ以外に設定できるようですが。配列をどう使うのか分かりません。
いくつか適当な値を試してみたのですが、妙な位置で区切られているように思います。回答お願いします。
TabbedTextOut()関数のタブ設定について
-
ふりかけ
Re: TabbedTextOut()関数のタブ設定について
Win32 API の質問は不適切でしたか
ほとんど使われないパラメータらしいので、気持ちは悪いけど諦めます。失礼しました。
ほとんど使われないパラメータらしいので、気持ちは悪いけど諦めます。失礼しました。
Re: TabbedTextOut()関数のタブ設定について
解決となっていますが……。
タブストップ位置なので,タブ文字があると,次のタブストップ位置まで描画位置が進みます。
を使った場合,60ピクセルごと (60, 120, 180, 240, ...) にタブストップが設定されます。
を使った場合,60ピクセルの位置と150ピクセルの位置にタブストップが設定されます。
# それを超えた場合,定義されていないようです。
- 配列の要素数が1個の場合は,その倍数がタブストップ位置
- 配列の要素数が2個以上の場合は,その位置がタブストップ位置
タブストップ位置なので,タブ文字があると,次のタブストップ位置まで描画位置が進みます。
を使った場合,60ピクセルごと (60, 120, 180, 240, ...) にタブストップが設定されます。
を使った場合,60ピクセルの位置と150ピクセルの位置にタブストップが設定されます。
# それを超えた場合,定義されていないようです。
-
ふりかけ
Re: TabbedTextOut()関数のタブ設定について
なるほど、配列要素が2個以上だと定義されていないので妙な挙動だったんですね。
てっきり60, 150, 60, 150...
となるのを期待してたのですが、それは1個の時だけの特例なんですね。
YuOさんありがとうございました。
てっきり60, 150, 60, 150...
となるのを期待してたのですが、それは1個の時だけの特例なんですね。
YuOさんありがとうございました。