Desktop App/Win API

[20130326] API강의

Jade Choe 2013. 3. 26. 10:38
SMALL

윈도우 프로그래밍 처리 과정

  WndClass 정의

RegisterClass

CreateWindow

ShowWindow

메세지 루프

  윈도우 특성을 정의

윈도우 클래스 정의

메모리에 윈도우 저장

윈도우를 화면에 표시

사용자의 메세지 처리

 ▶ 기본 윈도우 배경색 사용하기

1) GetStockObject()

winclass.hbrBackground = GetStockObject(WHITE_BRUSH);

WHITE, GREY, BLACK 등 윈도우에서 기본적으로 제공하는 브러쉬만 사용 가능함.

 ▶ 브러시 만들어서 사용하기

 1) CreateSolidBrush()

winclass.hbrBackground = CreaeSolidBrush(RGB(0,0,255))

2) CreateHatchBrush()

winclass.hbrBackground = CreateHatchBrush(HS_DIAGCROSS, RGB(255,0,0))

 

HatchBrush의 종류 (클릭시 이미지 열림)

 

 

 값

모양 
 HS_BDIAGONAL   좌하향 줄무늬
 HS_CROSS   바둑판 모양
 HS_DIAGCROSS   좌하향 및 우하향 줄무늬
 HS_FDIAGONAL

  우하향 줄무늬

 HS_HORIZONTAL   수평선
 HS_VERTICAL   수직선

 

 

 

 

          TIP! : RGB Color = Red(0~255), Green(0~255), Blue(0~255)

           ex) RGB(255,255,255) = BLACK, RGB(255,255,0) = YELLOW,

                  RGB(255,0,255) = HOT PINK, RGB(0,0,255) = BLUE

 
   

 

 

  커서 모양 바꾸기

 > winclass.hCursor=LoadCursor(NULL,IDC_ARROW);

 

   모양
 IDC_ARROW  화살표 모양
 IDC_CROSS  십자 모양
 IDC_IBEAM  I자 모양
 IDC_NO  원 안에 빗금이 쳐진 모양

 IDC_WAIT

 모래시계 모양

 

 

   아이콘 바꾸기

 > winclass.hIcon=LoadIcon(NULL,IDI_APPLICATION);

 

 값 

 모양 

 IDI_APPLICATION 

 기본 아이콘 모양 

 IDI_ASTERISK

 원 안에 느낌표 모양 

 IDI_ERROR 

 원 안에 십자 모양 

 IDI_EXCLAMATION 

 세모 안에 느낌표 모양 

 IDI_QUESTION 

 물음표 모양 

 

 ▶ 타이틀 이름

 

 ▶ dwStyle

WS_OVERLAPPED

 : 디폴트 윈도우

 : 타이틀 바와 크기 조절이 안 되는 경계선

 : 아무런 스타일도 주지 않으면 이 스타일이 적용됨.

WS_VISIBLE

 : 윈도우를 만들자마자 화면에 출력한다.

WS_CAPTION

 : 타이틀 바를 가진 윈도우

WS_VSCROLL

 : 수직 스크롤 바를 가진 윈도우

WS_HSCROLL

 : 수평 스크롤 바를 가진 윈도우

WS_SYSMENU

 : 수평 스크롤 바를 가진 윈도우

WS_THICKFRAME

 : 크기 조정이 가능한 두꺼운 경계선을 가짐.

WS_MINIMIZEBOX

 : 최소화 버튼

WS_MAXIMIZEBOX

 : 최대화 버튼

WS_OVERLAPPEDWINDOW

 : 위 옵션을 한번에 모두 출력.

BIG