ページ 11

数字を左側に伸ばしたい

Posted: 2009年12月06日(日) 11:30
by いい
DrawFormatStringで数字を書いてその数字を上昇させていくと
数字は DrawFormatStringに示した地点の右側に伸びていきます。
(桁数が増えた時)これを地点から左側に伸びていくようにするには
どのようにしたらよいのでしょうか?
よろしくお願いします。

→→→→1 →→→→→11 ではなく

→→→→1 →→→11

したいという意味です。

Re:数字を左側に伸ばしたい

Posted: 2009年12月06日(日) 12:23
by MNS
最大の桁が決まっているのなら、最小フィールド幅を指定することで出来ると思います。
例:DrawFormatString(200, 100, color, "%10d", var);

もしくは、表示したい文字列の幅を取得し、文字列の右端がくるようにしたい座標(x)から
その幅を引いたところから、文字列の描画を始めるという方法もあります。
例:[右端が(600,200)にくるようにしたい]
  int w = GetDrawFormatStringWidth("%d", var);
  DrawFormatString(600-w, 100, color, "%d", var);

Re:数字を左側に伸ばしたい

Posted: 2009年12月06日(日) 12:33
by いい
ありがとうございます。
かなり無知でした。