본문 바로가기

컴퓨터/MFC_API32

Pie (파이) 그래프를 그려 보자 pie 그래프를 그려 보자. CDC::AngleArc 를 사용하면 아주 간편하게 그릴 수 있다. pie 그래프를 그리기 위해서는 우선 부채꼴을 그려야 할 것이다. 부채꼴을 그리기 위해서는 CDC::AngleArc 함수를 사용하면 되는데, 우선 프로그램 상에서의 좌표계를 살펴 보자. 모니터에서 0 도는 위와 같이 3시 방향이다. + 각도는 위처럼 반시계 방향으로 돌아가는 각도이다. 보통 sin 이나 cos 같은 수학함수의 파라미터는 단위가 radian 인데 AngleArc 는 (희안하게도 불편하게) degree 이다. 이 점을 주의하자. 어쨌든 위와 같다는 것을 기억하고, AngleArc 를 보면 다음과 같다. AngleArc 에서는 우선 모니터 좌표계로 중심점 (x,y) (위에서 푸른 점) 을 설정 후,.. 2013. 1. 5.
CRichEditCtrl 사용하기 CRichEditCtrl 을 MFC 내에서 사용할 때 몇 가지 고려사항에 대해 살펴 보자. (개인적으로 나중에 다시 MSDN 찾지 않기 위해 작성, ㅋ) 1. control을 손수 넣어 사용할 때 application 차원에서 호출해야 하는 함수 : AfxInitRichEdit();2. focus 를 가질 때 전체 선택이 되는 문제. 3. LineIndex 와 LineLength4. vertical scroll bar 가 보이지 않는 문제. 1. control을 손수 넣어 사용할 때 application 차원에서 호출해야 하는 함수 : AfxInitRichEdit(); View를 CRichEditView를 상속받아 사용할 때는 default code 를 실행시켜도 아무 문제 없이 rich edit con.. 2012. 5. 14.
RTF 파일과 CRichEditCtrl - 저장과 부르기 CRichEditCtrl 의 내용을 RTF 파일로 저장하거나, 혹은 RTF 파일의 내용을 CRichEditCtrl 로 불러 들이는 방법을 살펴 보자. 먼저, RTF파일의 내용을 CRichEditCtrl 로 불러 들이는 원리는 다음과 같이 도식화 할 수 있다. 즉, 파일이 있으면 그 파일을 접근할 수 있는 Stream 을 만들어 준다. 그 후 CRichEditCtrl 이 사용하는 콜백함수의 적당한 멤버들의 값 중 dwCookie 의 값에 이 스트림을 연결해 주면, CRichEditCtrl 은 다음과 같은 작업을 하면서 계속 콜백함수를 호출하다가 특정 조건이 되면 멈춘다. 1. 콜백함수는 dwCookie 로 주어진 스트림을 이용해서 파일 내용을 내부의 버퍼에 읽어 들인다. 2. 버퍼에 저장된 내용을 주어진 .. 2012. 5. 9.
더블 버퍼링(double buffering) 더블 버퍼링은 화면에 표시해야 할 내용을 미리 메모리에 모두 그려놓은 후 화면으로 한꺼번에 전송하는 방법을 말한다. 어느 프로그램이든지 더블 버퍼링이 사용되지 않는 것이 거의 없을 정도로 자주 사용되는 방법인데, 기본적인 방법과 사용 예제를 살펴 보자. Visual Studio 2010 (C++임) 으로 작성한 예제를 첨부한다. exe 파일을 실행시킨 후 파일 --> 열기를 하면 1.jpg 파일이 불린다. 그 후 더블 클릭을 하면 그림이 두 배 확대가 된다. 더블 버퍼링은 자바나 Delphi, Visual Basic 등 GUI 프로그램에는 전부 적용할 수 있다. 이 글에서는 MFC에 중점을 두고 설명한다. 다른 언어에 관해서는 글의 끝에서 살펴 본다. MFC 특유의 기술적인 부분에 의한 것은 별도로 언급.. 2011. 8. 20.