OFFICE/프로그램 54

Mil설치시 컴파일시에 LINK : fatal error LNK1104: cannot open...

컴파일 할때 mil library를 찻지 못해서 나타나는 오류이다. Tools> options > Directories탭에서 library디렉토리를 추가한다. 일반적인 경우는 c:\프로그램파일\매트록스 \ 밀\ 라이브러리\winnt\msc\dll 에 있다. include 파일도 같다. c:\프로그램파일 \매트록스\밀\인클루드 혹시 이미 만들어진 소스에서 에러가 날 경우. workspace에 view 에 있는 *.lib파일을 삭제하고 다시 컴파일을 해야한다. 또한 프로젝트 마다 링크 설정을 해 줘야한다. 프로젝트 -> 세팅 -> 링크 -> 오브젝트/라이브러리 모듈 : mil.lib 를 추가해야한다.

OFFICE/프로그램 2011.07.12

Dialog 생성 방법에 대해

대화상자에는 2가지 방식이 있다. Modal 형과 Modaless 형이다. 모달형은 그 대화상자가 닫히기 전에는 다른 작업을 할 수 없는 상태이다. 모달리스 형은 그 대화상자가 떠 있어도, 사용이 가능하다. Modal형 대화상자 만드는 방법. Mydlg dlg; dlg.Domodal(); // 이렇게 하면 대화상자는 생성된다. -> 닫을때는 EndDialog 함수를 사용한다. Modaless형 대화상자 만드는 방법 모달리스 형은 일반 윈도우와 같은 형태로, Create 형으로 만들어 준다. 객체 생성도 주소값을 받아서 사용한다. Mydlg *dlg; dlg = NULL; if( dlg != NULL ) { dlg->SetFocus(); // 이미 대화상자가 열려있을 경우는 포커스를 받아온다 } else{..

OFFICE/프로그램 2011.07.07

마우스 캡쳐할때 중요한 점

마우스를 캡쳐할 시에 주의 할 점. SetCapture(); // 마우스를 캡쳐를 핟나. ::ReleaseCapture(); // 마우스 캡쳐를 해제한다. GetCapture(); // 현재 어느 윈도우가 마우스를 캡쳐중인지 확인한다. ::GetCursorPos(&point); // 현재의 포인트를 받아서CPoint ptClient= point;ScreenToClient(&ptClient); // 클라이언트 좌표로 변환한다. LButtonDown 이벤트시에 그 포인트를 가지고, 도형을 그리거나 할시에 CClientDC dc(this) ; dc.SetMapMode(MM_LOWMETRIC); // 매핑모드를 변경한다. CPoint pt = point // 좌표를 가져온다. dc.DCtoLP(&pt); // ..

OFFICE/프로그램 2011.07.06

메뉴 보이거나 사라지거나

메뉴 사라지게 할때 SetMenu(NULL); if(m_wndToolBar.IsFloating() == TRUE) m_wndToolBar.GetDockingFrame()->ShowWindow(SW_HIDE); else m_wndToolBar.ShowWindow(SW_HIDE); 메뉴 보이도록 할 경우 SetMenu( CMenu::FromHandle(m_hMenuDefault) ); if(m_wndToolBar.IsFloating() == TRUE) m_wndToolBar.GetDockingFrame()->ShowWindow(SW_SHOW); else m_wndToolBar.ShowWindow(SW_SHOW); SetMenu(NULL) 을 하면 메뉴가 사라진다. m_hMenuDefault는 CFrameWn..

OFFICE/프로그램 2011.07.06

윈도우 힙 || CRT 힙

윈도우 힙 : 윈도우 힙은 모든 윈도우 응용프로그램이 공유하는 큰 메모리 공간으로, 주로 큰 메모리 블록을 할당 받고자 할때 사용합니다. CRT힙 : 윈도우 힙과는 별도로, 프로그램마다 독립적으로 존재하는 힙. 각각의 프로세스는 윈도우 힙의 일부를 할당 받아 CRT힙으로 사용합니다. CRT힙은 적은 양의 메모리 할당 요청에 대해 최적화 되어서 적은양의 메모리가 필요할때 CRT힙을 사용하는 것이 좋다. C/C++ 언어의 표준 라이브러리 함수인 malloc 함수나 new 연산자를 사용한다. 초기에 64kb의 메모리 공간을 차지하며, 이 공간을 다 쓰게되면 메모리 공간을 두배씩 늘려갑니다. 동작은 malloc 보다 new 연산자가 빠르게 동작한다.

OFFICE/프로그램 2011.07.06