⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 demodlg.cpp

📁 服务端: 这是一个完整的基于Wince 4.1图形图象,网络通讯(C/S)模式下的商用程序源代码包.
💻 CPP
📖 第 1 页 / 共 5 页
字号:
					break;
			case 17://从左上角到右下角展开	
				    {
				
					int n;
					if(w>=h) 
						n=w;
					else 
						n=h;
				
                    int ww,hh;
					for(int i=0;i<=n;i++)//x					
					{
							if(m_all_run_flag==false) break;
							ww=i;
							hh=i;
							if(i>=w) ww=w;
							if(i>=h) hh=h;
                            dc.BitBlt(0,0,ww+1,hh+1,&MemDC, 0,0,SRCCOPY);
							//speed
							Sleep(speed);
					}

					}
				    break;
			case 18://从右上角到左下角展开	
				    {
				
					int n;
					if(w>=h) 
						n=w;
					else 
						n=h;
				
                    int ww,hh;
					for(int i=0;i<=n;i++)//x					
					{
							if(m_all_run_flag==false) break;
							ww=i;
							hh=i;
							if(i>=w) ww=w;
							if(i>=h) hh=h;
                            dc.BitBlt(w-ww,0,ww+1,hh+1,&MemDC, w-ww,0,SRCCOPY);
							//speed
							Sleep(speed);
					}

					}
				    break;
			case 19://从左下角到右上角展开	
				    {
				
					int n;
					if(w>=h) 
						n=w;
					else 
						n=h;
				
                    int ww,hh;
					for(int i=0;i<=n;i++)//x					
					{
							if(m_all_run_flag==false) break;
							ww=i;
							hh=i;
							if(i>=w) ww=w;
							if(i>=h) hh=h;
                            dc.BitBlt(0,h-hh,ww+1,hh+1,&MemDC, 0,h-hh,SRCCOPY);
							//speed
							Sleep(speed);
					}

					}
				    break;
			case 20://从右下角到左上角展开
				    {
				
					int n;
					if(w>=h) 
						n=w;
					else 
						n=h;
				
                    int ww,hh;
					for(int i=0;i<=n;i++)//x					
					{
							if(m_all_run_flag==false) break;
							ww=i;
							hh=i;
							if(i>=w) ww=w;
							if(i>=h) hh=h;
                            dc.BitBlt(w-ww,h-hh,ww+1,hh+1,&MemDC, w-ww,h-hh,SRCCOPY);
							//speed
							Sleep(speed);
					}

					}
				    break;
			case 21://从左上角到右下角移动	
				    {
				
					int n;
					if(w>=h) 
						n=w;
					else 
						n=h;
				
                    int ww,hh;
					for(int i=0;i<=n;i++)//x					
					{
							if(m_all_run_flag==false) break;
							ww=i;
							hh=i;
							if(i>=w) ww=w;
							if(i>=h) hh=h;
                            dc.BitBlt(0,0,ww+1,hh+1,&MemDC, w-ww,h-hh,SRCCOPY);
							//speed
							Sleep(speed);
					}

					}
				    break;
			case 22://从右上角到左下角移动	
				    {
				
					int n;
					if(w>=h) 
						n=w;
					else 
						n=h;
				
                    int ww,hh;
					for(int i=0;i<=n;i++)//x					
					{
							if(m_all_run_flag==false) break;
							ww=i;
							hh=i;
							if(i>=w) ww=w;
							if(i>=h) hh=h;
                            dc.BitBlt(w-ww,0,ww+1,hh+1,&MemDC, 0,h-hh,SRCCOPY);
							//speed
							Sleep(speed);
					}

					}
				    break;
			case 23://从左下角到右上角移动	
				    {
				
					int n;
					if(w>=h) 
						n=w;
					else 
						n=h;
				
                    int ww,hh;
					for(int i=0;i<=n;i++)//x					
					{
							if(m_all_run_flag==false) break;
							ww=i;
							hh=i;
							if(i>=w) ww=w;
							if(i>=h) hh=h;
                            dc.BitBlt(0,h-hh,ww+1,hh+1,&MemDC, w-ww,0,SRCCOPY);
							//speed
							Sleep(speed);
					}

					}
				    break;
			case 24://从右下角到左上角移动
				    {
				
					int n;
					if(w>=h) 
						n=w;
					else 
						n=h;
				
                    int ww,hh;
					for(int i=0;i<=n;i++)//x					
					{
							if(m_all_run_flag==false) break;
							ww=i;
							hh=i;
							if(i>=w) ww=w;
							if(i>=h) hh=h;
                            dc.BitBlt(w-ww,h-hh,ww+1,hh+1,&MemDC, 0,0,SRCCOPY);
							//speed
							Sleep(speed);
					}

					}
				    break;
			case 25://雨滴效果
				{
                  for(int i=h-1;i>=0;i--)
				  {
					  if(m_all_run_flag==false) break;
					  for(int j=0;j<i;j++)
					  {
						  if(m_all_run_flag==false) break;
						  dc.BitBlt(0,j,w,1,&MemDC,0,i,SRCCOPY);
						  //Sleep(1);
					  }
					  Sleep(speed);
				  }

				}
				break;
		   case 26://矩形放大
				{ 
                    // clear
                   	CBrush brush;
					brush.CreateSolidBrush(RGB(0,0,0)); 
                    dc.FillRect(CRect(0,0,w,h),&brush);
					brush.DeleteObject();
                   //--------------------------------------------------------
				   int i,j;
                   j=0;
                   if(w>h)
                   {
                    for(i=0;i<w/2;i++)
                    {
                     //show
                     dc.BitBlt(0+w/2-i-1,0+h/2-j-1,(i+1)*2,(j+1)*2,&MemDC,w/2-i-1,h/2-j-1,SRCCOPY);
                                        
                     //sleep                                            
                     Sleep(speed);
                     j++;
                     if(j>=h/2-1) j=h/2-1;
                     //
                      if(m_all_run_flag==false) break;//                       
                    }
                   }
                   else
                   {
                    for(i=0;i<h/2;i++)
                    {
                     //show
					dc.BitBlt(0+w/2-j-1,0+h/2-i-1,(j+1)*2,(i+1)*2,&MemDC,w/2-j-1,h/2-i-1,SRCCOPY);
                   
                     //Sleep                      
                      Sleep(speed);
                     j++;
                     if(j>=w/2-1) j=w/2-1;
                     //
                      if(m_all_run_flag==false) break;//
                     
                    }
                   }

				}						    
				    break;
			case 27://矩形缩小
				{
                 // clear
                   	CBrush brush;
					brush.CreateSolidBrush(RGB(0,0,0)); 
                    dc.FillRect(CRect(0,0,w,h),&brush);
					brush.DeleteObject();
                  //----------------------------------------------------------
				   int i,j;
                   j=0;
                  if(w>h)
                  {
                   for(i=0;i<w/2;i++)
                    {
                     //up
                     dc.BitBlt(0+i,0+j,w-i,1,&MemDC,i,j,SRCCOPY);
                     //down
                     dc.BitBlt(0+i,0+h-j,w-i,1,&MemDC,i,h-j,SRCCOPY);
                     //left
                     dc.BitBlt(0+i,0+j,1,h-j,&MemDC,i,j,SRCCOPY);
                     //right
                     dc.BitBlt(0+w-i,0+j,1,h-j,&MemDC,w-i,j,SRCCOPY);
                     //delay time
                      
                      Sleep(speed);
                     j++;
                     if(j>=h/2) j=h/2;
                     
                     if(m_all_run_flag==false) break;//                     
                    }
                  }
                  else//m_height>m_width
                  {
                    for(i=0;i<h/2;i++)
                    {
                     //up
                     dc.BitBlt(0+j,0+i,w-j,1,&MemDC,j,i,SRCCOPY);
                     //down
                     dc.BitBlt(0+j,0+h-i,w-j,1,&MemDC,j,h-i,SRCCOPY);
                     //left
                     dc.BitBlt(0+j,0+i,1,h-i,&MemDC,j,i,SRCCOPY);
                     //right
					 dc.BitBlt(0+w-j,0+i,1,h-i,&MemDC,w-j,i,SRCCOPY);
                     //delaytime for speed
                      Sleep(speed);
                     j++;
                     if(j>=w/2) j=w/2;
                     
                     if(m_all_run_flag==false) break;//                     
                    }
                  } 
				}
				   break;
			case 28://由右至左移动出现
				{
					//save dc  bitmap==>tmpdc
					CDC tmpdc;
					tmpdc.CreateCompatibleDC(&dc);
					CBitmap b;
					b.CreateCompatibleBitmap(&dc,w,h);
                    CBitmap *ob=tmpdc.SelectObject(&b); 
					tmpdc.BitBlt(0,0,w,h,&dc,0,0,SRCCOPY); 
					//show 
                   for(int i=0;i<w;i++)
				   {
					if(m_all_run_flag==false) break;	
                     dc.BitBlt(0,0,w-i-1,h,&tmpdc,i+1,0,SRCCOPY);
					 //
					 dc.BitBlt(w-i-1,0,i,h,&MemDC,0,0,SRCCOPY); 
					 //delay time
					 Sleep(speed);
				   }
				   //RELEASE 
					 tmpdc.SelectObject(ob); 
                     b.DeleteObject(); 
                     tmpdc.DeleteDC(); 
				}
					break;
             case 29://由左至右移动出现
				{
					//save dc  bitmap==>tmpdc
					CDC tmpdc;
					tmpdc.CreateCompatibleDC(&dc);
					CBitmap b;
					b.CreateCompatibleBitmap(&dc,w,h);
                    CBitmap *ob=tmpdc.SelectObject(&b); 
					tmpdc.BitBlt(0,0,w,h,&dc,0,0,SRCCOPY); 
					//show 
                   for(int i=0;i<w;i++)
				   {
					if(m_all_run_flag==false) break;	
                     dc.BitBlt(i+1,0,w-i-1,h,&tmpdc,0,0,SRCCOPY);
					 //
					 dc.BitBlt(0,0,i+1,h,&MemDC,w-i-1,0,SRCCOPY); 
					 //delay time
					 Sleep(speed);
				   }
				   //RELEASE 
					 tmpdc.SelectObject(ob); 
                     b.DeleteObject(); 
                     tmpdc.DeleteDC(); 
				}
					break;
			 /*case 30://左压缩放大
				 {
                   
					 for(int i=0;i<w;i++)
					 {
                         if(m_all_run_flag==false) break;
						 //show
						  dc.StretchBlt(0,0,i+1,h,&MemDC,0,0,w,h,SRCCOPY); 
						  //delay time
					      Sleep(speed);
					 }
				 }
				     break;
			 case 31://右压缩放大
				 {
                     for(int i=0;i<w;i++)
					 {
                         if(m_all_run_flag==false) break;
						 //show
						  dc.StretchBlt(w-1-i,0,i+1,h,&MemDC,0,0,w,h,SRCCOPY); 
						  //delay time
					      Sleep(speed);
					 }
				 }
				     break;
			 case 32://上压缩放大
				 {
                   for(int i=0;i<h;i++)
					 {
                         if(m_all_run_flag==false) break;
						 //show
						  dc.StretchBlt(0,0,w,i+1,&MemDC,0,0,w,h,SRCCOPY); 
						  //delay time
					      Sleep(speed);
					 }
				 }
				     break;
			 case 33://下压缩放大
				 {
                   for(int i=0;i<h;i++)
					 {
                         if(m_all_run_flag==false) break;
						 //show
						  dc.StretchBlt(0,h-1-i,w,i+1,&MemDC,0,0,w,h,SRCCOPY); 
						  //delay time
					      Sleep(speed);
					 }
				 }
				     break;
			 */
			 case 30://sector merge 半扇形显示
				 {
					// clear
                    CBrush brush;
					brush.CreateSolidBrush(RGB(0,0,0)); 
                    dc.FillRect(CRect(0,0,w,h),&brush);
					brush.DeleteObject();
                    //--------------------------------------------------------------
                    //copy 横线和纵线  deasil:顺时针 逆时针 anticlockwise
					//show                      
                    dc.BitBlt(0,0+h/2,w,1,&MemDC,0,h/2,SRCCOPY);
					dc.BitBlt(0+w/2,0,1,h,&MemDC,w/2,0,SRCCOPY);
                    //delaytime
                    Sleep(speed);

                    long x,y;//,ti;
                    long i,j;
                    for(i=0;i<90;i++)
                    {
                    //1象函 //M_PI/180

                     for(j=0;j<w/2;j++)
                     {
                      x=j;
                      y=(long)(x*tan(i*M_PI/180.0));
                     dc.BitBlt(0+w/2+x,0+h/2-y,1,y,&MemDC,w/2+x,h/2-y,SRCCOPY);

                     }


					//2象函  :对称原理 换坐标

                     for(j=0;j<h/2;j++)
                     {
                      x=j;
                      y=(long)(x*tan(i*M_PI/180.0));
                      dc.BitBlt(0+w/2-y,0+h/2-x,y,1,&MemDC,w/2-y,h/2-x,SRCCOPY);

                     }


                    //3象函

                     for(j=0;j<w/2;j++)
                     {
                      x=j;
                      y=(long)(x*tan(i*M_PI/180.0));
                      dc.BitBlt(0+w/2-x,0+h/2+y,1,y,&MemDC,w/2-x,h/2+y,SRCCOPY);
					 }

                    //4象函
                   
                    for(j=0;j<h/2;j++)
                     {
                      x=j;
                      y=(long)(x*tan(i*M_PI/180.0));
                     dc.BitBlt(0+w/2+y,0+h/2+x,y,1,&MemDC,w/2+y,h/2+x,SRCCOPY);

                     }
					//delaytime
                      Sleep(speed);                                         
                     //

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -