콤보 상자의 선택에 따라 컨트롤의 유형을 동적으로 변경하려는 대화 상자가있는 C++ MFC 앱이 있습니다. 대화 상자 리소스는 평범한 이전 편집 컨트롤로 시작한 다음 SubclassDlgItem을 호출하여 사용자 지정 컨트롤 유형으로 변경합니다.SubclassDlgItem을 사용하여 컨트롤 유형 변경
지금까지 그렇게 좋았습니다. 이제 사용자가 화면의 다른 콤보 상자에서 선택 항목을 변경하면이 컨트롤을 다른 사용자 정의 유형으로 변경하려고합니다. 그래서, 나는 그 컨트롤에 대한 커스텀 클래스에 대한 포인터에 delete를 호출함으로써 기존 컨트롤을 파괴한다. 그런 다음 CreateEx를 호출하여 편집 컨트롤을 다시 만들고 SubclassDlgItem을 호출하여 새 사용자 정의 컨트롤을 만듭니다.
내 문제는이 깜박임이 꽤 많다는 것입니다. 저는 사용자 지정 컨트롤 맨 위에 :: CreateEx를 사용하여 편집 컨트롤을 만들었습니다. 깜박임을 제거하는 방법에 대한 아이디어, 특히 사용자가 제어 콤보 상자의 내용을 빠르게 변경하는 경우?
가 어떻게 그건 그냥 하나 개의 제어 ID와 함께 작동하도록 얻을 수있는 기존의 사용자 지정 컨트롤을 삭제하기 전에 UnsubclassDlgItem를 호출했기 때문에 ::를 CreateEx 편집 컨트롤의 중복이라고 밝혀? ID에 연결된 컨트롤을 전환하려면 Unsubclass 및 Subclass를 다시 호출해야합니까? – Tyler