IT_Programming 1309

릴리즈 모드에서 에러가 발생할 때 / 여러 줄을 한 줄씩 차례로 읽는 방법

">< 릴리즈 모드에서 에러가 발생하는 경우 > 디버그 모드로 프로그램을 작성해 컴파일한 후 실행하면 제대로 실행되는데, 릴리즈 모드로 컴파일한 후 실행하면 프로그램이 시작하기도 전에 죽어 버립니다. 디버그 모드에서는 결과값이 정상으로 나오는데, 릴리즈 모드에서 이런 현상이 발생하는 ..

float형을 int로 빠르게 cast 하는 방법 / 문자열에서 코드종류 알아내기

"><float형을 int로 빠르게 cast 하는 방법> 이건 보통 게임제작할때 많이 쓰이는 기법인데, 간단하면서도 빠른속도를 내주는 방법입니다. 보통 float형을 int형으로 cast할때 (int)로 cast하는데요... 이렇게 하는 것 보다는 다음과 같이 해주면 훨씬 빠르게 됩니다. num이란 float형 변수가 있을때 *(int *)# 라..

2개의 툴바를 한줄에 / 현재 디렉토리의 정보를 알아내는 법

"><2개의 툴바를 한줄에> MFC로 2개의 툴바를 만들었습니다. 그런데 이 툴바가 한줄씩 따로따로 놓이는군요. 물론 특별히 문제가 되는 것은 아니지만 개인적으로는 툴바를 모두 한줄에 놓고 싶습니다. 나름대로 문서를 찾아보기도 했지만 뾰족한 방법이 없군요. 가령 다음과 같은 코드에서 툴바를 한..

윈도우 접기 / 상태바에 그림 출력 / 시스템 강제로 다운시키기

"><윈도우 접기> 다이얼로그 베이스에서 보여줘야 할 항목이 많을 때, 약간 지저분해 보이는 경향이 있는데, 단추를 하나 달아서, 안쓰는 항목은 접어 놓고 보면, 상당히 프로그램을 깔끔하게 할 수 있더군요.... 그전에 하셔야 할 작업은 다음과 같습니다. 1) 잘 안쓰이는 항목들은 Static Box를 하나 생..

객체에 툴팁달기 / 하드에서 특정파일찾기 / 단 한개의 프로그램만 실행

"><객체에 툴팁달기> 우선 툴팁을 달기 위해, 툴팁을 알아서 처리해 주는 CToolTipCtrl이라는 클래스로 객체를 하나 만듭니다. 즉, 다이얼로그의 헤더 파일에서, 다이얼로그 클래스 안에 다음과 같은 변수를 만들면 되겠죠. CToolTipCtrl m_ToolTip; 그리고 다이얼로그의 OnInitDialog()에서 원하시는 버튼이나, 컨..

여러 파일 한꺼번에 열기 / 각 클래스의 포인터 얻기 / 틀이 없는 윈도우

"><여러개의 파일 한꺼번에 열기> 보통 MDI에서 파일을 열 때, 하나씩밖에 선택이 되지 않는데, 다음과 같이 OnFileOpen() 함수를 오버라이드 하면 여러개의 파일을 선택할 수 있습니다. SDI에서 이거 쓸 필요 없겠죠?? void CMultiSelApp::OnFileOpen() { // TODO: Add your command handler code here static char BASED_CODE szFilter[] = ..

캡션바가 없는 윈도우의 이동 / 예외처리란? / 다이얼로그 키값 메시지 처리

"><캡션바가 없는 윈도우의 이동> 캡션바가 없는 윈도우를 만들었습니다. 그런데 이 윈도우를 이동시켜야 하는데 방법을 잘 모르겠습니다. 다른 프로그램들은 캡션바의 위치가 아니더라도 이동이 가능하던데 이러한 프로그램들은 어떠한 방법으로 이동을 시키고 있는지 궁금합니다. 그리고 MFC에..

Create 함수와 OnCreate 함수의 차이점 / 동영상 반복 기능

"><Create 함수와 OnCreate 함수의 차이점> 책을 읽다보니 Create 함수와 OnCreate 함수의 차이점이 정확히 이해되지 않습니다. Create 함수는 윈도우를 만드는 것인데, OnCreate 함수의 구체적인 역할이 무엇인지 궁금합니다. 눈에 보이는 객체(즉, 윈도우를 가지는 객체)는 모두 Create 함수를 가지고 있습니다. ..

방패 모양 윈도우 만들기 / 투명한 윈도우를 만들려면

"><방패 모양 윈도우 만들기> 윈도우의 모양을 개성있게 만들기 위해 노턴 크래시 가드의 모양처럼 방패 모양의 윈도우를 만들려고 합니다. SetWindowRgn() 함수를 사용하라고 하던데 이 함수는 CreateEllipsRgn() 등의 함수를 이용해 영역을 만들어야 하더군요. 하지만 이런 영역을 만드는 함수가 만들 수 ..

도큐먼트와 멀티 뷰간의 통신 / 멤버 함수에서 다른 함수의 포인터 호출

"><도큐먼트와 멀티 뷰간의 통신> 하나의 도큐먼트와 세 개의 뷰(View)가 있는데, 이 세 개의 뷰(하나의 뷰를 세 개가 나누어 씁니다)가 하나의 도큐먼트를 공유하면서 서로의 액션(action)을 감지하게 하고 싶습니다. 예를 들면 아웃룩 익스프레스 메일(Outlook Express Mail)처럼 메시지의 헤더가 나와있는 ..