模拟扑克牌

#include <stdio.h>
#include <windows.h>
//1.使用宏定义来设置扑克牌的宽度和高度
#define WIDTH   46 //每张扑克牌的宽度为46像素
#define HEIGHT  62 //每张扑克牌的高度为62像素
int main()
{
    char title[200];
    HWND hwnd;//窗口句柄,通过该句柄就能够找到位于内存中的窗口资源
    HDC hdc;  //窗口的设备环境
    HBITMAP hbmp;//位图句柄
    HDC hmemdc;  //内存中的设备环境
    int i,j;
    //2.获取控制台窗口的标题
    GetConsoleTitle(title,200);
    //3.通过标题得到该窗口的句柄
    hwnd=FindWindow(NULL,title);
    //4.获取窗口的DC
    hdc=GetDC(hwnd);
    //5.加载全部扑克牌的图片并释放DC
    hbmp=LoadImage(NULL,"7_25.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE);
    hmemdc=CreateCompatibleDC(hdc);
    //6.把图片选取到内存DC中
    SelectObject(hmemdc,hbmp);
    //7.画到窗口上
    //BitBlt(hdc,0,0,WIDTH*13,HEIGHT*5,hmemdc,0,0,SRCCOPY);
    for(j=0;j<4;++j)
    {
        for(i=0;i<13;++i)
        {
            BitBlt(hdc,i*(WIDTH+10),j*(HEIGHT+10)+10,WIDTH,HEIGHT,
            hmemdc,i*WIDTH+1,HEIGHT*j+1,SRCCOPY);
        }
    }    
    return 0;
}

 

posted @ 2017-09-04 21:01  gd_沐辰  阅读(552)  评论(0编辑  收藏  举报