Study/MFC

ComboBox ReadOnly 처리(DropDwon). 수정불가, edit 불가

뿡뿡대마왕 2017. 3. 26. 10:08
반응형



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로 변경해주는 것이다.


정보는 공유되어야 한다 쭈욱~~


반응형