MFC 그림판 연습


기본적으로 생성되는 MainWnd, App, ViewWnd를 제외한 클래스에 대해 설명하겠습니다.

PaintaManager View 클래스에서 너무 많은 일을 하게 되니깐 PaintManager에서 실질적인 처리를 하게됩니다 View 클래스는 어떤 일이 발생하게 되면 PaintManager의 메시지를 호출 하게됩니다. Document Paint을 관리합니다. Pen, Rect, uEllipse, uLine Paint을 상속받았습니다

기본적인 파일 저장이 가능하며 메타파일 형태로 저장하여 동작합니다.


첨부파일 있음.


Picture.zip


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

ON_UPDATE_COMMAND_UI  (0) 2016.11.30

ON_UPDATE_COMMAND_UI 매크로

Visual Studio .NET 2003

속성 창을 사용하여 사용자 인터페이스 개체를 명령 대상 개체의 명령 업데이트 처리기에 연결할 수 있습니다. 이렇게 하면 사용자 인터페이스 개체의 ID가 ON_UPDATE_COMMAND_UI 매크로에 자동으로 연결되고 업데이트를 처리할 개체에 처리기가 만들어집니다. 자세한 내용은 함수에 메시지 매핑을 참조하십시오.

예를 들어, 프로그램의 편집 메뉴에서 모두 지우기 명령을 업데이트하려면, 속성 창을 사용하여 선택한 클래스의 메시지 맵 엔트리, 클래스 선언에서 호출된 명령 업데이트 처리기 OnUpdateEditClearAll에 대한 함수 선언, 클래스 구현 파일에 있는 빈 함수 템플릿 등을 추가합니다. 함수 프로토타입은 다음과 같습니다.

afx_msg void OnUpdateEditClearAll( CCmdUI* pCmdUI );

모든 처리기와 마찬가지로 이 함수도 afx_msg 키워드를 표시합니다. 또한 모든 업데이트 처리기와 마찬가지로 이 함수도 CCmdUI 개체에 대한 포인터를 인수로 사용합니다.


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

MFC 그림판  (0) 2016.11.30

응용프로그램의 연결된 소켓이 스트림 소켓(stream socket)이고 일반 데이터보다 중요한 데이터를 전송해야 할 떄,

좀 더 중요한 데이터라는 의미에서 대역 외 데이터(OOB data, Out-of-Band Data)로 데이터를 표시 할 수 있다.

수신측에서는 일반적인 데이터 스트림 외에 논리적으로 분리된 채널을 통하여 OOB 데이터를 수신할 수 있다.


TCP에서는 OOB 데이터를 urgent data라는 방식으로 구현했다. TCP의 urgent data는 urgent data임표시하는

1bit(URG)와 TCP 세그먼트 헤더(TCP segment header)의 16bit포인터(urgent pointer)를 이용하여 수신

스트림(downstream)이 urgent data임을 표시한다. urgent data의 구현 방법 두 가지가 RFC 793와 RFC 1122에

정의되어 있다. RFC 793에서는 TCP 헤더의 urgent pointer를 뒤에 붙은 urgent data byte의 옵셋으로 정의하고

있고 RFC 1122에서는 urgent data byte 자체로 정의하고 있다.


윈속 규약에서 OOB란 용어는 TCP에서 구현된 OOB 데이터(urgent data)와 프로토콜 독립적인 OOB 데이터(protocol-independent OOB data)의

구현 둘 다를 의미한다. 데이터에 OOB 데이터가 포함되었는지 체크하는 방법으로 ioctlsocket 함수의 SIOCALTMARK

옵션을 이용한다.


윈속은 urgent data를 얻는 몇가지 방법을 제공한다. urgent data가 일반 데이터 스트림에 포함되었거나 수신 함수가 분리되어 

urgent data만 얻을 수 있다.

'Programing > WSP&WNP' 카테고리의 다른 글

TCP/IP 개념  (0) 2016.11.30

+ Recent posts