반응형
CComboBox에서 Drop List가 아닌 Dropdown형태의 UI에서 수정이 불가한 상태를 사용하여야 하는 경우가 있다.
물론 CComboBox를 상속받아 서브클래싱으로 구현할 수 도 있겠지만
귀찮귀..;; 무지무지 귀찮귀..;; ㅠㅠ
단순 UI 형태를 drop list가 아닌 dropdown 형태로 가고
edit부분만 차단하고 싶다면 아래처럼 간단하게 막을 수있다.
단 Edit 부분을 readonly로 속성을 변경하는것이므로 생상이 하얀색이 아닌 readonly로 처리하였을때의
색상(공장 장비 색깔- 회색..-_-;)으로 변경되는 부분이 있다..참고하자..
코드는 간단함
CWnd* p_Combo = GetDlgItem(IDC_COMBO33);
HWND h_wnd = ::FindWindowEx(p_Combo->m_hWnd, NULL, _T("Edit"), NULL);
if (h_wnd)
{
((CEdit*)CWnd::FromHandle((h_wnd)))->SetReadOnly(TRUE);
}
즉, ComboBox에서 Edit부분을 핸들을 찾아 ReadOnly로 변경해주는 것이다.
정보는 공유되어야 한다 쭈욱~~
반응형
'Study > MFC' 카테고리의 다른 글
대소문자 구분된 파일명을 가져오기 #대소문자 #파일명 (0) | 2019.01.29 |
---|---|
win32 환경에서 GDI+ 사용시 빌드에러 (0) | 2016.09.01 |
Mac Address 및 IP 주소 가져오기(#Mac, #IP, #MacAddress) (3) | 2016.01.29 |
SubClassing 사용시 동적으로 할당한 컨트롤 SubclassDlgItem Assert문제 (0) | 2015.12.28 |
CTreeCtrl 모든 노드 펼치기 Expand all items (0) | 2015.12.24 |
댓글