哪位好心人能帮帮忙~~~
vc吧
全部回复
仅看楼主
level 1
vip夕叶 楼主
我想通过按这个按钮,在对话框的静态控件中画图,但参数传不过去,好像~~~
内流满面~~谢谢啦
void CAitulunDlg::OnFINISH()
{
// TODO: Add your control notification handler code here
    int R,e,H,J1,J2,J3,J4,i,J,j;
double S[361];
R=GetDlgItemInt(IDC_EDIT1);
   e=GetDlgItemInt(IDC_EDIT2);
H=GetDlgItemInt(IDC_EDIT3);
J1=GetDlgItemInt(IDC_EDIT4);
J2=GetDlgItemInt(IDC_EDIT5);
J3=GetDlgItemInt(IDC_EDIT6);
J4=360-J1-J2-J3;
   if(J1+J2+J3!=270)
   {
    MessageBox("J1+J2+J3应等于270度!");
   }
   else
   {
S[0] = sqrt(R*R-e*e);
      UpdateData();
    if(m_guilv==2)
    {
    for (i=0;i<360;i++)
    {
      J=i+1;
              if (i>360-J4)
     {
                S[J]=0;
     }
              else if( i>360-J4-J3)
     {
                S[J]=H-H*(1-cos(pi*J/J3))/2;
     }
        else if(i>360-J4-J3-J2)
     {
        S[J]=H;
     }
        else
     {
        S[J]=H*(1-cos(pi*J/J1));
     }
    }
    }
     else if(m_guilv==1)
   {
             for(i=0;i<360;i++)
    {
            J=i+1;
                if (i>360-J4)
     {
                    S[J]=0;
     }
                else if( i>360-J4-J3)
     {
                    S[J]=H-2*H*J*J/(J3*J3);  
     }
          else if(i>360-J4-J3-J2)
     {
             S[J]=H;
     }
          else
     {
            S[J]=2*H*J*J/(J1*J1);
     }
    }
   }
       else if(m_guilv==0)
    {
         for(i=0;i<360;i++)
   {
       J=i+1;
             if (i>360-J4)
    {
                S[J]=0;
    }
    else if( i>360-J4-J3)
    {
     S[J]=H-H*J/J3;
    }
    else if(i>360-J4-J3-J2)
    {
     S[J]=H;
    }
             else
    {
     S[J]=H*J/J1;
    }
   }
    }
   for(j=0;j<361;j++)
{
        X[j]= e*cos(j*pi/180)+(S[0]+S[j])*sin(j*pi/180);
        Y[j]= (S[0]+S[j])*cos(j*pi/180)-e*sin(j*pi/180);
}
    
Invalidate();
   }

2010年07月18日 15点07分 1
1