리치에디터컨트롤 2.0 사용하기 DarkKaiser, 2007년 7월 9일2023년 9월 6일 리치에디터 1.0 뷰를 상속한 뷰 클래스에서 리치에디터 2.0을 사용하고자 할 경우에는 아래와 같이 작업한다. /* H 파일 */ HINSTANCE m_hinstRichEdit2; /* CPP 파일 */ CRichEditSampleView::CRichEditSampleView() { m_hinstRichEdit2 = LoadLibraryA("RICHED20.DLL"); } CRichEditSampleView::~CRichEditSampleView() { if(m_hinstRichEdit2 != NULL) FreeLibrary(m_hinstRichEdit2); } BOOL CRichEditSampleView::PreCreateWindow(CREATESTRUCT& cs) { if(m_hinstRichEdit2) { #ifdef UNICODE m_strClass = "RichEdit20W"; #else m_strClass = "RichEdit20A"; #endif /* return CRichEditView::PreCreateWindow(cs); */ if(!CCtrlView::PreCreateWindow(cs)) return FALSE; cs.lpszName = _T(""); cs.cx = cs.cy = 100; /* necessary to avoid bug with ES_SELECTIONBAR and zero for cx and cy */ cs.style |= WS_CLIPSIBLINGS; return TRUE; } return CRichEditView::PreCreateWindow(cs); } void CRichEditSampleView::OnDestroy() { CRichEditView::OnDestroy(); COleClientItem* pActiveItem = GetDocument()->GetInPlaceActiveItem(this); if (pActiveItem != NULL && pActiveItem->GetActiveView() == this) { pActiveItem->Deactivate(); ASSERT(GetDocument()->GetInPlaceActiveItem(this) == NULL); } } C/C++/VC++ RichEditCtrl리치에디트컨트롤