91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 1.02MB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2023-08-16
  • 語(yǔ)言: 其他
  • 標(biāo)簽: API??教程??

資源簡(jiǎn)介

本教程試圖使用盡可能快和盡可能清晰的方法教你開(kāi) 始 Win32 API 開(kāi)發(fā).它是以一個(gè)整體來(lái)組織的,所以在你 提問(wèn)之前請(qǐng)從頭到尾看一遍...你的大多數(shù)問(wèn)題很可能 在文字中已被回答.每個(gè)章節(jié)以之前的章節(jié)為基礎(chǔ).我也 在附錄 A 中附上了一些常見(jiàn)的錯(cuò)誤的解決方法.如果你問(wèn) 一些在教程中已被回答的問(wèn)題的話,看起來(lái)就有點(diǎn)不聰明 了.

資源截圖

代碼片段和文件信息

#include?
#include?“resource.h“

const?char?g_szClassName[]?=?“myWindowClass“;
const?int?ID_TIMER?=?1;

const?int?BALL_MOVE_DELTA?=?2;

typedef?struct?_BALLINFO?
{
int?width;
int?height;
int?x;
int?y;

int?dx;
int?dy;
}BALLINFO;

BALLINFO?g_ballInfo;
HBITMAP?g_hbmBall?=?NULL;
HBITMAP?g_hbmMask?=?NULL;

HBITMAP?CreateBitmapMask(HBITMAP?hbmColour?COLORREF?crTransparent)
{
HDC?hdcMem?hdcMem2;
HBITMAP?hbmMask;
BITMAP?bm;

Getobject(hbmColour?sizeof(BITMAP)?&bm);
hbmMask?=?CreateBitmap(bm.bmWidth?bm.bmHeight?1?1?NULL);

hdcMem?=?CreateCompatibleDC(0);
hdcMem2?=?CreateCompatibleDC(0);

Selectobject(hdcMem?hbmColour);
Selectobject(hdcMem2?hbmMask);

SetBkColor(hdcMem?crTransparent);

BitBlt(hdcMem2?0?0?bm.bmWidth?bm.bmHeight?hdcMem?0?0?SRCCOPY);

BitBlt(hdcMem?0?0?bm.bmWidth?bm.bmHeight?hdcMem2?0?0?SRCINVERT);

DeleteDC(hdcMem);
DeleteDC(hdcMem2);

return?hbmMask;
}

void?DrawBall(HDC?hdc?RECT*?prc)
{
HDC?hdcBuffer?=?CreateCompatibleDC(hdc);
HBITMAP?hbmBuffer?=?CreateCompatibleBitmap(hdc?prc->right?prc->bottom);
HBITMAP?hbmOldBuffer?=?(HBITMAP)Selectobject(hdcBuffer?hbmBuffer);

HDC?hdcMem?=?CreateCompatibleDC(hdc);
HBITMAP?hbmOld?=?(HBITMAP)Selectobject(hdcMem?g_hbmMask);

FillRect(hdcBuffer?prc?(HBRUSH)GetStockobject(WHITE_BRUSH));

BitBlt(hdcBuffer?g_ballInfo.x?g_ballInfo.y?g_ballInfo.width?g_ballInfo.height?hdcMem?0?0?SRCAND);

Selectobject(hdcMem?g_hbmBall);
BitBlt(hdcBuffer?g_ballInfo.x?g_ballInfo.y?g_ballInfo.width?g_ballInfo.height?hdcMem?0?0?SRCPAINT);

BitBlt(hdc?0?0?prc->right?prc->bottom?hdcBuffer?0?0?SRCCOPY);

Selectobject(hdcMem?hbmOld);
DeleteDC(hdcMem);

Selectobject(hdcBuffer?hbmOldBuffer);
DeleteDC(hdcBuffer);
Deleteobject(hbmBuffer);
}

void?UpdateBall(RECT*?prc)
{
g_ballInfo.x?+=?g_ballInfo.dx;
g_ballInfo.y?+=?g_ballInfo.dy;

if(g_ballInfo.x? {
g_ballInfo.x?=?0;
g_ballInfo.dx?=?BALL_MOVE_DELTA;
}
else?if(g_ballInfo.x?+?g_ballInfo.width?>?prc->right)
{
g_ballInfo.x?=?prc->right?-?g_ballInfo.width;
g_ballInfo.dx?=?-BALL_MOVE_DELTA;
}

if(g_ballInfo.y? {
g_ballInfo.y?=?0;
g_ballInfo.dy?=?BALL_MOVE_DELTA;
}
else?if(g_ballInfo.y?+?g_ballInfo.height?>?prc->bottom)
{
g_ballInfo.y?=?prc->bottom?-?g_ballInfo.height;
g_ballInfo.dy?=?-BALL_MOVE_DELTA;
}
}

LRESULT?CALLBACK?WndProc(HWND?hwnd?UINT?msg?WPARAM?wParam?LPARAM?lParam)
{
switch(msg)
{
case?WM_CREATE:
{
UINT?ret;
BITMAP?bm;

g_hbmBall?=?LoadBitmap(GetModuleHandle(NULL)?MAKEINTRESOURCE(IDB_BALL));
if(g_hbmBall?==?NULL)
MessageBox(hwnd?“Could?not?load?IDB_BALL!“?“Error“?MB_OK?|?MB_ICONEXCLAMATION);

g_hbmMask?=?CreateBitmapMask(g_hbmBall?RGB(0?0?0));
if(g_hbmMask?==?NULL)
MessageBox(hwnd?“Could?not?create?mask!“?“Error“?MB_OK?|?MB_ICONEXCLAMATION);

Getobject(g_hbmBall?sizeof(b

?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2008-07-18?21:24??source\anim_one\
?????文件????????5287??2008-07-18?21:24??source\anim_one\anim_one.c
?????文件????????1748??2008-07-18?21:24??source\anim_one\anim_one.rc
?????文件????????6015??2008-07-18?21:24??source\anim_one\anim_one.vcproj
?????文件?????????630??2008-07-18?21:24??source\anim_one\ball.bmp
?????目錄???????????0??2008-07-18?21:24??source\anim_one\Release\
?????文件???????41472??2008-07-18?21:24??source\anim_one\Release\anim_one.exe
?????文件?????????457??2008-07-18?21:24??source\anim_one\resource.h
?????目錄???????????0??2008-07-18?21:24??source\app_four\
?????文件???????13196??2008-07-18?21:24??source\app_four\app_four.c
?????文件????????2581??2008-07-18?21:24??source\app_four\app_four.rc
?????文件????????6089??2008-07-18?21:24??source\app_four\app_four.vcproj
?????目錄???????????0??2008-07-18?21:24??source\app_four\Release\
?????文件???????43008??2008-07-18?21:24??source\app_four\Release\app_four.exe
?????文件?????????974??2008-07-18?21:24??source\app_four\resource.h
?????目錄???????????0??2008-07-18?21:24??source\app_one\
?????文件????????2400??2008-07-18?21:24??source\app_one\app_one.c
?????文件????????5469??2008-07-18?21:24??source\app_one\app_one.vcproj
?????目錄???????????0??2008-07-18?21:24??source\app_one\Release\
?????文件???????38912??2008-07-18?21:24??source\app_one\Release\app_one.exe
?????目錄???????????0??2008-07-18?21:24??source\app_three\
?????文件????????8344??2008-07-18?21:24??source\app_three\app_three.c
?????文件????????2061??2008-07-18?21:24??source\app_three\app_three.rc
?????文件????????6105??2008-07-18?21:24??source\app_three\app_three.vcproj
?????目錄???????????0??2008-07-18?21:24??source\app_three\Release\
?????文件???????40960??2008-07-18?21:24??source\app_three\Release\app_three.exe
?????文件?????????644??2008-07-18?21:24??source\app_three\resource.h
?????目錄???????????0??2008-07-18?21:24??source\app_two\
?????文件????????5526??2008-07-18?21:24??source\app_two\app_two.c
?????文件????????2061??2008-07-18?21:24??source\app_two\app_two.rc
?????文件????????5943??2008-07-18?21:24??source\app_two\app_two.vcproj
............此處省略85個(gè)文件信息

評(píng)論

共有 條評(píng)論