数値を列挙するには?


にゃんこ  2006-01-16 15:27:03  No: 60293  IP: 192.*.*.*

初歩的な質問なのですが、ご教授していただけると助かります。

外部から取り込んだ音の周波数をリアルタイムに表示させたいのですが、

        char buffer[100];
  int x,y;
  
  for (x=0;x<10;x++){
     for (y=0;y<10;y++){
         sprintf(buffer,"%f",*m_pPower);  
               pDC->TextOut(x,y,buffer,lstrlen(buffer));
           }
        }
としてみても、同じ場所に表示されてしまいます。
*m_pPowerというのが音の大きさを表しています。
この数値を並べて表示させていきたいのですが、どうすればよいのか
分かりません。どなたか教えていただけると有り難いです。
宜しくお願いします。

編集 削除
dairygoods  2006-01-16 16:03:41  No: 60294  IP: 192.*.*.*

本当に同じ位置に出ていますか?
1ピクセルずつずれて表示されていませんか?

編集 削除
Blue  2006-01-16 16:05:47  No: 60295  IP: 192.*.*.*

>     for (x=0;x<10;x++){
>       for (y=0;y<10;y++){

    for (x=0;x<100;x+=10){
       for (y=0;y<100;y+=10){
とするとどうなりますか?

編集 削除
KING・王  2006-01-16 17:35:32  No: 60296  IP: 192.*.*.*

MSDNのCDC::TextOutより、
> TextOut 関数の呼び出し時に現在位置を更新する必要がある場合は、
> SetTextAlign メンバ関数の nFlags に TA_UPDATECP を設定して呼び出します。
> このフラグが設定されているときは、Windows は続く TextOut 関数の呼び出しで、
> x と y を無視し、代わりに現在位置を使います。
とありますが、関係ありませんか?
#詳細は、MSDN参照のこと。

編集 削除