비트맵 출력 > WINAPI TIP

본문 바로가기

사이트 내 전체검색

뒤로가기 WINAPI TIP

비트맵 출력

페이지 정보

작성자 이즈 작성일 07-01-06 08:14 조회 850 댓글 0

본문

리소스 비트맵 파일 있어야됨



#include <windows.h>
#include "resource.h"


  LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
  HINSTANCE hInstance;
  LPSTR lpszClass="프로그램";
  // 비트맵 변수
  HBITMAP hBitmap;
  int APIENTRY WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance ,LPSTR lpszCmdParam,int nCmdShow )
  {

  // 비트맵 불러오기 (리소스 비트맵) 
  hBitmap = LoadBitmap(hInstance, MAKEINTRESOURCE(IDB_BITMAP1));

  HWND hWnd;
  MSG msg;
  WNDCLASS WndClass;   

  WndClass.cbClsExtra=0;
  WndClass.cbWndExtra=0;
  WndClass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);
  WndClass.hCursor=LoadCursor(NULL,IDC_ARROW);
  WndClass.hIcon=LoadIcon(NULL,IDI_APPLICATION);
  WndClass.hInstance=hInstance;
  WndClass.lpfnWndProc=(WNDPROC)WndProc;
  WndClass.lpszClassName=lpszClass; 
  WndClass.lpszMenuName=NULL;
  WndClass.style=CS_HREDRAW | CS_VREDRAW;
  RegisterClass(&WndClass);
 
 
  hWnd=CreateWindow(lpszClass,lpszClass,
                    WS_OVERLAPPEDWINDOW,
                    CW_USEDEFAULT,
                    CW_USEDEFAULT,
                    CW_USEDEFAULT,
                    CW_USEDEFAULT,
                    NULL,
                    NULL,
                    hInstance,
                    NULL);
    ShowWindow(hWnd,nCmdShow);
 

    while(GetMessage(&msg,0,0,0)) {
    TranslateMessage(&msg);
    DispatchMessage(&msg);
    }
    return msg.wParam;
    }

    LRESULT CALLBACK WndProc(HWND hWnd,UINT message,WPARAM wParam,LPARAM lParam)
    {
HDC hdc,memDC;
PAINTSTRUCT ps;

        switch(message)
        {
        case WM_DESTROY:
                PostQuitMessage(0);
                return 0;

case WM_PAINT:
hdc = BeginPaint(hWnd,&ps);
memDC = CreateCompatibleDC(hdc);
SelectObject(memDC,hBitmap);
// 비트맵의 크기가 정해져 있음
BitBlt(hdc, 0,0,200,200,memDC,0,0,SRCCOPY);
DeleteDC(memDC);
EndPaint(hWnd,&ps);
return 0;
        }
    return(DefWindowProc(hWnd,message,wParam,lParam));
    }

댓글목록 0

등록된 댓글이 없습니다.

전체 65건 1 페이지
게시물 검색
Copyright © www.qdata.co.kr All rights reserved.

사이트 정보

PC 버전으로 보기