Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

codingfarm

7. 컨트롤 본문

Windows/윈도우즈 API

7. 컨트롤

scarecrow1992 2021. 12. 25. 23:12

0. 개요

컨트롤

  • 정의 : 사용자와 인터페이스를 이루는 입,출력 도구
  • 도스나 콘솔환경의 getch, scanf 등의 함수라 볼 수 있음
  • 대표적인 표준 컨트롤러들
    • 버튼, 에디트, 리스트 박스, 콤보 박스, 스크롤 바, 스태틱
  • 컨트롤은 대화상자의 차일드 윈도우로 존재한다.
  • 생성방법
    • 윈도우 : WNDCLASS 형의 구조체를 정의, RegisterClass 함수로 등록, CreateWindow 함수로 생성
    • 컨트롤 : 부팅시 OS에 의해 미리 등록되는 WNDCLASS 구조체를 사용한다. 즉, Register 할 필요없이 CreateWindow 함수를 호출하여 생성
  • 컨트롤을 위한 윈도우 클래스의 종류
윈도우 클래스 컨트롤
button 버튼, 체크, 라디오
static 텍스트
scrollbar 스크롤 바
edit 에디트
listbox 리스트 박스
combobox 콤보 박스

 

 

컨트롤의 표준 컨트롤 6가지에, 이외에 수많은 컨트롤들이 존재한다. 이들 하나하나의 기능과 역할, 사용법을 모두다 암기할수는 없아며, 필요에 따라 적절하게 레퍼런스를 참고해야한다.

다만, 아래의 정보들을 잘 숙지한다면 컨트롤의 사용에 보다 큰 도움이 될것이다.

 

1. 컨트롤도 윈도우다

컨트롤이 윈도우로써 가지는 특징들은 아래와 같다.

  • CreateWindow, GetWindowText, SetWindowText, MoveWindow 등 윈도우 함수 사용가능
  • 화면상의 사각영역을 차지
  • 스스로 메시지를 처리할 능력이 있음
    • 마우스 및 키보드의 입력을 자체적으로 처리
    • WM_PAINT 메시지를 통한 자가 복구
    • 부모 윈도우에서 온 메시지 처리(ex : BM_SETCHECK...)

 

컨트롤이 일반 윈도우와 다른점

  • 타이틀바가 없어서 사용자가 직접 위치 변환 불가능

 

 

2. 메시지와 스타일

컨트롤은 각자 자신만의 스타일을 가지며, CreateWindow 함수의 3번째 매개변수로 설정 가능하다.

컨트롤은 자신의 부모 윈도우에 자신의 변화에 대해 통보하기 위한 통지 메시지를 보낼 수 있으며, 사용자의 입력 및 자기 자신에 대해 내려진 명령을 메시지로도 받을 수 있다.

 

'Windows > 윈도우즈 API' 카테고리의 다른 글

7-2. 컨트롤 - 체크박스 버튼  (0) 2021.12.26
7-1. 컨트롤 - 버튼  (0) 2021.12.26
6. 그래픽 - 폰트  (0) 2021.12.25
6. 그래픽 - 비트맵  (0) 2021.05.05
6. 그래픽 - 그리기 모드  (0) 2021.05.05
Comments