#3. 다양한 컨트롤의 종류 – Revision #1

MFC는 다양한 컨트롤을 미리 프로그래밍된 클래스 형태로 제공하여 프로그래머가 적절하게 활용할 수 있도록 제공합니다. Windows 공통 컨트롤의 종류는 아래와 같습니다. 실제 컨트롤의 모습은 MFC 완벽 가이드의 105쪽 부터 108쪽 까지 참조하세요.


1. 편집 박스 컨트롤


키보드로부터 타이핑된 내용을 입력받을 수 있는 개체입니다. 오른쪽 버튼을 누르면 복사, 붙여넣기 등 클립보드를 이용하는 특수 작업등을 할 수 있으며 특정 부분부터 드래그하기 시작하면 블록이 설정되면서 내용이 선택됩니다. 또, 단축키를 사용할 수 있으므로 마우스 대신 키보드로 빠르게 클립 보드와의 액세스를 시도할 수 있습니다.


2. 리스트 박스 컨트롤


사용자에게 선택의 기회를 주는 컨트롤 중 하나로, 조건부의 문자열을 여러개 제시하여 그 중 하나를 선택하였을 때 이벤트를 발생시켜 상황을 처리합니다. 다중 선택과 단일 선택을 프로그래밍 하는 도중에 설정하여 줄 수 있습니다.


3. 콤보 박스 컨트롤


편집 박스 + 리스트 박스의 형태라고 보시면 됩니다. 다중 상속을 받아서 약간의 편집을 했다고 볼 수 있는 컨트롤입니다. 편집 영역에서는 편집 컨트롤처럼 텍스트의 작성이 가능하면서도 드롭 다운 버튼을 클릭하면 리스트 박스가 나타나는 모양새를 드러냅니다.


4. 푸시 버튼 컨트롤


마우스로 버튼을 클릭함으로서 지정된 동작을 수행하도록 할 수 있는 컨트롤입니다.


5. 체크 버튼 컨트롤


이 컨트롤의 값은 BOOL 값입니다. 왜냐하면, 체크를 했다면 TRUE고 체크를 안했다면 FALSE임이 확실하니까요. 하지만, TRUE도 아니고 FALSE도 아닌 상태의 체크 박스가 간혹 나타날 때가 있는 데 이것은 체크 박스 컨트롤을 구현한 것이지만 다른 컨트롤의 일부일 뿐이므로 전혀 상황이 다름을 인지하셔야 합니다. (예 : Windows 9x의 프로그램 추가/제거 대화 상자의 Windows 구성 요소 목록에서.)


6. 라디오 버튼 컨트롤


라디오 버튼이라는 이름이 붙은 경위는 다름이 아니라 어떤 하나의 라디오 버튼 컨트롤을 누르면 다른 버튼들이 초기화되는 것에서의 유래입니다. 이 역시 값은 TRUE/FALSE입니다.


7. 스크롤 바 컨트롤


윈도우의 우측과 하단에 각각 붙어있는 바가 스크롤 바이고, 스크롤 바 컨트롤은 편집 박스의 수치 값을 일정 범위 안에서 편리하게 입력하기 위한 방편으로 쓰이는 컨트롤입니다.


8. 스핀 버튼 컨트롤


편집 박스 컨트롤과 붙여 연동하여 사용되는 것이 일반적인 용도입니다. 상/하 버튼에 의하여 값을 1씩 변화시키는 역할을 합니다.


9. 슬라이더 컨트롤


스크롤 바 컨트롤과 동일한 기능을 수행하나 인터페이스 면에서의 보강을 한 컨트롤이라고 보면 쉽습니다.


10. 진행 컨트롤


장시간 소요되는 작업의 진행률을 표시하여 사용자의 입장에서 초조하게 만들지 않기 위한 방편입니다. 조금 노련해지면 이 진행 컨트롤로 프로세스(1)가 살아있는지 죽었는지(2)도 확인할 수 있습니다. ^^


11. 탭 컨트롤


노트 안에 부착할 수 있는 간지 또는 파일 캐비닛의 명찰 역할을 해주는 컨트롤로 하나의 윈도우에 다수의 프레임 윈도우를 부착하거나 할 때에 유용합니다.


12. 트리 컨트롤


마치 표시하는 내용이 나무의 뿌리처럼 생겼다고 하여 붙여진 이름으로서, 굉장히 많이 활용되는 컨트롤의 일종입니다. 대표적인 예로, 탐색기의 우측 디스플레이에 뿌리 모양의 계층 구조를 나타내는 컨트롤이 바로 그것입니다.


13. 리스트 컨트롤


트리 컨트롤에서 선택한 세부 내용을 표현하는 컨트롤로 스타일이 운영 체제의 버전에 따라서 조금씩 틀립니다.



  • Windows 95, 98, NT 4.0

    • 큰 아이콘 (32 * 32 사이즈/64 * 64 사이즈 아이콘 표시)
    • 작은 아이콘 (16 * 16 사이즈 아이콘 표시)
    • 목록 보기 (16 * 16 사이즈 아이콘들의 목록)
    • 자세히 보기 (색인이 쉬운 목록 테이블로 표시)


  • Windows Me, 2000

    • 미리보기 (아이콘 대신 미리 보기가 가능한 파일의 내용을 표시)
    • 큰 아이콘 (32 * 32 사이즈/64 * 64 사이즈 아이콘 표시)
    • 작은 아이콘 (16 * 16 사이즈 아이콘 표시)
    • 목록 보기 (16 * 16 사이즈 아이콘들의 목록)
    • 자세히 보기 (색인이 쉬운 목록 테이블로 표시)


  • Windows XP, Server 2003

    • 바탕 화면에서의 큰 아이콘 스타일 (32 * 32/64 * 64 사이즈 표시)
    • 탐색 창에서의 큰 아이콘 스타일 (64 * 64 사이즈, 요약정보 표시)
    • 그룹별로 정렬/표시 (특정 항목에 의한 색인화된 그룹화 표시)
    • 미리보기 (슬라이드 쇼와 유사한 형태)

하지만 이 중에서도 기준이되는 운영체제는 Windows 9x, NT 4.0 계열입니다. 참고하세요.


– 주석 –


1. 프로세스 : 프로그램이 실행되어있는 상황을 가리키는 용어입니다. 세션이라고도 하죠. 이 상태에서, 프로그램은 CPU와 메모리의 도움을 받게 됩니다. 즉, CPU와 메모리를 잠식하게 됩니다.


2. 프로세스의 생사여부 : 시스템의 안정성 여부는 바로 수 많은 프로세스들의 생과 사에 달려있습니다. 반드시 살아있어야 하는 프로세스는, System Idle Process와 같은 시스템의 신진대사를 맡는 프로세스들이어야 하며, 반대로 반드시 소멸되어야 할 프로세스는 이미 세션이 종료되도록 명을 받았음에도 남아있는 Soul 상태의 프로세스, 크래커에 의해서 조종할 수 있는 트로이 목마 프로세스, 바이러스 프로세스와 같은 것들이 있습니다.


팁 : 시스템의 세션 생존 기간을 연장하기 위해서는 프로세스를 철저하고 신중하게 관리해야 할 필요가 있습니다.

댓글 남기기