Misc/MFC2014. 7. 11. 02:46

mfc, CMFCPropertyGridProperty, CSliderCtrl


CMFCPropertyGridProperty의 float 타입을 좀더 쉽게 사용하기 위해 Slider Control을 삽입했다.




CMFCPropertyGridProperty *group = new CMFCPropertyGridProperty("Camera");

...

...

CPropGridSlider *prop = new CPropGridSlider(_T("FOVy"), _fovy, _T("Tip Message"), 10.0f, 170.0f, 160 );

group->AddSubItem( prop );


생성방법은 다음과 같다.

new CPropGridSlider( 이름 , (float) 초기값, 팁 메시지, (float)최소값, (float)최대값, (int)슬라이더 해상도 )

// '슬라이더 해상도' : 최대값 ~ 최소값의 간격


* 슬라이더가 포커스를 잃을때 가끔(?) 사라지는 현상이 있다. (value 영역을 클릭하면 다시 보이기 때문에 사용하는데 문제가 없긴 하지만..)


PropGridSlider.zip




Posted by GNUPart
Misc/MFC2014. 7. 2. 22:43

CMainFrame:CFrameWndEx 에서

클래스 위자드 (Shift+Ctrl+X) -> 명령탭 : 변경할 메뉴아이템 ID 선택

-> 메시지창에서 UPDATE_COMMAND선택

-> 처리기추가 버튼 클릭




void CMainFrame::OnUpdateGlobal(CCmdUI *pCmdUI)

{

if ( 조건 ) pCmdUI->SetText(_T("조건:True"));

else pCmdUI->SetText(_T("조건:False"));

}


Posted by GNUPart
Misc/MFC2014. 4. 18. 05:04

* SAFESEH 관련 에러 : 속성(프로젝트) > 구성속성 > 링커 > 고급 > 

"이미지에 안전한 예외 처리기 포함" -> 아니요(/SAFESEH:NO) 로 설정


* "atlthunk.lib" 관련 에러 : 속성(프로젝트) > 구성속성 > 링커 > 명령줄 >

추가 옵션(D) 칸에 /NODEFAULTLIB:"atlthunk" 추가


_WIN32_WINNT not defined. Defaulting to _WIN32_WINNT_MAXVER (see WinSDKVer.h) 경고  

  -> 해당 파일에 #include <SDKDDKVer.h> 추가 


*  error LNK2005: _DllMain@12이(가) dllmain.obj에 이미 정의되어 있습니다.

  -> 링커(Linker) > 명령줄 > 추가 옵션(D) : /FORCE:MULTIPLE 입력


* Compile 속도 
  - Multi-processor compilation
- C/C++ > 일반 > 다중 프로세서 컴파일 : 예(/MP)
- C/C++ > 코드 생성 > 최소 다시 빌드 가능 : 아니요(/Gm-)


Posted by GNUPart