MFC课程设计报告

时间:2024.4.7

《MFC编程及应用》课程设计报告

题目:           彩票自动选号系统                     

学号:   1004220327        姓名:     李康        

指导老师:              杨均匀                   

时间:             20##年10月7日                    


1、设计步骤

(1)   工程建立

建立基于对话框的应用程序

(2)   类中新增变量的作用

1、      在资源中增加两个对话框,并建立类向导,创建两个类CPage1,CPage2.

2、           增加类Cli1004220327在后面静态成员变量关联起来

3、           在类CPage1中增加m_num1,m_num2,..m_num35与对话框中的静态文本关联起来,也就是彩票的数字.

4、           在对话框中增加五个单选按钮,用来选择投注数,当选择第一注时,变量m_touzhu1=0,选择第二注时m_touzhu1=1,依此类推

5、           对话框中的开始按钮,增加关联函数OnStart(),当m_touzhu1=-1时,表示没有投注,用MessageBox弹出对话框提示请投注,当m_touzhu1=0时,即表示投一注,在设置定时器时,只设置7个,当m_touzhu1=1时,定时器设置14个。SetTimer(i,1,NULL);i表示定时器的名字,中间的1表示间隔1ms,NULL表示空,用for循环依次设置定时器

6、      增加消息函数,TIMER,设置定时器响应的函数,当m_touzhu1=0时,表示设置了7个定时器,int型i用来随机产生一个很大的整数,语句i = rand()%10用来随机产生一个小于10的整数,也就是我们所看到的彩票,语句str.Format("%i",i);

m_num1.SetWindowText(str);

是将产生的整数i转换成CString型,后面代码的功能基本是一样的。

7、      类CPage1的OnStop()函数的功能是来结束定时器,同样,当m_touzhu1=0时,只产生7个定时器,KillTimer(i)的i是指定时器的名字,用for循环来结束每个定时器。当m_touzhu1=1,2,3,4时,依此类推

8、      类CPage1中OnQinglimg()函数的功能是将所有的彩票号码变为0,m_num1.SetWindowText("0");可以实现该功能。

9、      类CPage1中OnCtlColor()函数是用来控制彩票号码的顔色,pDC->SetTextColor(RGB(0,0,255));来控制颜色。

10、    在类CPage1中增加CFont m_font1;变量,再通过语句m_font1.CreateFont(-24,-20,0,0,100,0,0,0,DEFAULT_CHARSET,OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,FF_ROMAN,"宋体");来控制字体的大小和形状。

11、    在类CPage1中OnAuto()函数是用来自动产生一组彩票,点击一下自动按钮时,彩票自动选号系统开始自动选票,然后再点击一下时,彩票选号系统停止,随机产生一组彩票,这个功能和我开始想的有出入,我开始以为是点击一下就实现自动选号的功能。

      if(k==0)

{

     OnStart();

 k=1;

}

 else if(k==1)

 {

    OnStop();

    k=0;

 }

定义一k在中间传递,变换的调用OnStart();和OnStop()函数,实现自动选号的功能。

12、类CPage2和CPage1中各个函数的功能基本相同,只是在两个地方有细小不同, i = rand()%36;

   if (i>9&&i<36)

   {

     str.Format("%i",i);

     m_num36.SetWindowText(str);

   }

   else if(i<10)

   {

        str.Format("%i",i);

     m_num36.SetWindowText("0"+str);

   }

用来区分彩票是大于10还是小于10,如果小于10,需在号码前加一个0,另外,产生随机号码时是对36求余,使彩票号码介于00~35之间

13、类CMy1004220327Dlg中的OnPaint()函数用来给背景, 这个功能是我baidu来的,把背景改成了南京理工大学的喷泉广场。

(3)源代码,由于个人能力有限,所用的算法比较简单,但代码很长,CPage1和Cpage2代码差不多,我只复制CPage1的代码。

WM_TIMER代码:

void CPage2::OnTimer(UINT nIDEvent)

{

    CString str ;

if(m_touzhu2==0)   

{int i ;

    switch (nIDEvent)

    {

    case 1:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num36.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num36.SetWindowText("0"+str);

        }

    break;

    case 2:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num37.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num37.SetWindowText("0"+str);

        }

    break;

    case 3:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num38.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num38.SetWindowText("0"+str);

        }

    break;

    case 4:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num39.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num39.SetWindowText("0"+str);

        }

    break; 

    case 5:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num40.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num40.SetWindowText("0"+str);

        }

    break;

    case 6:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num41.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num41.SetWindowText("0"+str);

        }

    break;

    case 7:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num42.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num42.SetWindowText("0"+str);

        }

    break;

    }

}  

else if(m_touzhu2==1)

{

   

    int i ;

    switch (nIDEvent)

    {

    case 1:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num36.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num36.SetWindowText("0"+str);

        }

    break;

    case 2:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num37.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num37.SetWindowText("0"+str);

        }

    break;

    case 3:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num38.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num38.SetWindowText("0"+str);

        }

    break;

    case 4:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num39.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num39.SetWindowText("0"+str);

        }

    break; 

    case 5:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num40.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num40.SetWindowText("0"+str);

        }

    break;

    case 6:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num41.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num41.SetWindowText("0"+str);

        }

    break;

    case 7:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num42.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num42.SetWindowText("0"+str);

        }

    break;

   

    case 8:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num43.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num43.SetWindowText("0"+str);

        }

    break;

    case 9:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num44.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num44.SetWindowText("0"+str);

        }

    break;

    case 10:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num45.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num45.SetWindowText("0"+str);

        }

    break;

    case 11:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num46.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num46.SetWindowText("0"+str);

        }

    break; 

    case 12:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num47.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num47.SetWindowText("0"+str);

        }

    break;

    case 13:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num48.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num48.SetWindowText("0"+str);

        }

    break;

    case 14:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num49.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num49.SetWindowText("0"+str);

        }

    break;

    }

}

else if(m_touzhu2==2)

{

   

    int i ;

    switch (nIDEvent)

    {

    case 1:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num36.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num36.SetWindowText("0"+str);

        }

    break;

    case 2:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num37.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num37.SetWindowText("0"+str);

        }

    break;

    case 3:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num38.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num38.SetWindowText("0"+str);

        }

    break;

    case 4:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num39.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num39.SetWindowText("0"+str);

        }

    break; 

    case 5:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num40.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num40.SetWindowText("0"+str);

        }

    break;

    case 6:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num41.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num41.SetWindowText("0"+str);

        }

    break;

    case 7:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num42.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num42.SetWindowText("0"+str);

        }

    break;

   

    case 8:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num43.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num43.SetWindowText("0"+str);

        }

    break;

    case 9:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num44.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num44.SetWindowText("0"+str);

        }

    break;

    case 10:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num45.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num45.SetWindowText("0"+str);

        }

    break;

    case 11:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num46.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num46.SetWindowText("0"+str);

        }

    break; 

    case 12:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num47.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num47.SetWindowText("0"+str);

        }

    break;

    case 13:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num48.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num48.SetWindowText("0"+str);

        }

    break;

    case 14:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num49.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num49.SetWindowText("0"+str);

        }

    break;

        case 15:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num50.SetWindowText(str);

        }

            else if(i<10)

        {

                str.Format("%i",i);

            m_num50.SetWindowText("0"+str);

        }

    break;

    case 16:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num51.SetWindowText(str);

        }

            else if(i<10)

        {

                str.Format("%i",i);

            m_num51.SetWindowText("0"+str);

        }

    break;

    case 17:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num52.SetWindowText(str);

        }

            else if(i<10)

        {

                str.Format("%i",i);

            m_num52.SetWindowText("0"+str);

        }

    break;

    case 18:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num53.SetWindowText(str);

        }

            else if(i<10)

        {

                str.Format("%i",i);

            m_num53.SetWindowText("0"+str);

        }

    break;

    case 19:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num54.SetWindowText(str);

        }

            else if(i<10)

        {

                str.Format("%i",i);

            m_num54.SetWindowText("0"+str);

        }

    break;

    case 20:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num55.SetWindowText(str);

        }

            else if(i<10)

        {

                str.Format("%i",i);

            m_num55.SetWindowText("0"+str);

        }

    break;

    case 21:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num56.SetWindowText(str);

        }

            else if(i<10)

        {

                str.Format("%i",i);

            m_num56.SetWindowText("0"+str);

        }

    break; 

    }

}

else if(m_touzhu2==3)

{

   

    int i ;

    switch (nIDEvent)

    {

        case 1:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num36.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num36.SetWindowText("0"+str);

        }

    break;

    case 2:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num37.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num37.SetWindowText("0"+str);

        }

    break;

    case 3:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num38.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num38.SetWindowText("0"+str);

        }

    break;

    case 4:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num39.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num39.SetWindowText("0"+str);

        }

    break; 

    case 5:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num40.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num40.SetWindowText("0"+str);

        }

    break;

    case 6:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num41.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num41.SetWindowText("0"+str);

        }

    break;

    case 7:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num42.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num42.SetWindowText("0"+str);

        }

    break;

   

    case 8:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num43.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num43.SetWindowText("0"+str);

        }

    break;

    case 9:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num44.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num44.SetWindowText("0"+str);

        }

    break;

    case 10:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num45.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num45.SetWindowText("0"+str);

        }

    break;

    case 11:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num46.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num46.SetWindowText("0"+str);

        }

    break; 

    case 12:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num47.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num47.SetWindowText("0"+str);

        }

    break;

    case 13:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num48.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num48.SetWindowText("0"+str);

        }

    break;

    case 14:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num49.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num49.SetWindowText("0"+str);

        }

    break;

        case 15:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num50.SetWindowText(str);

        }

            else if(i<10)

        {

                str.Format("%i",i);

            m_num50.SetWindowText("0"+str);

        }

    break;

    case 16:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num51.SetWindowText(str);

        }

            else if(i<10)

        {

                str.Format("%i",i);

            m_num51.SetWindowText("0"+str);

        }

    break;

    case 17:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num52.SetWindowText(str);

        }

            else if(i<10)

        {

                str.Format("%i",i);

            m_num52.SetWindowText("0"+str);

        }

    break;

    case 18:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num53.SetWindowText(str);

        }

            else if(i<10)

        {

                str.Format("%i",i);

            m_num53.SetWindowText("0"+str);

        }

    break;

    case 19:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num54.SetWindowText(str);

        }

            else if(i<10)

        {

                str.Format("%i",i);

            m_num54.SetWindowText("0"+str);

        }

    break;

    case 20:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num55.SetWindowText(str);

        }

            else if(i<10)

        {

                str.Format("%i",i);

            m_num55.SetWindowText("0"+str);

        }

    break;

    case 21:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num56.SetWindowText(str);

        }

            else if(i<10)

        {

                str.Format("%i",i);

            m_num56.SetWindowText("0"+str);

        }

    break; 

    case 22:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num57.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num57.SetWindowText("0"+str);

        }

    break;

    case 23:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num58.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num58.SetWindowText("0"+str);

        }

    break;

    case 24:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num59.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num59.SetWindowText("0"+str);

        }

    break;

        case 25:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num60.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num60.SetWindowText("0"+str);

        }

    break;

    case 26:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num61.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num61.SetWindowText("0"+str);

        }

    break;

    case 27:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num62.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num62.SetWindowText("0"+str);

        }

    break;

    case 28:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num63.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num63.SetWindowText("0"+str);

        }

    break;

   

    }

}

else if(m_touzhu2==4)

{

   

   

   

   

    int i ;

    switch (nIDEvent)

    {

        case 1:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num36.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num36.SetWindowText("0"+str);

        }

    break;

    case 2:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num37.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num37.SetWindowText("0"+str);

        }

    break;

    case 3:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num38.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num38.SetWindowText("0"+str);

        }

    break;

    case 4:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num39.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num39.SetWindowText("0"+str);

        }

    break; 

    case 5:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num40.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num40.SetWindowText("0"+str);

        }

    break;

    case 6:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num41.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num41.SetWindowText("0"+str);

        }

    break;

    case 7:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num42.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num42.SetWindowText("0"+str);

        }

    break;

   

    case 8:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num43.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num43.SetWindowText("0"+str);

        }

    break;

    case 9:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num44.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num44.SetWindowText("0"+str);

        }

    break;

    case 10:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num45.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num45.SetWindowText("0"+str);

        }

    break;

    case 11:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num46.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num46.SetWindowText("0"+str);

        }

    break; 

    case 12:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num47.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num47.SetWindowText("0"+str);

        }

    break;

    case 13:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num48.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num48.SetWindowText("0"+str);

        }

    break;

    case 14:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num49.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num49.SetWindowText("0"+str);

        }

    break;

        case 15:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num50.SetWindowText(str);

        }

            else if(i<10)

        {

                str.Format("%i",i);

            m_num50.SetWindowText("0"+str);

        }

    break;

    case 16:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num51.SetWindowText(str);

        }

            else if(i<10)

        {

                str.Format("%i",i);

            m_num51.SetWindowText("0"+str);

        }

    break;

    case 17:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num52.SetWindowText(str);

        }

            else if(i<10)

        {

                str.Format("%i",i);

            m_num52.SetWindowText("0"+str);

        }

    break;

    case 18:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num53.SetWindowText(str);

        }

            else if(i<10)

        {

                str.Format("%i",i);

            m_num53.SetWindowText("0"+str);

        }

    break;

    case 19:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num54.SetWindowText(str);

        }

            else if(i<10)

        {

                str.Format("%i",i);

            m_num54.SetWindowText("0"+str);

        }

    break;

    case 20:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num55.SetWindowText(str);

        }

            else if(i<10)

        {

                str.Format("%i",i);

            m_num55.SetWindowText("0"+str);

        }

    break;

    case 21:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num56.SetWindowText(str);

        }

            else if(i<10)

        {

                str.Format("%i",i);

            m_num56.SetWindowText("0"+str);

        }

    break; 

    case 22:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num57.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num57.SetWindowText("0"+str);

        }

    break;

    case 23:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num58.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num58.SetWindowText("0"+str);

        }

    break;

    case 24:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num59.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num59.SetWindowText("0"+str);

        }

    break;

        case 25:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num60.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num60.SetWindowText("0"+str);

        }

    break;

    case 26:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num61.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num61.SetWindowText("0"+str);

        }

    break;

    case 27:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num62.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num62.SetWindowText("0"+str);

        }

    break;

    case 28:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num63.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num63.SetWindowText("0"+str);

        }

    break;

   

   

    case 29:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num64.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num64.SetWindowText("0"+str);

        }

    break;

    case 30:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num65.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num65.SetWindowText("0"+str);

        }

    break;

    case 31:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num66.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num66.SetWindowText("0"+str);

        }

    break; 

    case 32:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num67.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num67.SetWindowText("0"+str);

        }

    break;

    case 33:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num68.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num68.SetWindowText("0"+str);

        }

    break;

    case 34:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num69.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num69.SetWindowText("0"+str);

        }

    break;

        case 35:

        i = rand()%36;

        if (i>9&&i<36)

        {

            str.Format("%i",i);

            m_num70.SetWindowText(str);

        }

        else if(i<10)

        {

                str.Format("%i",i);

            m_num70.SetWindowText("0"+str);

        }

    break;

   

    }

}  

    CPropertyPage::OnTimer(nIDEvent);

}

OnStart()代码:

void CPage2::OnStart()

{

UpdateData();

if(m_touzhu2==-1)

{

     MessageBox("您好,请投注!");

    

}

else if(m_touzhu2==0)

{

     for (int i=1; i<8;i++)

     {

     SetTimer(i,3,NULL);

     }

}

else if(m_touzhu2==1)

{

     for(int i=1;i<15;i++)

     {

     SetTimer(i,3,NULL);

     }

}

else if(m_touzhu2==2)

{

     for(int i=1;i<22;i++)

     {

     SetTimer(i,3,NULL);

     }

}

else if(m_touzhu2==3)

{

     for(int i=1;i<29;i++)

     {

     SetTimer(i,3,NULL);

     }

}

else if(m_touzhu2==4)

{

     for(int i=1;i<36;i++)

     {

     SetTimer(i,3,NULL);

     }

}

}

OnStop()代码:

void CPage2::OnStop()

{

     if(m_touzhu2==0)

{

     for (int i=1; i<8;i++)

     {

     KillTimer(i);

     }

}

     else if(m_touzhu2==1)

{

     for (int i=1; i<15;i++)

     {

     KillTimer(i);

     }

}

     else if(m_touzhu2==2)

{

     for (int i=1; i<22;i++)

     {

     KillTimer(i);

     }

}     else if(m_touzhu2==3)

{

     for (int i=1; i<29;i++)

     {

     KillTimer(i);

     }

}

     else if(m_touzhu2==4)

{

     for (int i=1; i<36;i++)

     {

     KillTimer(i);

     }

}

}

OnCtlColor代码:

HBRUSH CPage2::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)

{

HBRUSH hbr = CPropertyPage::OnCtlColor(pDC, pWnd, nCtlColor);

     if (nCtlColor==CTLCOLOR_STATIC)

{

     CString str ;

     pDC->SetTextColor(RGB(0,0,255));

     pDC->SelectObject(&m_font2);

     pDC->TextOut(0,1,str);

}

return hbr;

}

OnQinglimg()代码

void CPage1::OnQinglimg()

{

    m_num1.SetWindowText("0");

    m_num2.SetWindowText("0");

    m_num3.SetWindowText("0");

    m_num4.SetWindowText("0");

    m_num5.SetWindowText("0");

    m_num6.SetWindowText("0");

    m_num7.SetWindowText("0");

    m_num8.SetWindowText("0");

    m_num9.SetWindowText("0");

    m_num10.SetWindowText("0");

    m_num11.SetWindowText("0");

    m_num12.SetWindowText("0");

    m_num13.SetWindowText("0");

    m_num14.SetWindowText("0");

    m_num15.SetWindowText("0");

    m_num16.SetWindowText("0");

    m_num17.SetWindowText("0");

    m_num18.SetWindowText("0");

    m_num19.SetWindowText("0");

    m_num20.SetWindowText("0");

    m_num21.SetWindowText("0");

    m_num22.SetWindowText("0");

    m_num23.SetWindowText("0");

    m_num24.SetWindowText("0");

    m_num25.SetWindowText("0");

    m_num26.SetWindowText("0");

    m_num27.SetWindowText("0");

    m_num28.SetWindowText("0");

    m_num29.SetWindowText("0");

    m_num30.SetWindowText("0");

    m_num31.SetWindowText("0");

    m_num32.SetWindowText("0");

    m_num33.SetWindowText("0");

    m_num34.SetWindowText("0");

    m_num35.SetWindowText("0");

}

OnAuto()代码:

{

    if(k==0)

    {

     OnStart();

     k=1;

    }

     else if(k==1)

     {

         OnStop();

         k=0;

     }

}

OnPaint()代码:

{

   

         CPaintDC   dc(this);  

           CRect   rect;  

           GetClientRect(&rect);  

           CDC   dcMem;  

           dcMem.CreateCompatibleDC(&dc);  

           CBitmap   bmpBackground;  

           bmpBackground.LoadBitmap(IDB_NJUST);  

                 

           BITMAP   bitmap;  

           bmpBackground.GetBitmap(&bitmap);  

           CBitmap   *pbmpOld=dcMem.SelectObject(&bmpBackground);  

           dc.StretchBlt(0,0,rect.Width(),rect.Height(),&dcMem,0,0,  

         bitmap.bmWidth,bitmap.bmHeight,SRCCOPY);  

    }

2、   遇到的问题及解决办法

(1)、怎样将两个对话框连接起来,在老师那得知用属性页和属性表可以实现,baidu得到用   CPropertySheet Sheet;

    Sheet.SetTitle("彩票自动选号系统");

    CPage1 page1;

    CPage2 page2;

    Sheet.AddPage(&page1);

    Sheet.AddPage(&page2);

    Sheet.DoModal();代码将CPage1和CPage2连成属性表

(2)、怎样产生随机数字,将其作为彩票号码,参考《Visual C++程序开发范例宝典》,得到用rand()函数可以实现.

(3)、OnStrat()函数中,当m_touzhu1值改变时,OnStart()中的m_touzhu1的值并没有改变,也就是若干个if语句并没有得到调用,参考《VC++_6[1].0程序设计从入门到精通》,得知得用UpdateData();函数更新m_touzhu1的数据。

(4)、彩票号码在定义时是基于CStatic类派生的类Cli1004220327中的变量,而在OnTimer()函数中产生的随机数是int 型,如何把int型转换成另外一种类型在静态文本框中显示出来也是我遇到的困难之一,baidu得到SetWindowText()可以将CString型显示出来,然后只需将int型转换成CString即可,还是baidu得到Format("%i",i)可以实现,然后将所得到的数据显示在静态文本的问题得到解决。

(5)、自动按钮功能的实现,这个功能在一开始和我想的有较大出入,然后在老师那得知,点击第一下自动按钮时让选票系统开始,点击第二下时才是停止,这个简单的功能花了我两三天的时间,我以为是只用点击一下就可以随机实现开始选号和结束选号,baidu得知Sleep()函数,可以实现程序延时,可这个延时是整个程序不动,并不是我想要的让OnStart()和OnStop延时调用,再重新了解了该功能键后,只用了几行代码

void CPage1::OnAuto()

{

        if(k==0)

   {

     OnStart();

    k=1;

   }

    else if(k==1)

    {

        OnStop();

        k=0;

    }

}

这个简单的函数,在k取0时,调用OnStart()函数,在k取1时,调用OnStop()函数,然后这个功能得以实现。

(6)、在类CPage2也就是对福利彩票的显示时,由于福利彩票的号码大都是大于10的,为了显示方便,需在小于10的号码前加一个0让显示美观,这个也比较容易,只需对号码讨论,分大于10和小于10两种情况。

(7)、彩票号码在显示时是很小的,而且没有颜色,还是baidu了解到OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)可以控制颜色,语句pDC->SetTextColor(RGB(0,0,255));是用来控制我们得到彩票号码的颜色。

(8)、如何控制号码的大小,和字体,m_font2.CreateFont(-24,-20,0,0,20,0,0,0,DEFAULT_CHARSET,OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,FF_ROMAN,"宋体");可以实现。

(9)、本来想设计自己的图标,但引入Icon后,将引入Icon的属性和名字与系统默认的Icon的改成一样的后,编译时出错,这个问题也没能解决。

(10)、按照题目要求,还要对福利彩票的中奖号码进行排序,但按我的算法,以我目前的能力还无法实现该功能。

3、体会得建议

   刚开始做程序时根本无从下手,感觉什么都不会,忙了两三天才知道了整个程序大概往哪个方向下手,现在把程序做完之后,感觉只要把老师上课讲的都懂了,做这个程序应该不难,很可惜,本来只有10次课,我还因为高数竞赛辅导担误了4次课,断断续续的上课,到后面根本就听不懂了,其实我是挻想把这门课学好的,我的专业是通信工程,我们专业对编程要求较高,选这门课就是想提高自己这方面的能力,把整个程序做下来,感觉也不是开始想的那么难,对很多的mfc知道还是有了一定的了解,算是入门了吧,不过以后还得努力,有空的话还得多看看C++编程这方面的书,努力提高自己的编程能力,还是那句话,师傅引进门,修行看个人,现在已经进了C++的门,以后的修行还得靠自己。

4、   参考文献

(1)《Visual C++程序开发范例宝典》

(2)《VC++_6[1].0程序设计从入门到精通》

(3)各种baidu

更多相关推荐:
《C语言程序设计》课程设计报告(小组)

东莞理工学院《C语言程序设计》课程设计题目:图书信息管理系统院系:电子工程学院专业:电子信息工程年级:20##班别:2班指导教师:##组长:##同组成员:##目录一、目的....................…

c语言课程设计报告

C语言程序设计课程设计学生姓名学号系院专业设计论文题目学生选课系统管理完成日期20xx年6月指导教师目录一实验目的二实验内容三总体设计四详细设计五运行结果六课程设计体会一实验目的1通过课程设计加深对结构化程序设...

C语言课程设计报告

河南理工大学计算机科学与技术学院课程设计报告20XX20XX学年第一学期课程名称C语言课程设计设计题目《小学算术运算测试》学生姓名学号专业班级计算机07-2班指导教师20XX年9月12日目录1.设计任务书21.…

C语言课程设计报告范例

C语言课程设计报告设计题目专业班级学号姓名任课老师时间目录一课程设计题目及所涉及知识点二课程设计思路及设计流程图三课程设计中遇到的难点及解决办法四小结五附录原程序2一课程设计题目及所涉及知识点一课程设计题目1基...

厦门理工学院11级C语言C语言程序设计课程设计报告

C语言程序设计课程设计报告20xx20xx学年第1学期题目专业班级姓名学号指导教师成绩计算机科学与技术系20xx年12月31日目录一课程设计的目的与要求1二方案实现与调试221掷骰子游戏222射击游戏323汽车...

C语言程序设计课程设计报告

C语言程序设计课程设计报告20xx20xx学年第1学期专业计算机科学与技术班级姓名学号指导教师成绩计算机科学与技术系20xx年12月31日目录一课程设计的目的与要求3二方案实现与调试321掷骰子游戏322汽车加...

c语言程序贪吃蛇课程设计报告

山东工商学院信电学院自动111班第一组贪吃蛇课程设计报告高级语言程序设计课程设计报告ExperimentDesigningreporter课程名称高级语言程序设计英文名称CProgramExperimentDe...

C语言课程设计报告书样本

海南大学三亚学院C语言程序设计课程设计贪吃蛇算法专业计算机科学与技术班级计科1001姓名杨凯文题目学号指导老师李春林目录C语言程序设计课程设计11程序要求32程序分析与设计33流程图44源程序清单45调试过程1...

C语言课程设计报告—人事管理系统

人事管理系统前言:现代计算机技术的发展为人们的学习、生活、工作提供了很大的帮助,各行各业都需要特定计算系统的运用,我们需要了解这些系统是怎么样为我们服务以及他们是怎样编辑出来的。我们需要学习C语言编程,根据课堂…

C语言课程设计报告(通讯录)

设计说明书通讯录系统起止日期20xx年01月03日至20xx年01月08日学班学成生姓名级号绩XXX指导教师签字计算机与通信学院20xx年01月08日一课题任务设计一个通讯录管理系统课题的主要任务是1对通讯录信...

C语言课程设计报告 扫雷

程序课程设计基础课程设计扫雷游戏院系计算机科学技术学院计算机科学与技术师范班级师计091设计者徐群杨松徐春辉杨雷刘安然学号3224312504指导教师黄绍义20xx年12月25日1目录1概述311研究的背景及意...

简单计算器C语言课程设计报告书

C语言课程设计报告书题目:简单计算器院系:班级:学号:姓名:一、课程设计目的1.巩固和加深C语言课程的基本知识的理解和掌握2.掌握C语言编程和程序调试的基本技能3.利用C语言进行基本的软件设计4.掌握书写程序设…

c语言程序设计课程设计报告(34篇)