前田稔(Maeda Minoru)の超初心者のプログラム入門
ファイル名 | 説明 |
---|---|
ImageDC.cpp | 画像を描画 |
#include <windows.h> #pragma comment(lib, "user32.lib") #pragma comment(lib, "gdi32.lib") |
virtual void OnPaint(PaintEventArgs ^e) override { HDC hdc = (HDC)(e->Graphics->GetHdc().ToInt32()); ShowBMP(hdc, "c:\\data\\test\\ayu.bmp"); e->Graphics->ReleaseHdc((System::IntPtr)hdc); } |
HRESULT ShowBMP(HDC hdc, LPCSTR szBitmap) { HBITMAP hBmp; HDC hBmpDC; BITMAP bm; //ファイルからイメージをロード hBmp = (HBITMAP)::LoadImage(NULL,szBitmap,IMAGE_BITMAP,0,0, LR_LOADFROMFILE|LR_CREATEDIBSECTION); if (hBmp==NULL) return FALSE; hBmpDC= ::CreateCompatibleDC(hdc); ::SelectObject(hBmpDC,hBmp); ::GetObject(hBmp,sizeof(bm),&bm); ::BitBlt(hdc,0,0,bm.bmWidth,bm.bmHeight,hBmpDC,0,0,SRCCOPY); ::DeleteDC(hBmpDC); ::DeleteObject(hBmp); return TRUE; } |