数値を列挙するには?


にゃんこ  2006-01-17 00:27:03  No: 60293

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

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

        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-17 01:03:41  No: 60294

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


Blue  2006-01-17 01:05:47  No: 60295

>     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-17 02:35:32  No: 60296

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


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加