|
|
ddsd.dwSize = sizeof(ddsd);
ddsd.dwFlags = DDSD_CAPS | DDSD_BACKBUFFERCOUNT;
ddsd.ddsCaps.dwCaps = DDSCAPS_PRIMARYSURFACE | DDSCAPS_FLIP | DDSCAPS_COMPLEX;
ddsd.dwBackBufferCount = 1;
lpDD->CreateSurface(&ddsd, &lpDDSPrimary, NULL);
ddsd2.ddsCaps.dwCaps = DDSCAPS_BACKBUFFER;
DDSCAPS ddscaps;
ddscaps.dwCaps = DDSCAPS_BACKBUFFER;
lpDDSPrimary->GetAttachedSurface(&ddscaps, &lpDDSBack);
LPCSTR szStr;
szStr = "哈哈哈哈哈哈哈哈哈哈哈哈哈";
HDC hdc;
lpDDSPrimary->GetDC(&hdc);
SetBkColor(hdc, RGB(0, 0, 0));
SetTextColor(hdc, RGB(255, 255, 255));
TextOut(hdc, 100, 100, " rimary", 7);
lpDDSPrimary->ReleaseDC(hdc);
lpDDSBack->GetDC(&hdc);
SetBkColor(hdc, RGB(0, 0, 0));
SetTextColor(hdc, RGB(255, 255, 255));
TextOut(hdc, 100, 100, szStr, lstrlen(szStr));
LineTo(hdc, 200, 220);
lpDDSBack->ReleaseDC(hdc);
lpDDSPrimary->Flip(NULL, 0);
当lpDDSPrimary->Flip(NULL, 0);执行后, 后台缓存页面被翻到主页面上显示。。
如果没这句, 将不会显示任何图像。。
那我要怎么显示lpDDSPrimary里的东西呢。。。
这两个页面又是如何来不停的循环绘制,翻页呢。。 |
|