座標を求める

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
蓮花

座標を求める

#1

投稿記事 by 蓮花 » 14年前

パネルの数によって初期の表示位置の座標を変えたいです。
パネルサイズは50で必ず画面の中央にパネルを表示されるようにしたいです。

たとえばパネルを1つしか表示しない場合
blk[0].x = 240;

2つの場合
blk[0].x = 240-25;
blk[1].x = 240+25;

3つの場合
blk[0].x = 240-50;
blk[1].x = 240;
blk[2].x = 240+50;

パネルの数は動的に変わります。
これを簡単に求められるような関数を作りたいのですがイマイチ式がわかりません。
int posBlk( int num ); // numはパネルの数

五反田

Re:座標を求める

#2

投稿記事 by 五反田 » 14年前

ちょっとちゃんと理解出来ているか自信がないのですが、パネルの総枚数と座標を求めたいパネルが何枚目かが分かれば、
int posBlk(int num,int max){
    return 240-(max-1)*25+num*50;
}
というように作って

例えば総枚数が2つの場合
blk[0].x = posBlk(0,2);//=240-25
blk[1].x = posBlk(1,2);//=240-25+50


という感じで、求められませんか?

閉鎖

“C言語何でも質問掲示板” へ戻る