Study/MFC

[MFC] Button 컨트롤 (버튼 컨트롤)

2022. 2. 17. 20:47
목차
  1. 버튼 컨트롤 생성
  2. 버튼 이벤트 사용
  3. 프로그램 실행

Button 이란 말 그대로 무언가 눌러서 상호작용을 할 수 있는 컨트롤을 말합니다.


버튼 컨트롤 생성

도구 상자에서 Button 컨트롤을 하나 만듭니다.

 

버튼 컨트롤에서 가장 많이 쓰이는 속성은 위의 4가지 입니다.

속성 (한글) 속성 (영어) 설명
가로 맞춤 Horizontal Alignment 캡션의 가로 정렬 방식
세로 맞춤 Vertical Alignment 캡션의 세로 정렬 방식
여러 줄 Multiline 개행 기호(\n)를 이용하여 여러줄의 캡션 사용
캡션 Caption 버튼에 표시되는 글자

아래의 사진을 보시면 대충 속성들이 어떤 역할을 하는지 알게 됩니다.

 


버튼 이벤트 사용

버튼에서 가장 많이 쓰이는 이벤트는 바로 클릭 이벤트 입니다.

BN_CLICKED라는 이벤트 입니다.

 

버튼 클릭 이벤트의 경우에는 버튼을 클릭하고나서 마우스를 버튼에서 떼면 발생하는 이벤트입니다.

(MouseUp 이벤트라고 생각하시면 됩니다.)

 

버튼 클릭 이벤트를 생성하는 방법은 크게 3가지 입니다.

속성에서 BN_CLICKED를 눌러서 함수를 추가하는 방법이 있으며

 

버튼을 오른쪽 클릭하여 "클래스 마법사"를 띄웁니다.

여기서 "개체 ID"에서 버튼을 찾고 "메시지"에서 BN_CLICKED를 선택하여 처리기를 추가하는 방법이 있으며

 

가장 쉬운 방법은 버튼 클릭에 한정하여

실제로 에디트 창에서 버튼을 더블클릭 하면 자동으로 이벤트 함수가 생기면서 코드 창으로 넘어가게 됩니다.

 

#pragma once


class CMFC노리터Dlg : public CDialogEx
{
public:
	// ... 생략 ...

	afx_msg void OnBnClickedButton1();  // <-- 버튼 클릭 이벤트

};

버튼 클릭 이벤트는 void형의 인자가 없는 함수입니다.

 

BEGIN_MESSAGE_MAP(CMFC노리터Dlg, CDialogEx)
	// ... 생략 ...
	ON_BN_CLICKED(IDC_BUTTON1, &CMFC노리터Dlg::OnBnClickedButton1) // 버튼 클릭 이벤트
END_MESSAGE_MAP()

메시지 맵은 "ON_BN_CLICKED"로 정의됩니다.

 

버튼을 클릭하면 메시지가 나오도록 해봅시다.

void CMFC노리터Dlg::OnBnClickedButton1()
{
	MessageBox(_T("버튼을 클릭하였습니다."), _T("경고"));
}

 


프로그램 실행

저작자표시 비영리 변경금지 (새창열림)

'Study > MFC' 카테고리의 다른 글

[MFC] Combo Box 컨트롤 (콤보 박스)  (0) 2022.03.05
[MFC] Button 컨트롤 - 색상 변경  (0) 2022.02.17
[MFC] Tab 컨트롤  (0) 2022.02.05
[MFC, ATL]레지스트리 읽기, 쓰기 (CRegKey)  (0) 2021.07.23
[MFC Active X] 글자를 출력하는 컨트롤 만들기  (0) 2021.07.22
  • 버튼 컨트롤 생성
  • 버튼 이벤트 사용
  • 프로그램 실행
'Study/MFC' 카테고리의 다른 글
  • [MFC] Combo Box 컨트롤 (콤보 박스)
  • [MFC] Button 컨트롤 - 색상 변경
  • [MFC] Tab 컨트롤
  • [MFC, ATL]레지스트리 읽기, 쓰기 (CRegKey)
Eskeptor
Eskeptor
Eskeptor
Hello World
Eskeptor
전체
오늘
어제
  • 분류 전체보기 (138)
    • Computer (5)
      • Linux (1)
      • Hardware (2)
      • Software (0)
      • Tips (1)
      • Website (0)
    • Mobile (1)
      • Application (1)
    • Study (108)
      • Android (9)
      • C언어 (45)
      • C++ (17)
      • Unity 5(유니티5) (11)
      • Qt 프로그래밍 (2)
      • MFC (12)
      • C#, Winform (12)
    • My World (24)
      • OpenPad(Android) (12)
      • 한글 패치 (1)
      • C#으로 만든 귀요미들 (5)
      • MFC로 만든 귀요미들 (6)
    • Life Goes On (0)
      • Hip Hop (0)

블로그 메뉴

  • 홈
  • 태그
  • 미디어로그
  • 위치로그
  • 방명록

공지사항

인기 글

태그

  • 포인터
  • 왕초보
  • 배열
  • 테트리스
  • C#
  • 자료구조
  • MFC
  • 강좌
  • 알고리즘
  • Android
  • 비행기
  • 자바
  • Unity
  • 기본
  • 안드로이드
  • 메모장
  • Java
  • Tetris
  • 강의
  • 프로그래밍
  • 슈팅게임
  • c++11
  • 초보
  • 만들기
  • 유니티
  • 기초
  • openpad
  • C++
  • 오픈패드
  • C언어

최근 댓글

최근 글

hELLO · Designed By 정상우.
Eskeptor
[MFC] Button 컨트롤 (버튼 컨트롤)
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.