📄 demodlg.cpp
字号:
{
CBrush brush;
brush.CreateSolidBrush(RGB(0,0,0));
//第一次
//show dc
dc.BitBlt(0,0, w,h,&MemDC,0,0,SRCCOPY);
//delay time
//Sleep(200);//200ms
SleepMS(200);
//cls->black
dc.FillRect(CRect(0,0,w,h),&brush);
//delay time
SleepMS(200);//200ms
if(m_all_run_flag==false) goto exit_l1;
//第二次
//show dc
dc.BitBlt(0,0, w,h,&MemDC,0,0,SRCCOPY);
//delay time
SleepMS(200);//200ms
//cls->black
dc.FillRect(CRect(0,0,w,h),&brush);
//delay time
SleepMS(200);//200ms
if(m_all_run_flag==false) goto exit_l1;
//第三次
//show dc
dc.BitBlt(0,0, w,h,&MemDC,0,0,SRCCOPY);
//delay time
SleepMS(200);//200ms
//cls->black
dc.FillRect(CRect(0,0,w,h),&brush);
//delay time
SleepMS(200);//200ms
if(m_all_run_flag==false) goto exit_l1;
//最后
//show dc
dc.BitBlt(0,0, w,h,&MemDC,0,0,SRCCOPY);
//
exit_l1:
brush.DeleteObject();
}
break;
case 3://由上至下移动出现
{ //save dc
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 dc
for(int i=0;i<h;i++)
{
//
if(m_all_run_flag==false) break;
dc.BitBlt(0,i+1,w,h-i-1,&tmpdc,0,0,SRCCOPY);
//
dc.BitBlt(0,0,w,i+1,&MemDC,0,h-i-1,SRCCOPY);
//delay time
SleepMS(speed);
}
//RELEASE
tmpdc.SelectObject(ob);
b.DeleteObject();
tmpdc.DeleteDC();
}
break;
case 4://由下至上移动出现
{
//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<h;i++)
{
//
if(m_all_run_flag==false) break;
dc.BitBlt(0,0,w,h-i-1,&tmpdc,0,i,SRCCOPY);
//
dc.BitBlt(0,h-i-1,w,i+1,&MemDC,0,0,SRCCOPY);
//delay time
SleepMS(speed);
}
//RELEASE
tmpdc.SelectObject(ob);
b.DeleteObject();
tmpdc.DeleteDC();
}
break;
case 5://由上至下展开出现
{
for(int i=0;i<h;i++)
{
if(m_all_run_flag==false) break;
//show
dc.BitBlt(0,i,w,1,&MemDC,0,i,SRCCOPY);
//delay time
SleepMS(speed);
}
}
break;
case 6://由下至上展开出现
{
for(int i=0;i<h;i++)
{
if(m_all_run_flag==false) break;
//show
dc.BitBlt(0,h-i-1,w,1,&MemDC,0,h-i-1,SRCCOPY);
//delay time
SleepMS(speed);
}
}
break;
case 7://由中间至上下展开出现
{
int k=h/2;
//show k
// if(h%2!=0)
dc.BitBlt(0,k,w,1,&MemDC,0,k,SRCCOPY);
//show [0]-[k-1] and [k+1],[2k]
for(int i=0;i<k;i++)
{
if(m_all_run_flag==false) break;
//up
dc.BitBlt(0,k-1-i,w,1,&MemDC,0,k-1-i,SRCCOPY);
//down
dc.BitBlt(0,k+1+i,w,1,&MemDC,0,k+1+i,SRCCOPY);
//delay time
SleepMS(speed);
}
}
break;
case 8://由上下至中间展开出现
{
int k=h/2;
//show [0]-[k-1] and [k+1],[2k]
for(int i=0;i<k;i++)
{
if(m_all_run_flag==false) break;
//up
dc.BitBlt(0,i,w,1,&MemDC,0,i,SRCCOPY);
//down
dc.BitBlt(0,h-1-i,w,1,&MemDC,0,h-1-i,SRCCOPY);
//delay time
SleepMS(speed);
}
//show k
//if(h%2!=0)
dc.BitBlt(0,k,w,1,&MemDC,0,k,SRCCOPY);
}
break;
case 9://由左至右展开出现
{
for(int i=0;i<w;i++)
{
if(m_all_run_flag==false) break;
//show
dc.BitBlt(i,0,1,h,&MemDC,i,0,SRCCOPY);
//delay time
SleepMS(speed);
}
}
break;
case 10://由右至左展开出现
{
for(int i=0;i<w;i++)
{
if(m_all_run_flag==false) break;
//show
dc.BitBlt(w-i-1,0,1,h,&MemDC,w-i-1,0,SRCCOPY);
//delay time
SleepMS(speed);
}
}
break;
case 11://由中间至左右展开出现
{
int k=w/2;
//show k
dc.BitBlt(k,0,1,h,&MemDC,k,0,SRCCOPY);
for(int i=0;i<k;i++)
{
if(m_all_run_flag==false) break;
//mid->left
dc.BitBlt(k-1-i,0,1,h,&MemDC,k-1-i,0,SRCCOPY);
//mid->right
dc.BitBlt(k+i,0,1,h,&MemDC,k+i,0,SRCCOPY);
//delay time
SleepMS(speed);
}
}
break;
case 12://由左右至中间展开出现
{
int k=w/2;
for(int i=0;i<k;i++)
{
if(m_all_run_flag==false) break;
//left->mid
dc.BitBlt(i,0,1,h,&MemDC,i,0,SRCCOPY);
//right->mid
dc.BitBlt(w-1-i,0,1,h,&MemDC,w-1-i,0,SRCCOPY);
//delay time
SleepMS(speed);
}
//show k
dc.BitBlt(k,0,1,h,&MemDC,k,0,SRCCOPY);
}
break;
case 13://百页窗竖式向右展开出现 //向右
{
//8
int k=w/8;
if(w/8!=0) k++;
for(int i=0;i<8;i++)
{
if(m_all_run_flag==false) break;
for(int j=0;j<k;j++)
{
if(m_all_run_flag==false) break;
dc.BitBlt(j*8+i,0,1,h,&MemDC, j*8+i,0,SRCCOPY);
SleepMS(speed);
}
SleepMS(speed);
}
}
break;
case 14://百页窗竖式向左展开出现 //向左
{
//8
int k=w/8;
if(w/8!=0) k++;
for(int i=0;i<8;i++)
{
if(m_all_run_flag==false) break;
for(int j=0;j<k;j++)
{
if(m_all_run_flag==false) break;
dc.BitBlt(w-1-j*8+i,0,1,h,&MemDC, w-1-j*8+i,0,SRCCOPY);
SleepMS(speed);
}
SleepMS(speed);
}
}
break;
case 15://百页窗横式向下展开出现//向下
{
//8
int k=h/8;
if(h/8!=0) k++;
for(int i=0;i<8;i++)
{
if(m_all_run_flag==false) break;
for(int j=0;j<k;j++)
{
if(m_all_run_flag==false) break;
dc.BitBlt(0,j*8+i,w,1,&MemDC, 0,j*8+i,SRCCOPY);
SleepMS(speed);
}
SleepMS(speed);
}
}
break;
case 16://百页窗横式向上展开出现//向上
{
//8
int k=h/8;
if(h/8!=0) k++;
for(int i=0;i<8;i++)
{
if(m_all_run_flag==false) break;
for(int j=0;j<k;j++)
{
if(m_all_run_flag==false) break;
dc.BitBlt(0,h-1-j*8+i,w,1,&MemDC, 0,h-1-j*8+i,SRCCOPY);
SleepMS(speed);
}
SleepMS(speed);
}
}
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
SleepMS(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
SleepMS(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
SleepMS(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
SleepMS(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
SleepMS(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
SleepMS(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
SleepMS(speed);
}
}
break;
case 24://从右下角到左上角移动
{
int n;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -