소연의_개발일지
article thumbnail
[C++] 여러 조건 변경하기, Cpen 색 변경, define
개발공부/C++ 2023. 9. 19. 20:26

참고 링크: https://www.youtube.com/watch?v=e6ivB-FQo_k&list=PLlIX4lkC1JdMx-vfK8I-J3-L-GL7TbMf9&index=11&pp=iAQB 초기값 어둡게 하기 변경한 부분 0으로 변경 memset(fm, 0, nWidth * nHeight); 밝기 부분 255로 나눠주기 // 점찍기 for (int k = 0; k < 100; k++) { int x = rand() % nWidth; int y = rand() % nHeight; fm[y * nPitch + x] = rand()%0xff; // 각각의 밝기에 대해서 255(0xff)로 나눠준다. } 좌표의 픽셀 값이 0이 아닐 경우로 바꿔주기 if (fm[j * nPitch + i] != 0) // 찍..

article thumbnail
[C++] MFC 다른 윈도우로 포인트 복제하기
개발공부/C++ 2023. 9. 18. 21:19

이미지 오버레이로 그림 그리기 메모리 릭 제거하기 메모리 릭을 막기 위해 새로 생성한 m_pDlgImgResult 에 대해서도 생성 후 삭제를 해 준다. 안전하게 존재하는지 if문을 걸어 작성해 준다. // 메모리 릭을 막기 위해 생성된 void CgPrjDlg::OnDestroy() { CDialogEx::OnDestroy(); if(m_pDlgImage) delete m_pDlgImage; if(m_pDlgImgResult) delete m_pDlgImgResult; } 타원 그리기 자식 다이얼로그에 타원을 그리는 코드를 만들어 볼 것이다. 먼저 헤더 폴더에 함수를 drawData를 정의해 주고 선언만 해 줬으니 cpp 파일에서 정의를 해 준다. CDlgImage 클래스 안에 있어야 하니 CDlgIm..

article thumbnail
[C++] MFC 듀얼이미지 다이얼로그
개발공부/C++ 2023. 9. 18. 20:09

참고 링크: https://youtu.be/EoXP_PH0xzA?list=PLlIX4lkC1JdMx-vfK8I-J3-L-GL7TbMf9 github에서 중간단계 파일 받기 위 영상 출처) github에서 gLim-main/mfcExam 검색 후 다운받기 새 다이얼로그 이미지 만들기 헤더 이동 단축키 Ctrl + O + K DlgImage.h 파일에서 이미지 변수를 만들어 준다. CImage m_Image; // 이미지 변수를 만든 것 그리고 변수만 선언을 해준것이기 때문에 cpp 파일에서 실체를 만들어줘야 한다. ctrl + K + O 로 다시 cpp 파일로 돌아가서 initial dialog를 생성해 준다. 다이얼로그가 생성될 때는 항상 initial dialog를 콜(호출)하기 때문에 이 부분이 선행..

article thumbnail
[C++] MFC 모달리스 다이얼로그 생성하기
개발공부/C++ 2023. 9. 18. 17:16

공부 영상 출처: https://youtu.be/Rwu9BI6Jizs?list=PLlIX4lkC1JdMx-vfK8I-J3-L-GL7TbMf9 영상에 있는 소스코드를 다운받아 프로젝트를 현재 깃허브 프로젝트 하단에 넣었다. 모달리스 다이얼로그 추가하기 클래스 마법사 단축키 ctrl + shift + X 클래스 마법사 단축키 [ctrl + shift + X] 혹은 [프로젝트] → [클래스 마법사] 를 클릭하여 클래스 마법사로 들어간다. [클래스 추가] - [MFC 클래스]를 눌러 클래스를 추가해 준다. 클래스는 다이얼로그 형태로 띄울 것이니 CDialogEx로 선택, 클래스 이름은 CDlgImage로 작성해 주었다. [확인]을 눌러 클래스를 생성한다. 리소스 뷰에 IDD_DLGIMAGE로 생성된 항목이 존재..

article thumbnail
[C++] MFC Bitmap Image로 버튼 만들기, 클릭시 이미지 전환
개발공부/C++ 2023. 9. 17. 21:32

프로젝트 이름은 mfcBitmapBtn으로 생성했다. 그림 리소스 추가 방법 1. 프로젝트 - 우클릭 - [리소스 추가]를 클릭한다. 2. 왼쪽에서 [Bitmap]을 클릭한 뒤 [새로 만들기]를 누른다. 3. 우측 하단 속성 탭에서 이름과 파일 이름을 변경해 준다. 같은 파일을 복사 - 붙여넣기 해서 Off 파일도 만들어 줬다. 저장된 파일을 확인해 보자. 상단의 [빌드] → [솔루션 빌드] 버튼을 누른 후 프로젝트 리소스 파일에 들어가면 경로상에서 리소스 파일이 이름대로 저장된 모습을 확인할 수 있다. 버튼 이미지 다운로드 이미지 출처 https://www.figma.com/community/file/1027548517256824848 Toggle Buttons 3D | Figma Community F..

article thumbnail
[C++] MFC CImage 이미지 생성, 저장, 로드, 움직이는 사각형 만들기
개발공부/C++ 2023. 9. 17. 15:56

단축키 ctrl + K + O → 헤더 파일로 이동 C++ 접근 지정자 C++에서 클래스나 구조체의 멤버에 대한 접근 지정자(access specifier)는 총 3가지이다: private, public, protected. 각 접근 지정자에 대한 설명은 다음과 같다. 1. private private으로 지정된 멤버는 해당 클래스 내에서만 접근이 가능하다. 외부에서 직접 접근하려고 하면 컴파일 에러가 발생한다. 기본적으로 클래스의 멤버들은 private으로 설정된다. class MyClass { private: int myPrivateVar; }; 2. public public으로 지정된 멤버는 어디서든지 접근이 가능하다. 주로 클래스의 인터페이스로 사용되는 메서드들을 public으로 지정한다. cla..

article thumbnail
[C++] MFC 버튼 생성, 에딧컨트롤 생성, 이벤트 연결, 계산기 만들기
개발공부/C++ 2023. 9. 16. 19:41

버튼 생성하기 드래그 - 앤 드롭 기능으로 버튼을 끌어와서 폼에 넣는다. 버튼 id는 중복이 불가하며 대문자로만 작성할 수 있다. (파이큐티의 객체명과 비슷한 듯) 캡션은 버튼에 작성되는 부분을 수정할 수 있다. BTN_TEST 라고 작성한 후 엔터를 치니 그에 맞게 버튼이 수정됨을 확인할 수 있다. 버튼 이벤트 생성하기 버튼에 클릭 이벤트를 설정하는 방법은 두 가지가 있다. 1. 버튼을 더블클릭해서 바로 더블클릭했을 때 코드로 이동한다. 2. 버튼을 우클릭 - [이벤트 처리 추가] 클릭 - 해당하는 설정값을 클릭한다. 이벤트처리기에서는 어떤 클래스에서 동작할 것인지, 버튼에 대한 이벤트 발생 유형은 어떻게 할 것인지(클릭, 더블클릭, 버튼에 FOCUS,,,)를 설정할 수 있다. 클릭을 의미하는 [BN_..

article thumbnail
[C++] MFC 콘솔창 띄우기, 특정 변수의 값 콘솔창 출력
개발공부/C++ 2023. 9. 16. 16:43

콘솔창 띄우기 디버그 헤더 파일에 #pragma comment(linker, "/entry:WinMainCRTStartup /subsystem:console") 을 작성해 주면 된다. 이렇게 작성해 주자 #ifdef _DEBUG #define new DEBUG_NEW #pragma comment(linker, "/entry:WinMainCRTStartup /subsystem:console") #endif /Debuf나 Release모드 상관없이 콘솔을 실행하고 싶으면 #ifdef, #endif 지우고 #pragma ~ 만 써주면 된다. 특정 변수의 값을 콘솔창에 출력 아래와 같이 함수 위에 추가해 준다. 파일 선언부에 작성해 줘도 됨 #include //cout으로 출력하기 위해 적용예시 #include..

article thumbnail
[C++] MFC 개발환경 설정하기
개발공부/C++ 2023. 9. 15. 17:24

개발환경 설정 C++ 로 새 프로젝트 만들기를 해서 mfc를 검색했는데 아무것도 나오지 않았다... 추가 도구 및 설치를 클릭하여 설치환경으로 들어간다. 왼쪽의 [C++을 사용한 데스크톱 개발] 을 클릭하고, 우측의 설치 세부 정보에서 MFC가 있는 체크박스를 클릭하여 하단의 [수정] 버튼을 눌러 설치해 준다. 다시 Visual studio를 열어서 [새 프로젝트 만들기] 버튼을 클릭하니 MFC앱 새로만들기가 나온다. [MFC 앱] 을 클릭하고 → [다음]을 눌러 프로젝트 구성으로 이동한다. 프로젝트 이름을 작성하고 위치를 설정한다. 그 다음 애플리케이션 종류 옵션을 설정한다. 어플리케이션 종류에서 단일문서, 여러문서, 대화상자 기반등이 있는데 가장 편한 [대화 상자 기반]을 선택한다. [마침]을 클릭하..