SDK一個簡單的GDI程序(就是畫圖)

/**********************************
*gdi.cpp最簡單的GDI程序
***********************************/
/*頭文件*/
#include<windows.h>
#pragma comment(lib,"Gdi32.lib")
/*函數聲明*/
VOID GdiOut(HDC hdc);

//WinMain
int WINAPI WinMain(HINSTANCE hinstance,
   HINSTANCE hpPrevInstance,
   LPSTR lpCmdLine,
   int nCmdShow
   )
{
 HDC hdc = GetDC(NULL);
 GdiOut(hdc);
 ReleaseDC(NULL,hdc);
 return 0;
}
/***********************************
*VOID GdiOut(HDC hdc)
*功能:演示GDI基本功能的使用
*參數:HDC hdc,用於顯示所繪製的圖像
***********************************/
VOID GdiOut(HDC hdc)
{
 HPEN hpen,hpenOld;
 HBRUSH hbrush,hbrushOld;
 //初始化的顏色
 BYTE bRed = 0;
 BYTE bGreen = 0;
 BYTE bBlue = 0;
 //畫筆的顏色——正黑
 COLORREF cPen = RGB(bRed,bGreen,bBlue);
 //從 COLORREF 類型拆解顏色,設置畫筆刷的顏色,這裏爲紫偏藍
    COLORREF cBrush = RGB(233,GetGValue(cPen),255);
 //創建畫筆
 hpen = CreatePen(PS_SOLID,10,cPen);
 //創建畫筆刷
 hbrush = CreateSolidBrush(cBrush);
 //爲DC選擇畫筆和畫筆刷
 //WINGDIAPI HGDIOBJ WINAPI SelectObject(IN HDC, IN HGDIOBJ);
 hpenOld = (struct HPEN__ *)SelectObject(hdc,hpen);
 hbrushOld = (struct HBRUSH__ *)SelectObject(hdc,hbrush);
 //繪製線條
 LineTo(hdc,500,500);
 //使用初始的畫筆
    SelectObject(hdc,hpenOld);
 //繪製矩形
 Rectangle(hdc, 200, 20, 500, 500);
 //釋放資源
 DeleteObject(hpen);
 SelectObject(hdc,hbrush);
 DeleteObject(hbrush);
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章