확인란과 편집 컨트롤이 있습니다. 확인란이 선택되지 않은 경우 편집 컨트롤을 사용하지 않도록 설정하고 확인란을 선택하면 컨트롤 편집을 사용하려고합니다.체크 상자 컨트롤 (MFC)의 도움으로 편집 상자 활성화/비활성화
확인란을 선택/선택 취소하면 OnBnClickedCheck1이 호출됩니다. m_CHECK1_VARIABLE은 확인란이 선택되어 있는지 여부를 알려줍니다. If-else 부분은 올바르게 실행되지만 m_TEXT1_CONTROL.EnableWindow (FALSE/TRUE)는 작동하지 않습니다.
다음은 코드입니다.
void CPreparationDlg::OnBnClickedCheck1()
{
UpdateData(TRUE);
if (m_CHECK1_VARIABLE)
{
m_TEXT1_CONTROL.EnableWindow(TRUE);
}
else if (m_CHECK1_VARIABLE)
{
m_TEXT1_CONTROL.EnableWindow(FALSE);
}
}
2 가지 경우가 있습니다.
- 대화 상자가 열릴 때 기본적으로 편집 상자가 비활성화됩니다.
대화 상자 속성에서 '사용 안 함'동작을 '거짓'으로 설정 한 경우 기본적으로 편집 상자가 활성화되어있는 경우 편집 작업 중에는 편집 상자가 활성화 된 상태로 유지됩니다. (확인란의 선택 및 선택을 취소하십시오)
- 대화 상자가 열릴 때 기본적으로 편집 상자가 활성화됩니다. 나는 기본적으로 편집 상자를 사용하지 않으면
은 편집 박스가 체크 상자의 '확인' '첫 번째'활성화된다 (I '는 진정한'하는 대화 속성에서 '사용 안 함'동작을 설정) 만 유지 나머지 작업 전체에서 활성화됩니다. (체크 박스에서 체크 및 체크 해제).
내가 여기에없는 것은 무엇입니까?
디버거로 코드를 실행하면 도움이되었습니다. –