我想要make数组格式。并放入我的for循环 [英] I want make array format . and put into my for loop

查看:74
本文介绍了我想要make数组格式。并放入我的for循环的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

嗨??



我想要更改数组格式。



  int  i; 
CRect rCtrlA( 14 322 101 359 );
CRect rCtrlB( 104 322 210 359 );
CRect rCtrlC( 213 322 319 359 );
CRect rCtrlD( 322 322 428 359 );
CRect rCtrlE( 430 322 536 359 );
CRect rCtrlF( 538 322 624 359 );

// 我想把CRect放在我的for循环上。

for (i = 0 ; i< 6; i ++)
{
m_pTabRadio [i] .Create(NULL,WS_CHILD | WS_VISIBLE,rCtrlA, this ,IDC_RADIO_MAINTAB + i);

}

解决方案

你有两个选择来静态初始化一个CRect数组: br />

 CRect rCtrs [ 6 ] = {
CRect( 14 322 101 359 ),
CRect( 104 322 210 359 ),
...
};





 RECT rCtrs [ 6 ] = {
14 322 101 359
104 322 210 359
...
};



但更好的是你只需要在循环中计算你的rects的坐标:

  const   int  horSpacing =  100 ; 
const int gapWidth = 3 ;
for (i = 0 ; i< 6; ++ i)
{
CRect r( 0 322 0 359 );
r.left = 14 + i * horSpacing;
r.right = r.left + horSpacing - gapWidth;
...



这样可以提供完美均匀的间距,并且在对话框的尺寸发生变化或控件数量增加时更容易维护。


Hi??

I want change array format.

int i;
CRect rCtrlA(14,322,101,359);
CRect rCtrlB(104,322,210,359);
CRect rCtrlC(213,322,319,359);
CRect rCtrlD(322,322,428,359);
CRect rCtrlE(430,322,536,359);
CRect rCtrlF(538,322,624,359);

// i want put CRect on my for loop.

for(i=0; i<6;i++)
{
   m_pTabRadio[i].Create(NULL, WS_CHILD|WS_VISIBLE, rCtrlA, this, IDC_RADIO_MAINTAB+i);

}

解决方案

You have two choices to statically initialize an array of CRect:

CRect rCtrs [6] = {
    CRect (14, 322, 101, 359),
    CRect (104, 322, 210, 359),
    ...
};


or

RECT rCtrs [6] = {
    14, 322, 101, 359,
    104, 322, 210, 359,
    ...
};


But even better would be that you just calculate the coordinates of your rects in the loop:

const int horSpacing = 100;
const int gapWidth = 3;
for (i=0; i<6; ++i)
{
    CRect r (0, 322, 0, 359);
    r.left = 14 + i*horSpacing;
    r.right = r.left + horSpacing - gapWidth;
   ...


That gives you a perfectly even spacing and is easier to maintain in case the dimensions of your dialog change or the number of your controls grows.


这篇关于我想要make数组格式。并放入我的for循环的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆