다음을 통해 공유


CRichEditCtrl 수업

참고 항목

MFC(Microsoft Foundation Classs) 라이브러리는 계속 지원됩니다. 그러나 더 이상 기능을 추가하거나 설명서를 업데이트하지 않습니다.

Rich Edit 컨트롤의 기능을 제공합니다.

구문

class CRichEditCtrl : public CWnd

멤버

공용 생성자

속성 설명
CRichEditCtrl::CRichEditCtrl CRichEditCtrl 개체를 생성합니다.

공용 메서드

속성 설명
CRichEditCtrl::CanPaste 클립보드의 내용을 이 서식 있는 편집 컨트롤에 붙여넣을 수 있는지 여부를 결정합니다.
CRichEditCtrl::CanRedo 컨트롤의 다시 실행 큐에 작업이 있는지 여부를 결정합니다.
CRichEditCtrl::CanUndo 편집 작업을 실행 취소할 수 있는지 여부를 결정합니다.
CRichEditCtrl::CharFromPos 편집 컨트롤의 클라이언트 영역에서 지정된 지점에 가장 가까운 문자에 대한 정보를 검색합니다.
CRichEditCtrl::Clear 현재 선택 영역을 지웁니다.
CRichEditCtrl::Copy 현재 선택 영역을 클립보드에 복사합니다.
CRichEditCtrl::Create Windows 서식 있는 편집 컨트롤을 만들고 이 CRichEditCtrl 개체와 연결합니다.
CRichEditCtrl::CreateEx 지정된 확장된 Windows 스타일을 사용하여 Windows 서식 있는 편집 컨트롤을 만들고 이 CRichEditCtrl 개체와 연결합니다.
CRichEditCtrl::Cut 현재 선택 영역을 클립보드로 잘라냅니다.
CRichEditCtrl::DisplayBand CRichEditCtrl 개체의 내용 중 일부를 표시합니다.
CRichEditCtrl::EmptyUndoBuffer CRichEditCtrl 개체의 실행 취소 플래그를 다시 설정(지웁니다).
CRichEditCtrl::FindText CRichEditCtrl 개체 내에서 텍스트를 찾습니다.
CRichEditCtrl::FindWordBreak 지정한 문자 위치 앞이나 뒤의 다음 단어 나누기를 찾거나 해당 위치에 있는 문자에 대한 정보를 검색합니다.
CRichEditCtrl::FormatRange 대상 출력 디바이스에 대한 텍스트 범위의 서식을 지정합니다.
CRichEditCtrl::GetCharPos CRichEditCtrl 개체 내에서 지정된 문자의 위치를 결정합니다.
CRichEditCtrl::GetDefaultCharFormat CRichEditCtrl 개체의 현재 기본 문자 서식 특성을 검색합니다.
CRichEditCtrl::GetEventMask CRichEditCtrl 개체의 이벤트 마스크를 검색합니다.
CRichEditCtrl::GetFirstVisibleLine CRichEditCtrl 개체에서 가장 맨 위에 표시되는 줄을 결정합니다.
CRichEditCtrl::GetIRichEditOle 이 서식 있는 편집 컨트롤에 대한 인터페이스에 IRichEditOle 대한 포인터를 검색합니다.
CRichEditCtrl::GetLimitText 사용자가 이 CRichEditCtrl 개체에 입력할 수 있는 텍스트 양에 대한 제한을 가져옵니다.
CRichEditCtrl::GetLine CRichEditCtrl 개체에서 텍스트 줄을 검색합니다.
CRichEditCtrl::GetLineCount CRichEditCtrl 개체의 줄 수를 검색합니다.
CRichEditCtrl::GetModify CRichEditCtrl 개체의 내용이 마지막 저장 이후 변경되었는지 여부를 확인합니다.
CRichEditCtrl::GetOptions 서식 있는 편집 컨트롤 옵션을 검색합니다.
CRichEditCtrl::GetParaFormat CRichEditCtrl 개체의 현재 선택 영역에서 단락 서식 특성을 검색합니다.
CRichEditCtrl::GetPunctuation 서식 있는 편집 컨트롤의 현재 문장 부호 문자를 검색합니다. 이 메시지는 운영 체제의 아시아 언어 버전에서만 사용할 수 있습니다.
CRichEditCtrl::GetRect CRichEditCtrl 개체의 서식 사각형을 검색합니다.
CRichEditCtrl::GetRedoName 컨트롤의 다시 실행 큐에 있는 다음 작업의 형식(있는 경우)을 검색합니다.
CRichEditCtrl::GetSel CRichEditCtrl 개체에서 현재 선택 영역의 시작 위치와 끝 위치를 가져옵니다.
CRichEditCtrl::GetSelectionCharFormat CRichEditCtrl 개체의 현재 선택 영역에서 문자 서식 특성을 검색합니다.
CRichEditCtrl::GetSelectionType CRichEditCtrl 개체의 현재 선택 영역에서 콘텐츠 형식을 검색합니다.
CRichEditCtrl::GetSelText CRichEditCtrl 개체에서 현재 선택 영역의 텍스트를 가져옵니다.
CRichEditCtrl::GetTextLength CRichEditCtrl 개체의 텍스트 길이를 문자로 검색합니다. 종료 null 문자를 포함하지 않습니다.
CRichEditCtrl::GetTextLengthEx 서식 있는 편집 보기에서 문자 또는 바이트 수를 검색합니다. 서식 있는 편집 컨트롤에서 텍스트 길이를 결정하는 방법을 나타내는 플래그 목록을 허용합니다.
CRichEditCtrl::GetTextMode 현재 텍스트 모드를 검색하고 서식 있는 편집 컨트롤의 실행 취소 수준을 검색합니다.
CRichEditCtrl::GetTextRange 지정된 텍스트 범위를 검색합니다.
CRichEditCtrl::GetUndoName 다음 실행 취소 작업의 형식(있는 경우)을 검색합니다.
CRichEditCtrl::GetWordWrapMode 서식 있는 편집 컨트롤에 대한 현재 단어 줄 바꿈 및 단어 분리 옵션을 검색합니다. 이 메시지는 운영 체제의 아시아 언어 버전에서만 사용할 수 있습니다.
CRichEditCtrl::HideSelection 현재 선택 영역을 표시하거나 숨깁니다.
CRichEditCtrl::LimitText 사용자가 개체에 입력 CRichEditCtrl 할 수 있는 텍스트의 양을 제한합니다.
CRichEditCtrl::LineFromChar 지정된 문자가 포함된 줄을 결정합니다.
CRichEditCtrl::LineIndex CRichEditCtrl 개체에서 지정된 줄의 문자 인덱스를 검색합니다.
CRichEditCtrl::LineLength CRichEditCtrl 개체에서 지정된 줄의 길이를 검색합니다.
CRichEditCtrl::LineScroll CRichEditCtrl 개체의 텍스트를 스크롤합니다.
CRichEditCtrl::Paste 클립보드의 내용을 이 서식 있는 편집 컨트롤에 삽입합니다.
CRichEditCtrl::PasteSpecial 클립보드의 내용을 지정된 데이터 형식으로 이 서식 있는 편집 컨트롤에 삽입합니다.
CRichEditCtrl::PosFromChar 편집 컨트롤에서 지정된 문자의 클라이언트 영역 좌표를 검색합니다.
CRichEditCtrl::Redo 컨트롤의 다시 실행 큐에서 다음 작업을 다시 실행합니다.
CRichEditCtrl::ReplaceSel CRichEditCtrl 개체의 현재 선택 영역을 지정된 텍스트로 바꿉니다.
CRichEditCtrl::RequestResize CRichEditCtrl 개체가 요청 크기 조정 알림을 보내도록 합니다.
CRichEditCtrl::SetAutoURLDetect 서식 있는 편집 컨트롤에서 자동 URL 검색이 활성 상태인지를 나타냅니다.
CRichEditCtrl::SetBackgroundColor CRichEditCtrl 개체의 배경색을 설정합니다.
CRichEditCtrl::SetDefaultCharFormat CRichEditCtrl 개체의 현재 기본 문자 서식 특성을 설정합니다.
CRichEditCtrl::SetEventMask CRichEditCtrl 개체에 대한 이벤트 마스크를 설정합니다.
CRichEditCtrl::SetModify CRichEditCtrl 개체에 대한 수정 플래그를 설정하거나 지웁니다.
CRichEditCtrl::SetOLECallback 이 서식 있는 IRichEditOleCallback 편집 컨트롤에 대한 COM 개체를 설정합니다.
CRichEditCtrl::SetOptions CRichEditCtrl 개체에 대한 옵션을 설정합니다.
CRichEditCtrl::SetParaFormat CRichEditCtrl 개체의 현재 선택 영역에서 단락 서식 특성을 설정합니다.
CRichEditCtrl::SetPunctuation 서식 있는 편집 컨트롤에 대한 문장 부호 문자를 설정합니다. 이 메시지는 운영 체제의 아시아 언어 버전에서만 사용할 수 있습니다.
CRichEditCtrl::SetReadOnly CRichEditCtrl 개체에 대한 읽기 전용 옵션을 설정합니다.
CRichEditCtrl::SetRect CRichEditCtrl 개체의 서식 사각형을 설정합니다.
CRichEditCtrl::SetSel CRichEditCtrl 개체의 선택 영역을 설정합니다.
CRichEditCtrl::SetSelectionCharFormat CRichEditCtrl 개체의 현재 선택 영역에서 문자 서식 특성을 설정합니다.
CRichEditCtrl::SetTargetDevice CRichEditCtrl 개체의 대상 출력 디바이스를 설정합니다.
CRichEditCtrl::SetTextMode 서식 있는 편집 컨트롤의 텍스트 모드 또는 실행 취소 수준을 설정합니다. 컨트롤에 텍스트가 포함되어 있으면 메시지가 실패합니다.
CRichEditCtrl::SetUndoLimit 실행 취소 큐에 저장할 수 있는 최대 작업 수를 설정합니다.
CRichEditCtrl::SetWordCharFormat CRichEditCtrl 개체의 현재 단어에서 문자 서식 특성을 설정합니다.
CRichEditCtrl::SetWordWrapMode 서식 있는 편집 컨트롤에 대한 자동 줄 바꿈 및 단어 분리 옵션을 설정합니다. 이 메시지는 운영 체제의 아시아 언어 버전에서만 사용할 수 있습니다.
CRichEditCtrl::StopGroupTyping 컨트롤이 추가 입력 작업을 현재 실행 취소 작업으로 수집하는 것을 중지합니다. 컨트롤은 실행 취소 큐의 새 작업에 다음 입력 작업(있는 경우)을 저장합니다.
CRichEditCtrl::StreamIn 입력 스트림의 텍스트를 이 CRichEditCtrl 개체에 삽입합니다.
CRichEditCtrl::StreamOut CRichEditCtrl 개체의 텍스트를 출력 스트림에 저장합니다.
CRichEditCtrl::Undo 마지막 편집 작업을 반대로 바뀝니다.

설명

"서식 있는 편집 컨트롤"은 사용자가 텍스트를 입력하고 편집할 수 있는 창입니다. 텍스트는 문자 및 단락 서식을 할당할 수 있으며 포함된 OLE 개체를 포함할 수 있습니다. 서식 있는 편집 컨트롤은 텍스트 서식을 지정하기 위한 프로그래밍 인터페이스를 제공합니다. 그러나 애플리케이션은 사용자가 서식 지정 작업을 사용할 수 있도록 하는 데 필요한 모든 사용자 인터페이스 구성 요소를 구현해야 합니다.

이 Windows 공용 컨트롤(따라서 CRichEditCtrl 클래스)은 Windows 95/98 및 Windows NT 버전 3.51 이상에서 실행되는 프로그램에서만 사용할 수 있습니다. 이 클래스는 CRichEditCtrl Windows SDK 리치 편집 컨트롤의 버전 2.0 및 3.0을 지원합니다.

주의

애플리케이션이 SDI, MDI 또는 대화 상자 기반인지 여부에 관계없이 대화 상자에서 다양한 편집 컨트롤을 사용하는 경우 대화 상자가 표시되기 전에 한 번 호출 AfxInitRichEdit 해야 합니다. 이 함수를 호출하는 일반적인 위치는 프로그램의 InitInstance 멤버 함수에 있습니다. 대화 상자를 처음 표시할 때마다 호출할 필요가 없습니다. 작업AfxInitRichEdit하는 경우 호출 CRichEditView 할 필요가 없습니다.

사용에 CRichEditCtrl대한 자세한 내용은 다음을 참조하세요.

MFC 애플리케이션에서 다양한 편집 컨트롤을 사용하는 예제는 WORDPAD 샘플 애플리케이션을 참조하세요.

상속 계층 구조

CObject

CCmdTarget

CWnd

CRichEditCtrl

요구 사항

머리글:afxcmn.h

CRichEditCtrl::CanPaste

서식 있는 편집 컨트롤이 지정된 클립보드 형식을 붙여넣을 수 있는지 여부를 결정합니다.

BOOL CanPaste(UINT nFormat = 0) const;

매개 변수

nFormat
쿼리할 클립보드 데이터 형식입니다. 이 매개 변수는 미리 정의된 클립보드 형식 또는 반환된 RegisterClipboardFormat값 중 하나일 수 있습니다.

반환 값

클립보드 형식을 붙여 넣을 수 있는 경우 0이 아닌 경우 그렇지 않으면 0입니다.

설명

0 nFormat 이면 CanPaste 현재 클립보드에 있는 모든 형식을 시도합니다.

자세한 내용은 Windows SDK의 메시지 및 EM_CANPASTE 함수를 참조 RegisterClipboardFormat 하세요.

예시

// Paste the clipboard data if possible.
if (m_myRichEditCtrl.CanPaste())
{
   m_myRichEditCtrl.Paste();
}

CRichEditCtrl::CanRedo

다시 실행 큐에 작업이 포함되어 있는지 여부를 확인합니다.

BOOL CanRedo() const;

반환 값

다시 실행 큐에 작업이 포함되어 있으면 0이 아니고, 그렇지 않으면 0입니다.

설명

다시 실행 큐에서 작업의 이름을 검색하려면 .를 호출합니다 CRichEditCtrl::GetRedoName. 가장 최근의 실행 취소 작업을 다시 실행하려면 .를 호출합니다 Redo.

자세한 내용은 Windows SDK를 참조 EM_CANREDO 하세요.

CRichEditCtrl::CanUndo

마지막 편집 작업을 실행 취소할 수 있는지 여부를 결정합니다.

BOOL CanUndo() const;

반환 값

멤버 함수를 호출 Undo 하여 마지막 편집 작업을 실행 취소할 수 있으면 0이 아니고, 실행 취소할 수 없는 경우 0입니다.

설명

자세한 내용은 Windows SDK를 참조 EM_CANUNDO 하세요.

예시

// Undo the last operation, if possible.
if (m_myRichEditCtrl.CanUndo())
   m_myRichEditCtrl.Undo();

CRichEditCtrl::CharFromPos

매개 변수 pt로 지정된 지점에서 문자에 대한 정보를 검색합니다.

int CharFromPos(CPoint pt) const;

매개 변수

pt
CPoint 지정된 점의 좌표를 포함하는 개체입니다.

반환 값

지정된 지점에 가장 가까운 문자의 0부터 시작하는 문자 인덱스입니다. 지정한 점이 컨트롤의 마지막 문자를 벗어나면 반환 값은 컨트롤의 마지막 문자를 나타냅니다.

설명

이 멤버 함수는 다양한 편집 컨트롤에서 작동합니다. 편집 컨트롤에 대한 정보를 얻으려면 .를 호출합니다 CEdit::CharFromPos.

자세한 내용은 Windows SDK를 참조 EM_CHARFROMPOS 하세요.

CRichEditCtrl::Clear

서식 있는 편집 컨트롤에서 현재 선택 영역(있는 경우)을 삭제(지웁니다).

void Clear();

설명

수행된 Clear 삭제는 멤버 함수를 Undo 호출하여 실행 취소할 수 있습니다.

현재 선택 영역을 삭제하고 삭제된 내용을 클립보드에 배치하려면 멤버 함수를 Cut 호출합니다.

자세한 내용은 Windows SDK를 참조 WM_CLEAR 하세요.

예시

// Delete all of the text.
m_myRichEditCtrl.SetSel(0, -1);
m_myRichEditCtrl.Clear();

CRichEditCtrl::Copy

서식 있는 편집 컨트롤의 현재 선택 영역(있는 경우)을 클립보드에 복사합니다.

void Copy();

설명

자세한 내용은 Windows SDK를 참조 WM_COPY 하세요.

예시

// Copy all of the text to the clipboard.
m_myRichEditCtrl.SetSel(0, -1);
m_myRichEditCtrl.Copy();

CRichEditCtrl::Create

Windows 서식 있는 편집 컨트롤을 만들고 이 CRichEditCtrl 개체와 연결합니다.

virtual BOOL Create(
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID);

매개 변수

dwStyle
편집 컨트롤의 스타일을 지정합니다. 아래 설명 섹션에 나열된 창 스타일 조합을 적용하고 Windows SDK에 설명된 컨트롤 스타일을 편집합니다.

rect
편집 컨트롤의 크기와 위치를 지정합니다. 개체 또는 CRect 구조체일 RECT 수 있습니다.

pParentWnd
편집 컨트롤의 부모 창(종종 )을 CDialog지정합니다. 해서는 안 됩니다 NULL.

nID
편집 컨트롤의 ID를 지정합니다.

반환 값

초기화에 성공하면 0이 아닌 값입니다. 그렇지 않으면 0입니다.

설명

두 단계로 개체를 CRichEditCtrl 생성합니다. 먼저 생성자를 호출한 CRichEditCtrl 다음, 호출 Create합니다. 그러면 Windows 편집 컨트롤이 만들어지고 개체에 CRichEditCtrl 연결됩니다.

이 함수를 사용하여 다양한 편집 컨트롤을 만들 때 먼저 필요한 공용 컨트롤 라이브러리를 로드해야 합니다. 라이브러리를 로드하려면 전역 함수를 호출합니다. 이 함수 AfxInitRichEdit는 공용 컨트롤 라이브러리를 초기화합니다. 프로세스에서 한 번만 호출 AfxInitRichEdit 해야 합니다.

실행되면 Create Windows는 편집 컨트롤에 WM_NCCREATE, WM_NCCALCSIZEWM_CREATEWM_GETMINMAXINFO 메시지를 보냅니다.

이러한 메시지는 기본적으로 기본 클래스의 OnNcCreate, OnNcCalcSize, OnCreateOnGetMinMaxInfo 멤버 함수에 CWnd 의해 처리됩니다. 기본 메시지 처리를 확장하려면 클래스 CRichEditCtrl를 파생시키고, 새 클래스에 메시지 맵을 추가하고, 위의 메시지 처리기 멤버 함수를 재정의합니다. 예를 들어 새 클래스에 필요한 초기화를 수행하려면 재정 OnCreate의합니다.

편집 컨트롤에 다음 창 스타일을 적용합니다.

  • WS_CHILD 늘.

  • WS_VISIBLE 보통.

  • WS_DISABLED 드물게.

  • WS_GROUP 컨트롤을 그룹화하려면

  • WS_TABSTOP 편집 컨트롤을 탭 순서에 포함하려면

창 스타일에 대한 자세한 내용은 Windows SDK를 참조 CreateWindow 하세요.

예시

m_myRichEditCtrl.Create(
    WS_CHILD | WS_VISIBLE | WS_BORDER | ES_MULTILINE,
    CRect(10, 10, 100, 200), pParentWnd, IDD_RICHEDITCTRL);

CRichEditCtrl::CreateEx

컨트롤(자식 창)을 만들어 개체와 연결 CRichEditCtrl 합니다.

virtual BOOL CreateEx(
    DWORD dwExStyle,
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID);

매개 변수

dwExStyle
만들 컨트롤의 확장 스타일을 지정합니다. 확장된 Windows 스타일 목록은 Windows SDK의 매개 변수 dwExStyle 를 참조 CreateWindowEx 하세요.

dwStyle
편집 컨트롤의 스타일을 지정합니다. Windows SDK에 설명된 컨트롤 스타일 편집 및 Create 조합을 적용합니다.

rect
생성할 RECT 창의 크기와 위치를 설명하는 구조체에 대한 참조로, 클라이언트 좌표로 pParentWnd표시됩니다.

pParentWnd
컨트롤의 부모 창에 대한 포인터입니다.

nID
컨트롤의 자식 창 ID입니다.

반환 값

성공하면 0이 아니고, 그렇지 않으면 0입니다.

설명

Windows 확장 스타일 서문CreateEx으로 지정된 확장 Windows 스타일을 적용하는 대신 Create 사용합니다WS_EX_.

CRichEditCtrl::CRichEditCtrl

CRichEditCtrl 개체를 생성합니다.

CRichEditCtrl();

설명

Windows 서식 있는 편집 컨트롤을 생성하는 데 사용합니다 Create .

예시

// Declare a local CRichEditCtrl object.
CRichEditCtrl myRichEditCtrl;

// Declare a dynamic CRichEditCtrl object.
CRichEditCtrl* pRichEditCtrl = new CRichEditCtrl;

CRichEditCtrl::Cut

서식 있는 편집 컨트롤에서 현재 선택 영역(있는 경우)을 삭제(잘라내기)하고 삭제된 텍스트를 클립보드에 복사합니다.

void Cut();

설명

수행된 Cut 삭제는 멤버 함수를 Undo 호출하여 실행 취소할 수 있습니다.

삭제된 텍스트를 클립보드에 배치하지 않고 현재 선택 영역을 삭제하려면 멤버 함수를 호출합니다 Clear .

자세한 내용은 Windows SDK를 참조 WM_CUT 하세요.

예시

// Delete all of the text and copy it to the clipboard.
m_myRichEditCtrl.SetSel(0, -1);
m_myRichEditCtrl.Cut();

CRichEditCtrl::DisplayBand

서식이 지정된 FormatRange서식 있는 편집 컨트롤(텍스트 및 OLE 항목)의 내용 일부를 표시합니다.

BOOL DisplayBand(LPRECT pDisplayRect);

매개 변수

pDisplayRect
텍스트를 표시할 RECT 디바이스의 영역을 지정하는 개체에 CRect 대한 포인터입니다.

반환 값

서식이 지정된 텍스트의 표시가 성공하면 0이 아니고, 그렇지 않으면 0입니다.

설명

텍스트 및 OLE 항목은 포인터 pDisplayRect로 지정된 영역으로 잘립니다.

자세한 내용은 Windows SDK를 참조 EM_DISPLAYBAND 하세요.

예시

CRichEditCtrl::FormatRange에 대한 예를 참조하세요.

CRichEditCtrl::EmptyUndoBuffer

이 서식 있는 편집 컨트롤의 실행 취소 플래그를 다시 설정(지우기)합니다.

void EmptyUndoBuffer();

설명

이제 컨트롤이 마지막 편집 작업을 실행 취소할 수 없습니다. 풍부한 편집 컨트롤 내의 작업을 실행 취소할 수 있을 때마다 실행 취소 플래그가 설정됩니다.

멤버 함수CWnd를 호출할 때마다 실행 취소 플래그가 SetWindowText 자동으로 지워집니다.

자세한 내용은 Windows SDK를 참조 EM_EMPTYUNDOBUFFER 하세요.

예시

// Clear the undo buffer.
if (m_myRichEditCtrl.CanUndo())
{
   m_myRichEditCtrl.EmptyUndoBuffer();
   ASSERT(!m_myRichEditCtrl.CanUndo());
}

CRichEditCtrl::FindText

서식 있는 편집 컨트롤 내에서 텍스트를 찾습니다.

long FindText(
    DWORD dwFlags,
    FINDTEXTEX* pFindText) const;

매개 변수

dwFlags
가능한 값 목록은 Windows SDK를 참조 wParamEM_FINDTEXTEXT 하세요.

pFindText
검색에 FINDTEXTEX 대한 매개 변수를 제공하고 일치 항목이 발견된 범위를 반환하는 구조체에 대한 포인터입니다.

반환 값

다음 일치 항목의 문자 위치(0부터 시작하는 위치) - 더 이상 일치하는 항목이 없으면 1입니다.

설명

구조체 내의 구조에서 적절한 범위 매개 변수 CHARRANGE 를 설정하여 위쪽 또는 아래로 검색할 FINDTEXTEX 수 있습니다.

자세한 내용은 Windows SDK의 메시지 및 EM_FINDTEXTEX 구조를 참조 FINDTEXTEX 하세요.

예시

// Set the selection to be the first occurrence of the
// string lpszmyString, if it is found.
FINDTEXTEX ft;
ft.chrg.cpMin = 0;
ft.chrg.cpMax = 50;
ft.lpstrText = _T("wallaby");
long n = m_myRichEditCtrl.FindText(FR_MATCHCASE | FR_WHOLEWORD, &ft);
if (n != -1)
   m_myRichEditCtrl.SetSel(ft.chrgText);

CRichEditCtrl::FindWordBreak

에서 지정 nStart한 위치 앞이나 뒤의 다음 단어 나누기를 찾습니다.

DWORD FindWordBreak(
    UINT nCode,
    DWORD nStart) const;

매개 변수

nCode
수행할 작업을 나타냅니다. 가능한 값 목록은 Windows SDK의 매개 변수 codeEM_FINDWORDBREAK 대한 설명을 참조하세요.

nStart
시작할 문자 위치(0부터 시작)입니다.

반환 값

매개 변수 nCode에 따라 . 자세한 내용은 Windows SDK를 참조 EM_FINDWORDBREAK 하세요.

설명

이 멤버 함수를 사용하여 지정된 위치에서 문자에 대한 정보를 검색할 수 있습니다.

CRichEditCtrl::FormatRange

특정 디바이스에 대한 서식 있는 편집 컨트롤에서 텍스트 범위의 서식을 지정합니다.

long FormatRange(
    FORMATRANGE* pfr,
    BOOL bDisplay = TRUE);

매개 변수

pfr
출력 디바이스에 FORMATRANGE 대한 정보를 포함하는 구조체에 대한 포인터입니다. NULL 는 서식 있는 편집 컨트롤 내의 캐시된 정보를 해제할 수 있음을 나타냅니다.

bDisplay
텍스트를 렌더링해야 하는지를 나타냅니다. 이면 FALSE텍스트가 측정됩니다.

반환 값

영역에 맞는 마지막 문자의 인덱스 및 1입니다.

설명

일반적으로 이 호출은 다음에 호출됩니다 DisplayBand.

자세한 내용은 Windows SDK의 메시지 및 EM_FORMATRANGE 구조를 참조 FORMATRANGE 하세요.

예시

// First obtain a pointer to a printer DC.
CPageSetupDialog psDlg;
if (IDOK == psDlg.DoModal())
{
   CDC *pMyPrinterDC = CDC::FromHandle(psDlg.CreatePrinterDC());

   FORMATRANGE fr;

   // Get the page width and height from the printer.
   long lPageWidth = ::MulDiv(pMyPrinterDC->GetDeviceCaps(PHYSICALWIDTH),
                              1440, pMyPrinterDC->GetDeviceCaps(LOGPIXELSX));
   long lPageHeight = ::MulDiv(pMyPrinterDC->GetDeviceCaps(PHYSICALHEIGHT),
                               1440, pMyPrinterDC->GetDeviceCaps(LOGPIXELSY));
   CRect rcPage(0, 0, lPageWidth, lPageHeight);

   // Format the text and render it to the printer.
   fr.hdc = pMyPrinterDC->m_hDC;
   fr.hdcTarget = pMyPrinterDC->m_hDC;
   fr.rc = rcPage;
   fr.rcPage = rcPage;
   fr.chrg.cpMin = 0;
   fr.chrg.cpMax = -1;
   m_myRichEditCtrl.FormatRange(&fr, TRUE);

   // Update the display with the new formatting.
   RECT rcClient;
   m_myRichEditCtrl.GetClientRect(&rcClient);
   m_myRichEditCtrl.DisplayBand(&rcClient);

   pMyPrinterDC->DeleteDC();
}

CRichEditCtrl::GetCharPos

CRichEditCtrl 개체 내에서 지정된 문자의 위치(왼쪽 위 모서리)를 가져옵니다.

CPoint GetCharPos(long lChar) const;

매개 변수

lChar
문자의 인덱스(0부터 시작)입니다.

반환 값

로 지정된 lChar문자의 왼쪽 위 모서리 위치입니다.

설명

문자는 0부터 시작하는 인덱스 값을 제공하여 지정됩니다. 이 개체의 마지막 문자 인덱스보다 크면 lChar 반환 값은 이 CRichEditCtrlCRichEditCtrl 개체의 마지막 문자 바로 앞에 있는 문자 위치의 좌표를 지정합니다.

자세한 내용은 Windows SDK를 참조 EM_POSFROMCHAR 하세요.

CRichEditCtrl::GetDefaultCharFormat

CRichEditCtrl 개체의 기본 문자 서식 특성을 가져옵니다.

DWORD GetDefaultCharFormat(CHARFORMAT& cf) const;
DWORD GetDefaultCharFormat(CHARFORMAT2& cf) const;

매개 변수

cf
첫 번째 버전에서는 기본 문자 서식 특성을 포함하는 구조체에 대한 포인터 CHARFORMAT 입니다.

두 번째 버전에서는 구조체에 대한 CHARFORMAT2 Rich Edit 2.0 확장인 구조체에 대한 포인터로 CHARFORMAT , 기본 문자 서식 특성을 보유합니다.

반환 값

dwMask 데이터 멤버입니다 cf. 기본 문자 서식 특성을 지정했습니다.

설명

자세한 내용은 Windows SDK의 EM_GETCHARFORMATCHARFORMAT 메시지 및 CHARFORMAT2 구조체를 참조하세요.

예시

SetDefaultCharFormat에 대한 예를 참조하세요.

CRichEditCtrl::GetEventMask

CRichEditCtrl 개체의 이벤트 마스크를 가져옵니다.

long GetEventMask() const;

반환 값

CRichEditCtrl 개체의 이벤트 마스크입니다.

설명

이벤트 마스크는 개체가 부모 창에 CRichEditCtrl 보내는 알림 메시지를 지정합니다.

자세한 내용은 Windows SDK를 참조 EM_GETEVENTMASK 하세요.

예시

CRichEditCtrl::SetEventMask에 대한 예를 참조하세요.

CRichEditCtrl::GetFirstVisibleLine

CRichEditCtrl 개체에서 가장 맨 위에 표시되는 줄을 결정합니다.

int GetFirstVisibleLine() const;

반환 값

CRichEditCtrl 개체의 맨 위에 표시되는 선의 인덱스(0부터 시작하는 인덱스)입니다.

설명

자세한 내용은 Windows SDK를 참조 EM_GETFIRSTVISIBLELINE 하세요.

예시

int nFirstVisible = m_myRichEditCtrl.GetFirstVisibleLine();

// Scroll the rich edit control so that the first visible line
// is the first line of text.
if (nFirstVisible > 0)
{
   m_myRichEditCtrl.LineScroll(-nFirstVisible, 0);
}

CRichEditCtrl::GetIRichEditOle

IRichEditOle 개체의 CRichEditCtrl 인터페이스에 액세스합니다.

IRichEditOle* GetIRichEditOle() const;

반환 값

인터페이스에 IRichEditOle 액세스할 수 없는 경우 이 CRichEditCtrl 개체의 OLE 기능에 NULL 액세스하는 데 사용할 수 있는 인터페이스에 대한 포인터입니다.

설명

이 인터페이스를 사용하여 이 CRichEditCtrl 개체의 OLE 기능에 액세스합니다.

자세한 내용은 Windows SDK의 메시지 및 EM_GETOLEINTERFACE 인터페이스를 참조 IRichEditOle 하세요.

CRichEditCtrl::GetLimitText

CRichEditCtrl 개체의 텍스트 제한을 가져옵니다.

long GetLimitText() const;

반환 값

CRichEditCtrl 개체의 현재 텍스트 제한(바이트)입니다.

설명

텍스트 제한은 텍스트의 최대 크기(바이트)로, 서식 있는 편집 컨트롤이 허용할 수 있습니다.

자세한 내용은 Windows SDK를 참조 EM_GETLIMITTEXT 하세요.

예시

// The new text of the rich edit control.
LPCTSTR lpszmyString = _T("Here's some text in our rich edit control!");
long nLength = (long)_tcslen(lpszmyString);

// Want the text limit to be at least the size of the new string.
if (m_myRichEditCtrl.GetLimitText() < nLength)
   m_myRichEditCtrl.LimitText(nLength);

m_myRichEditCtrl.SetWindowText(lpszmyString);

CRichEditCtrl::GetLine

CRichEditCtrl 개체에서 텍스트 줄을 검색합니다.

int GetLine(
    int nIndex,
    LPTSTR lpszBuffer) const;

int GetLine(
    int nIndex,
    LPTSTR lpszBuffer,
    int nMaxLength) const;

매개 변수

nIndex
검색할 줄의 인덱스(0부터 시작하는 인덱스)입니다.

lpszBuffer
텍스트를 받을 버퍼를 가리킵니다. 버퍼의 첫 번째 단어는 버퍼에 복사할 수 있는 최대 바이트 수를 지정해야 합니다.

nMaxLength
lpszBuffer복사할 수 있는 최대 문자 수입니다. 두 번째 형식 GetLine 은 이 값을 지정한 버퍼의 첫 번째 단어에 lpszBuffer배치합니다.

반환 값

에 복사된 문자 수입니다 lpszBuffer.

설명

복사된 줄에 종료 Null 문자가 포함되어 있지 않습니다.

참고 항목

버퍼의 첫 번째 단어는 복사할 문자 수를 저장하므로 버퍼 길이가 4바이트 이상인지 확인합니다.

자세한 내용은 Windows SDK를 참조 EM_GETLINE 하세요.

예시

GetLineCount에 대한 예를 참조하세요.

CRichEditCtrl::GetLineCount

개체의 줄 수를 검색 CRichEditCtrl 합니다.

int GetLineCount() const;

반환 값

CRichEditCtrl 개체의 줄 수입니다.

설명

자세한 내용은 Windows SDK를 참조 EM_GETLINECOUNT 하세요.

예시

int nLineLength, nLineIndex, nLineCount = m_myRichEditCtrl.GetLineCount();
CString strText, strLine;

// Dump every line of text of the rich edit control.
for (int i = 0; i < nLineCount; i++)
{
   nLineIndex = m_myRichEditCtrl.LineIndex(i);
   nLineLength = m_myRichEditCtrl.LineLength(nLineIndex);
   m_myRichEditCtrl.GetLine(i, strText.GetBufferSetLength(nLineLength + 1),
                            nLineLength);
   strText.SetAt(nLineLength, _T('\0')); // null terminate
   strText.ReleaseBuffer(nLineLength + 1);

   TRACE(_T("line %d: '%s'\r\n"), i, strText);
}

CRichEditCtrl::GetModify

CRichEditCtrl 개체의 내용이 수정되었는지 여부를 확인합니다.

BOOL GetModify() const;

반환 값

CRichEditCtrl 개체의 텍스트가 수정되었으면 0이 아니고, 그렇지 않으면 0입니다.

설명

Windows는 서식 있는 편집 컨트롤의 내용이 변경되었는지 여부를 나타내는 내부 플래그를 유지 관리합니다. 이 플래그는 편집 컨트롤을 처음 만들 때 지워지고 멤버 함수를 SetModify 호출하여 지울 수도 있습니다.

자세한 내용은 Windows SDK를 참조 EM_GETMODIFY 하세요.

예시

// Reset the modified state only if the text has been modified.
if (m_myRichEditCtrl.GetModify())
   m_myRichEditCtrl.SetModify(FALSE);

CRichEditCtrl::GetOptions

서식 있는 편집 컨트롤에 대해 현재 설정된 옵션을 검색합니다.

UINT GetOptions() const;

반환 값

현재 옵션 플래그 값의 조합입니다. 이러한 값 목록은 Windows SDK에 설명된 대로 메시지의 fOptions 매개 변수를 참조 EM_SETOPTIONS 하세요.

CRichEditCtrl::GetParaFormat

현재 선택 영역의 단락 서식 특성을 가져옵니다.

DWORD GetParaFormat(PARAFORMAT& pf) const;
DWORD GetParaFormat(PARAFORMAT2& pf) const;

매개 변수

pf
첫 번째 버전에서는 현재 선택 영역의 단락 서식 특성을 저장할 구조체에 대한 포인터 PARAFORMAT 입니다.

두 번째 버전에서는 구조체에 대한 PARAFORMAT2 Rich Edit 2.0 확장인 구조체에 대한 포인터로 PARAFORMAT , 기본 문자 서식 특성을 보유합니다.

반환 값

dwMask 데이터 멤버입니다 pf. 현재 선택 영역 전체에서 일관된 단락 서식 특성을 지정합니다.

설명

둘 이상의 단락을 pf 선택한 경우 선택한 첫 번째 단락의 특성을 받습니다. 반환 값은 선택 영역 전체에서 일치하는 특성을 지정합니다.

자세한 내용은 Windows SDK의 EM_GETPARAFORMATPARAFORMAT 메시지 및 PARAFORMAT2 구조체를 참조하세요.

예시

CRichEditCtrl::SetParaFormat에 대한 예를 참조하세요.

CRichEditCtrl::GetPunctuation

서식 있는 편집 컨트롤의 현재 문장 부호 문자를 가져옵니다.

BOOL GetPunctuation(
    UINT fType,
    PUNCTUATION* lpPunc) const;

매개 변수

fType
Windows SDK의 fType 매개 변수에 EM_GETPUNCTUATION 설명된 대로 문장 부호 형식 플래그입니다.

lpPunc
Windows SDK에 PUNCTUATION 설명된 대로 구조체에 대한 포인터입니다.

반환 값

작업이 성공하면 0이 아니고, 그렇지 않으면 0입니다.

설명

이 멤버 함수는 운영 체제의 아시아어 버전에서만 사용할 수 있습니다.

CRichEditCtrl::GetRect

CRichEditCtrl 개체의 서식 사각형을 검색합니다.

void GetRect(LPRECT lpRect) const;

매개 변수

lpRect
CRect RECT 또는 이 CRichEditCtrl 개체의 서식 사각형을 받을 포인터입니다.

설명

서식 지정 사각형은 텍스트의 경계 사각형입니다. 이 값은 개체의 CRichEditCtrl 크기와는 독립적입니다.

자세한 내용은 Windows SDK를 참조 EM_GETRECT 하세요.

예시

LimitText에 대한 예를 참조하세요.

CRichEditCtrl::GetRedoName

다시 실행 큐에서 사용 가능한 다음 작업의 형식(있는 경우)을 검색합니다.

UNDONAMEID GetRedoName() const;

반환 값

성공 GetRedoName 하면 컨트롤의 UNDONAMEID 다시 실행 큐에 있는 다음 작업의 형식을 나타내는 열거형 형식을 반환합니다. 다시 실행 큐가 비어 있거나 큐의 다시 실행 작업이 알 수 없는 형식 GetRedoName 인 경우 0을 반환합니다.

설명

실행 취소하거나 다시 실행할 수 있는 작업 형식에는 입력, 삭제, 끌어 놓기, 잘라내기 및 붙여넣기 작업이 포함됩니다. 이 정보는 다시 실행 가능한 작업의 드롭다운 목록 상자와 같이 실행 취소 및 다시 실행 작업에 대한 확장된 사용자 인터페이스를 제공하는 애플리케이션에 유용할 수 있습니다.

CRichEditCtrl::GetSel

CRichEditCtrl 개체에서 현재 선택 영역의 범위를 검색합니다.

void GetSel(CHARRANGE& cr) const;

void GetSel(
    long& nStartChar,
    long& nEndChar) const;

매개 변수

cr
CHARRANGE 현재 선택 영역의 범위를 수신하는 구조체에 대한 참조입니다.

nStartChar
현재 선택 영역에 있는 첫 번째 문자의 인덱스(0부터 시작)입니다.

nEndChar
현재 선택 영역에 있는 마지막 문자의 인덱스(0부터 시작하는 인덱스)입니다.

설명

이 함수의 두 가지 형태는 선택 영역의 범위를 가져오는 다른 방법을 제공합니다. 이러한 양식에 대한 간략한 설명은 다음과 같습니다.

  • GetSel(cr) 이 양식은 CHARRANGE 해당 구조체와 cpMin 멤버를 cpMax 사용하여 경계를 반환합니다.

  • GetSel(nStartChar,nEndChar ) 이 양식은 매개 변수 nStartChar 의 경계를 반환하고 nEndChar.

선택 영역에는 시작(cpMin 또는 nStartChar)이 0이고 끝(cpMax 또는 nEndChar)이 - 1인 경우 모든 항목이 포함됩니다.

자세한 내용은 Windows SDK의 메시지 및 EM_EXGETSEL 구조를 참조 CHARRANGE 하세요.

예시

// Set the selection to be all characters after the current selection.
long nStartChar, nEndChar;

m_myRichEditCtrl.GetSel(nStartChar, nEndChar);
m_myRichEditCtrl.SetSel(nEndChar, -1);

CRichEditCtrl::GetSelectionCharFormat

현재 선택 영역의 문자 서식 특성을 가져옵니다.

DWORD GetSelectionCharFormat(CHARFORMAT& cf) const;
DWORD GetSelectionCharFormat(CHARFORMAT2& cf) const;

매개 변수

cf
첫 번째 버전에서는 현재 선택 영역의 문자 서식 특성을 받는 구조체에 대한 포인터 CHARFORMAT 입니다.

두 번째 버전에서는 현재 선택 영역의 문자 서식 특성을 받을 구조체에 대한 Rich Edit 2.0 확장 CHARFORMAT2 인 구조체에 대한 포인터 CHARFORMAT 입니다.

반환 값

dwMask 데이터 멤버입니다 cf. 현재 선택 영역 전체에서 일관된 문자 서식 특성을 지정합니다.

설명

매개 변수는 cf 현재 선택 영역에서 첫 번째 문자의 특성을 받습니다. 반환 값은 선택 영역 전체에서 일치하는 특성을 지정합니다.

자세한 내용은 Windows SDK의 EM_GETCHARFORMATCHARFORMAT 메시지 및 CHARFORMAT2 구조체를 참조하세요.

예시

SetSelectionCharFormat에 대한 예를 참조하세요.

CRichEditCtrl::GetSelectionType

CRichEditCtrl 개체의 선택 유형을 결정합니다.

WORD GetSelectionType() const;

반환 값

현재 선택 영역의 내용을 나타내는 플래그입니다. 다음 플래그의 조합입니다.

  • SEL_EMPTY 현재 선택 영역이 없음을 나타냅니다.

  • SEL_TEXT 현재 선택 영역에 텍스트가 포함되어 있음을 나타냅니다.

  • SEL_OBJECT 현재 선택 영역에 하나 이상의 OLE 항목이 포함되어 있음을 나타냅니다.

  • SEL_MULTICHAR 현재 선택 영역에 둘 이상의 텍스트 문자가 포함되어 있음을 나타냅니다.

  • SEL_MULTIOBJECT 현재 선택 영역에 둘 이상의 OLE 개체가 포함되어 있음을 나타냅니다.

설명

자세한 내용은 Windows SDK를 참조 EM_SELECTIONTYPE 하세요.

예시

// Dump the selection text only if it contains at least one text character.
if (m_myRichEditCtrl.GetSelectionType() & (SEL_TEXT | SEL_MULTICHAR))
{
   CString strText = m_myRichEditCtrl.GetSelText();

   TRACE(_T("selection text is '%s'.\r\n"), strText);
}

CRichEditCtrl::GetSelText

CRichEditCtrl 개체의 현재 선택 영역에서 텍스트를 검색합니다.

long GetSelText(LPSTR lpBuf) const;
CString GetSelText() const;

매개 변수

lpBuf
현재 선택 영역의 텍스트를 받을 버퍼에 대한 포인터입니다.

반환 값

양식에 따라 다릅니다.

  • GetSelText(lpBuf) null 종료를 포함하지 않고 복사된 lpBuf문자 수입니다.

  • GetSelText( ) 현재 선택 영역이 포함된 문자열입니다.

설명

첫 번째 폼 GetSelText(lpBuf)을 사용하는 경우 버퍼가 받을 텍스트에 충분히 큰지 확인해야 합니다. 현재 선택 영역의 문자 수를 확인하려면 호출 GetSel 합니다.

자세한 내용은 Windows SDK를 참조 EM_GETSELTEXT 하세요.

예시

CRichEditCtrl::GetSelectionType에 대한 예를 참조하세요.

CRichEditCtrl::GetTextLength

종료 null 문자를 포함하지 않고 이 CRichEditCtrl 개체의 텍스트 길이를 문자로 검색합니다.

long GetTextLength() const;

반환 값

CRichEditCtrl 개체의 텍스트 길이입니다.

설명

자세한 내용은 Windows SDK를 참조 WM_GETTEXTLENGTH 하세요.

예시

// Limit the rich edit controls text to the number of
// characters currently in it.
m_myRichEditCtrl.LimitText(m_myRichEditCtrl.GetTextLength());

CRichEditCtrl::GetTextLengthEx

서식 있는 편집 컨트롤의 텍스트 길이를 계산합니다.

long GetTextLengthEx(
    DWORD dwFlags,
    UINT uCodePage = -1) const;

매개 변수

dwFlags
텍스트 길이를 결정하는 데 사용할 메서드를 지정하는 값입니다. 이 멤버는 Windows SDK에 설명된 플래그 멤버 GETTEXTLENGTHEX 에 나열된 값 중 하나 이상일 수 있습니다.

uCodePage
번역을 위한 코드 페이지(CP_ACP ANSI 코드 페이지, 유니코드의 경우 1200).

반환 값

편집 컨트롤의 문자 또는 바이트 수입니다. 호환되지 않는 플래그가 설정된 dwFlags경우 이 멤버 함수는 반환합니다 E_INVALIDARG.

설명

GetTextLengthEx 에서는 텍스트의 길이를 결정하는 추가 방법을 제공합니다. Rich Edit 2.0 기능을 지원합니다. 자세한 내용은 Windows SDKfor의 리치 편집 컨트롤을 참조하세요.

CRichEditCtrl::GetTextMode

현재 텍스트 모드를 검색하고 서식 있는 편집 컨트롤의 실행 취소 수준을 검색합니다.

UINT GetTextMode() const;

반환 값

Windows SDK에 TEXTMODE 설명된 대로 열거형 형식의 비트 플래그 집합입니다. 플래그는 현재 텍스트 모드와 컨트롤의 실행 취소 수준을 나타냅니다.

CRichEditCtrl::GetTextRange

지정된 문자 범위를 가져옵니다.

int GetTextRange(
    int nFirst,
    int nLast,
    CString& refString) const;

매개 변수

nFirst
범위의 첫 번째 문자 바로 앞에 있는 문자 위치 인덱스입니다.

nLast
범위의 마지막 문자 바로 다음 문자 위치입니다.

refString
텍스트를 받을 개체에 CString 대한 참조입니다.

반환 값

종료 null 문자를 포함하지 않고 복사된 문자 수입니다.

설명

자세한 내용은 Windows SDK를 참조 EM_GETTEXTRANGE 하세요.

GetTextRange 는 Rich Edit 2.0 기능을 지원합니다. 자세한 내용은 Windows SDKfor의 리치 편집 컨트롤을 참조하세요.

CRichEditCtrl::GetUndoName

실행 취소 큐에서 사용 가능한 다음 작업의 형식(있는 경우)을 검색합니다.

UNDONAMEID GetUndoName() const;

반환 값

실행 취소 작업이 컨트롤의 실행 취소 큐에 있는 경우 큐 GetUndoName 에서 다음 작업의 형식을 나타내는 UNDONAMEID 열거형 형식을 반환합니다. 실행 취소 큐가 비어 있거나 큐의 실행 취소 작업이 알 수 없는 형식 GetUndoName 인 경우 0을 반환합니다.

설명

실행 취소하거나 다시 실행할 수 있는 작업 형식에는 입력, 삭제, 끌어 놓기, 잘라내기 및 붙여넣기 작업이 포함됩니다. 이 정보는 실행 취소할 수 있는 작업의 드롭다운 목록 상자와 같이 실행 취소 및 다시 실행 작업에 대한 확장된 사용자 인터페이스를 제공하는 애플리케이션에 유용할 수 있습니다.

CRichEditCtrl::GetWordWrapMode

서식 있는 편집 컨트롤에 대한 현재 단어 줄 바꿈 및 단어 분리 옵션을 검색합니다.

UINT GetWordWrapMode() const;

반환 값

현재 단어 줄 바꿈 및 단어 분리 옵션입니다. 이러한 옵션은 Windows SDK에 EM_SETWORDWRAPMODE 설명되어 있습니다.

설명

이 멤버 함수는 운영 체제의 아시아어 버전에만 사용할 수 있습니다.

CRichEditCtrl::HideSelection

선택 영역의 표시 유형을 변경합니다.

void HideSelection(
    BOOL bHide,
    BOOL bPerm);

매개 변수

bHide
선택 영역을 숨기려면 선택 영역을 표시하거나 숨길 TRUE 지 여부를 나타냅니다.

bPerm
선택 영역의 표시 유형 변경 내용이 영구적이어야 하는지를 나타냅니다.

설명

bPerm경우 TRUEECO_NOHIDESEL 개체에 CRichEditCtrl 대한 옵션이 변경됩니다. 이 옵션에 대한 간략한 설명은 다음을 참조하세요 SetOptions. 이 함수를 사용하여 이 CRichEditCtrl 개체에 대한 모든 옵션을 설정할 수 있습니다.

자세한 내용은 Windows SDK를 참조 EM_HIDESELECTION 하세요.

예시

// Show the selection and make it permanent.
m_myRichEditCtrl.HideSelection(FALSE, TRUE);

CRichEditCtrl::LimitText

사용자가 편집 컨트롤에 입력할 수 있는 텍스트의 길이를 제한합니다.

void LimitText(long nChars = 0);

매개 변수

nChars
사용자가 입력할 수 있는 텍스트의 길이(바이트)를 지정합니다. 이 매개 변수가 0(기본값)이면 텍스트 길이가 64K바이트로 설정됩니다.

설명

텍스트 제한을 변경하면 사용자가 입력할 수 있는 텍스트만 제한됩니다. 편집 컨트롤에 이미 있는 텍스트에는 영향을 주지 않으며 멤버 함수SetWindowText가 편집 컨트롤에 복사한 텍스트의 길이에도 CWnd 영향을 주지 않습니다. 애플리케이션이 함수를 SetWindowText 사용하여 호출에서 지정한 것보다 더 많은 텍스트를 편집 컨트롤에 배치하는 LimitText경우 사용자는 편집 컨트롤 내의 텍스트를 삭제할 수 있습니다. 그러나 현재 선택 영역을 삭제하면 텍스트가 텍스트 제한 아래로 떨어지지 않는 한 텍스트 제한으로 인해 기존 텍스트를 새 텍스트로 바꿀 수 없습니다.

참고 항목

텍스트 제한의 경우 각 OLE 항목은 단일 문자로 계산됩니다.

자세한 내용은 Windows SDK를 참조 EM_EXLIMITTEXT 하세요.

예시

// Limit the number of characters to be the maximum number visible.

// Get the text metrics for the edit; needed for the
// average character width.
TEXTMETRIC tm;
CDC *pDC = m_myRichEditCtrl.GetDC();
pDC->GetTextMetrics(&tm);
m_myRichEditCtrl.ReleaseDC(pDC);

CRect r;
m_myRichEditCtrl.GetRect(&r);
m_myRichEditCtrl.LimitText(r.Width() / tm.tmAveCharWidth);

CRichEditCtrl::LineFromChar

지정된 문자 인덱스가 포함된 줄 번호를 검색합니다.

long LineFromChar(long nIndex) const;

매개 변수

nIndex
편집 컨트롤의 텍스트에서 원하는 문자에 대한 인덱스 값(0부터 시작하는 인덱스)을 포함하거나 -1을 포함합니다. -1이면 nIndex 현재 줄, 즉, 캐리트가 포함된 줄을 지정합니다.

반환 값

로 지정된 nIndex문자 인덱스가 들어 있는 줄의 줄 번호(0부터 시작하는 줄 번호)입니다. -1이면 nIndex 선택 영역의 첫 번째 문자가 포함된 줄의 수가 반환됩니다. 선택 항목이 없으면 현재 줄 번호가 반환됩니다.

설명

문자 인덱스는 서식 있는 편집 컨트롤의 시작 부분부터의 문자 수입니다. 문자 계산의 경우 OLE 항목은 단일 문자로 계산됩니다.

자세한 내용은 Windows SDK를 참조 EM_EXLINEFROMCHAR 하세요.

예시

// The index of the char to get information on.
int nIndex = 11;

CString strText;

m_myRichEditCtrl.GetWindowText(strText);
strText = strText.Mid(nIndex, 1);

// Dump the index, character and line number.
TRACE(_T("nIndex = %d, character = %c, line = %d\r\n"),
      nIndex, strText[0], m_myRichEditCtrl.LineFromChar(nIndex));

CRichEditCtrl::LineIndex

CRichEditCtrl 개체 내에서 줄의 문자 인덱스를 검색합니다.

int LineIndex(int nLine = -1) const;

매개 변수

nLine
편집 컨트롤의 텍스트에 원하는 줄의 인덱스 값을 포함하거나 -1을 포함합니다. -1이면 nLine 현재 줄, 즉, 캐리트가 포함된 줄을 지정합니다.

반환 값

지정한 nLine 줄 번호가 편집 컨트롤의 줄 수보다 크면 지정한 줄의 문자 인덱스이거나 -1입니다.

설명

문자 인덱스는 서식 있는 편집 컨트롤의 시작부터 지정된 줄까지의 문자 수입니다.

자세한 내용은 Windows SDK를 참조 EM_LINEINDEX 하세요.

예시

// The string for replacing.
LPCTSTR lpszmyString = _T("Hello, I'm the new second line.");

int nBegin, nEnd, nIndex;

// Replace the second line, if it exists, of the rich edit control
// with the text lpszmyString.
nIndex = m_myRichEditCtrl.LineIndex(1);
if ((nBegin = nIndex) != -1)
{
   nEnd = nBegin + m_myRichEditCtrl.LineLength(nIndex);
   m_myRichEditCtrl.SetSel(nBegin, nEnd);
   m_myRichEditCtrl.ReplaceSel(lpszmyString);
}

CRichEditCtrl::LineLength

서식 있는 편집 컨트롤에서 줄의 길이를 검색합니다.

int LineLength(int nLine = -1) const;

매개 변수

nLine
길이를 검색할 줄에 있는 문자의 문자 인덱스를 지정합니다. 이 매개 변수가 -1이면 현재 줄의 길이(caret가 포함된 줄)가 반환되며, 줄 내에서 선택한 텍스트의 길이는 포함되지 않습니다. 한 줄 편집 컨트롤에 대해 호출되는 경우 LineLength 이 매개 변수는 무시됩니다.

반환 값

여러 줄 편집 컨트롤에 대해 호출되는 경우 LineLength 반환 값은 지정한 줄TCHAR의 길이(innLine)입니다. 줄 끝에 캐리지 리턴 문자를 포함하지 않습니다. LineLength 한 줄 편집 컨트롤에 대해 호출되는 경우 반환 값은 편집 컨트롤에 있는 텍스트의 길이(inTCHAR)입니다. 컨트롤의 문자 수보다 크면 nLine 반환 값은 0입니다.

설명

멤버 함수를 LineIndex 사용하여 이 CRichEditCtrl 개체 내의 지정된 줄 번호에 대한 문자 인덱스 검색

자세한 내용은 Windows SDK를 참조 EM_LINELENGTH 하세요.

예시

LineIndex에 대한 예를 참조하세요.

CRichEditCtrl::LineScroll

여러 줄 편집 컨트롤의 텍스트를 스크롤합니다.

void LineScroll(
    int nLines,
    int nChars = 0);

매개 변수

nLines
세로로 스크롤할 줄 수를 지정합니다.

nChars
가로로 스크롤할 문자 위치 수를 지정합니다. 서식 있는 편집 컨트롤에 스타일이 ES_RIGHT 있으면 이 값은 ES_CENTER 무시됩니다. 편집 스타일 은 에 Create지정됩니다.

설명

편집 컨트롤은 편집 컨트롤의 마지막 텍스트 줄을 세로로 스크롤하지 않습니다. 현재 줄과 지정된 nLines 줄 수가 편집 컨트롤의 총 줄 수를 초과하면 편집 컨트롤의 마지막 줄이 편집 컨트롤 창의 맨 위로 스크롤되도록 값이 조정됩니다.

LineScroll 는 모든 줄의 마지막 문자를 가로로 스크롤하는 데 사용할 수 있습니다.

자세한 내용은 Windows SDK를 참조 EM_LINESCROLL 하세요.

예시

GetFirstVisibleLine에 대한 예를 참조하세요.

CRichEditCtrl::Paste

클립보드의 데이터를 삽입 지점인 CRichEditCtrl 캐리트의 위치에 삽입합니다.

void Paste();

설명

클립보드에 인식된 형식의 데이터가 포함된 경우에만 데이터가 삽입됩니다.

자세한 내용은 Windows SDK를 참조 WM_PASTE 하세요.

예시

// Replace all of the text with the text in the clipboard.
m_myRichEditCtrl.SetSel(0, -1);
m_myRichEditCtrl.Paste();

CRichEditCtrl::PasteSpecial

특정 클립보드 형식의 데이터를 이 CRichEditCtrl 개체에 붙여넣습니다.

void PasteSpecial(
    UINT nClipFormat,
    DWORD dvAspect = 0,
    HMETAFILE hMF = 0);

매개 변수

nClipFormat
CRichEditCtrl 개체에 붙여넣을 클립보드 형식입니다.

dvAspect
클립보드에서 검색할 데이터의 디바이스 측면입니다.

hMF
붙여넣을 개체의 아이콘 보기를 포함하는 메타파일 핸들입니다.

설명

새 재질은 삽입 지점, 캐리트의 위치에 삽입됩니다.

자세한 내용은 Windows SDK를 참조 EM_PASTESPECIAL 하세요.

예시

// Paste the data from the clipboard as text.
m_myRichEditCtrl.PasteSpecial(CF_TEXT);

CRichEditCtrl::PosFromChar

편집 컨트롤에서 지정된 문자의 클라이언트 영역 좌표를 검색합니다.

CPoint PosFromChar(UINT nChar) const;

매개 변수

nChar
문자의 인덱스(0부터 시작하는 인덱스)입니다.

반환 값

문자의 위치(x, y)입니다. 한 줄 편집 컨트롤의 경우 y 좌표는 항상 0입니다.

설명

자세한 내용은 Windows SDK를 참조 EM_POSFROMCHAR 하세요.

CRichEditCtrl::Redo

컨트롤의 다시 실행 큐에서 다음 작업을 다시 실행합니다.

BOOL Redo();

반환 값

성공하면 0이 아닌 값입니다. 그렇지 않으면 0입니다.

설명

자세한 내용은 Windows SDK를 참조 EM_REDO 하세요.

CRichEditCtrl::ReplaceSel

CRichEditCtrl 개체의 현재 선택 영역을 지정된 텍스트로 바꿉니다.

void ReplaceSel(
    LPCTSTR lpszNewText,
    BOOL bCanUndo = FALSE);

매개 변수

lpszNewText
대체 텍스트를 포함하는 null로 끝나는 문자열에 대한 포인터입니다.

bCanUndo
이 함수를 실행 취소할 수 있도록 지정하려면 이 매개 변수 TRUE의 값을 .로 설정합니다. 기본값은 FALSE입니다.

설명

CRichEditCtrl 개체의 모든 텍스트를 바꾸려면 .를 사용합니다 CWnd::SetWindowText.

현재 선택 영역이 없으면 대체 텍스트가 삽입 지점, 즉 현재 캐리트 위치에 삽입됩니다.

이 함수는 삽입된 텍스트의 서식을 기존 문자 서식으로 지정합니다. 호출SetSel하기 전에 (0,-1)을 호출ReplaceSel하여 전체 텍스트 범위를 바꿀 때 이전 단락의 서식을 유지하는 단락 문자의 끝이 있습니다. 이 문자는 새로 삽입된 텍스트에 의해 상속됩니다.

자세한 내용은 Windows SDK를 참조 EM_REPLACESEL 하세요.

예시

LineIndex에 대한 예를 참조하세요.

CRichEditCtrl::RequestResize

CRichEditCtrl 개체가 부모 창에 알림 메시지를 보내 EN_REQUESTRESIZE 도록 합니다.

void RequestResize();

설명

이 함수는 바닥이 없는 CWnd::OnSize 개체를 처리하는 동안 CRichEditCtrl 유용합니다.

자세한 내용은 Windows SDK의 EM_REQUESTRESIZE리치 편집 컨트롤 정보 메시지 및 하위 없는 서식 있는 편집 컨트롤 섹션을 참조하세요.

CRichEditCtrl::SetAutoURLDetect

URL을 자동으로 검색하도록 서식 있는 편집 컨트롤을 설정합니다.

BOOL SetAutoURLDetect(BOOL bEnable = TRUE);

매개 변수

bEnable
컨트롤이 URL을 자동으로 검색하도록 설정되었는지 여부를 지정합니다. 이 경우 TRUE사용하도록 설정됩니다. 이 경우 FALSE사용하지 않도록 설정됩니다.

반환 값

성공하면 0이고, 그렇지 않으면 0이 아닙니다. 예를 들어 메모리 부족으로 인해 메시지가 실패할 수 있습니다.

설명

사용하도록 설정하면 서식 있는 편집 컨트롤이 텍스트를 검색하여 표준 URL 형식과 일치하는지 확인합니다. 이러한 URL 형식 목록은 Windows SDK를 참조 EM_AUTOURLDETECT 하세요.

참고 항목

편집 컨트롤이 URL 이외의 텍스트에 효과를 사용하는 SetAutoURLDetect 경우로 설정 TRUECFE_LINK 하지 마세요. SetAutoURLDetect 는 URL에 대해 이 효과를 사용하도록 설정하고 다른 모든 텍스트에 대해 사용하지 않도록 설정합니다. 효과에 대한 자세한 내용은 EN_LINK 참조하세요CFE_LINK.

CRichEditCtrl::SetBackgroundColor

CRichEditCtrl 개체의 배경색을 설정합니다.

COLORREF SetBackgroundColor(
    BOOL bSysColor,
    COLORREF cr);

매개 변수

bSysColor
배경색을 시스템 값으로 설정해야 하는지를 나타냅니다. 이 값이 TRUEcr 면 무시됩니다.

cr
요청된 배경색입니다. 있는 경우에만 bSysColorFALSE사용됩니다.

반환 값

CRichEditCtrl 개체의 이전 배경색입니다.

설명

배경색을 시스템 값 또는 지정된 COLORREF 값으로 설정할 수 있습니다.

자세한 내용은 Windows SDK의 메시지 및 EM_SETBKGNDCOLOR 구조를 참조 COLORREF 하세요.

예시

// Use red as the background color.
m_myRichEditCtrl.SetBackgroundColor(FALSE, RGB(255, 0, 0));

CRichEditCtrl::SetDefaultCharFormat

CRichEditCtrl 개체의 새 텍스트에 대한 문자 서식 특성을 설정합니다.

BOOL SetDefaultCharFormat(CHARFORMAT& cf);
BOOL SetDefaultCharFormat(CHARFORMAT2& cf);

매개 변수

cf
첫 번째 버전에서는 새 기본 문자 서식 특성을 포함하는 구조체에 대한 포인터 CHARFORMAT 입니다.

두 번째 버전에서는 구조체에 대한 CHARFORMAT2 리치 편집 2.0 확장인 구조체에 CHARFORMAT 대한 포인터로, 기본 문자 서식 특성을 포함합니다.

반환 값

성공하면 0이 아닌 값입니다. 그렇지 않으면 0입니다.

설명

멤버 dwMask 가 지정한 cf 특성만 이 함수에 의해 변경됩니다.

자세한 내용은 Windows SDK의 EM_SETCHARFORMATCHARFORMAT 메시지 및 CHARFORMAT2 구조체를 참조하세요.

예시

CHARFORMAT cf = {0};

// Modify the default character format so that all new
// text is striked out and not bold.
cf.cbSize = sizeof(cf);
cf.dwMask = CFM_STRIKEOUT | CFM_BOLD;
cf.dwEffects = CFE_STRIKEOUT;
m_myRichEditCtrl.SetDefaultCharFormat(cf);

// Verify the settings are what is expected.
m_myRichEditCtrl.GetDefaultCharFormat(cf);
ASSERT((cf.dwMask & (CFM_STRIKEOUT | CFM_BOLD)) ==
       (CFM_STRIKEOUT | CFM_BOLD));
ASSERT((cf.dwEffects & (CFE_STRIKEOUT | CFE_BOLD)) == CFE_STRIKEOUT);

CRichEditCtrl::SetEventMask

CRichEditCtrl 개체에 대한 이벤트 마스크를 설정합니다.

DWORD SetEventMask(DWORD dwEventMask);

매개 변수

dwEventMask
CRichEditCtrl 개체의 새 이벤트 마스크입니다.

반환 값

이전 이벤트 마스크입니다.

설명

이벤트 마스크는 개체가 부모 창에 CRichEditCtrl 보내는 알림 메시지를 지정합니다.

자세한 내용은 Windows SDK를 참조 EM_SETEVENTMASK 하세요.

예시

// Set the event mask so that the parent gets notified when the text
// of the rich edit control changes.
m_myRichEditCtrl.SetEventMask(m_myRichEditCtrl.GetEventMask() |
                              ENM_CHANGE);

CRichEditCtrl::SetModify

편집 컨트롤의 수정된 플래그를 설정하거나 지웁니다.

void SetModify(BOOL bModified = TRUE);

매개 변수

bModified
TRUE 은 텍스트가 수정되었음을 나타내고 값 FALSE 은 수정되지 않음을 나타냅니다. 기본적으로 수정된 플래그가 설정됩니다.

설명

수정된 플래그는 편집 컨트롤 내의 텍스트가 수정되었는지 여부를 나타냅니다. 사용자가 텍스트를 변경할 때마다 자동으로 설정됩니다. 멤버 함수를 사용하여 해당 값을 검색할 GetModify 수 있습니다.

자세한 내용은 Windows SDK를 참조 EM_SETMODIFY 하세요.

예시

GetModify에 대한 예를 참조하세요.

CRichEditCtrl::SetOLECallback

CRichEditCtrl 개체 IRichEditOleCallback 에 OLE 관련 리소스 및 정보에 액세스하는 데 사용할 개체를 제공합니다.

BOOL SetOLECallback(IRichEditOleCallback* pCallback);

매개 변수

pCallback
IRichEditOleCallback 개체가 CRichEditCtrl OLE 관련 리소스 및 정보를 가져오는 데 사용할 개체에 대한 포인터입니다.

반환 값

성공하면 0이 아닌 값입니다. 그렇지 않으면 0입니다.

설명

CRichEditCtrl 개체는 지정된 COM 개체의 사용 횟수를 증가하도록 호출 IUnknown::AddRef 합니다 pCallback.

자세한 내용은 Windows SDK의 메시지 및 EM_SETOLECALLBACK 인터페이스를 참조 IRichEditOleCallback 하세요.

CRichEditCtrl::SetOptions

CRichEditCtrl 개체에 대한 옵션을 설정합니다.

void SetOptions(
    WORD wOp,
    DWORD dwFlags);

매개 변수

wOp
작업 유형을 나타냅니다. 다음의 값 중 하나입니다.

  • ECOOP_SET 에 지정된 dwFlags옵션으로 옵션을 설정합니다.

  • ECOOP_OR 현재 옵션을 에 지정된 dwFlags옵션과 결합합니다.

  • ECOOP_AND 에서 지정 dwFlags한 현재 옵션만 유지합니다.

  • ECOOP_XOR논리적으로 배타적이거나 .dwFlags

dwFlags
서식 있는 편집 옵션입니다. 플래그 값은 주의 섹션에 나열됩니다.

설명

옵션은 다음 값의 조합일 수 있습니다.

  • ECO_AUTOWORDSELECTION 두 번 클릭할 때 자동 단어 선택

  • ECO_AUTOVSCROLL 사용자가 줄 끝에 문자를 입력하면 텍스트를 오른쪽으로 10자씩 자동으로 스크롤합니다. 사용자가 Enter 키를 누르면 컨트롤이 모든 텍스트를 다시 스크롤하여 0에 배치합니다.

  • ECO_AUTOHSCROLL 사용자가 마지막 줄에서 ENTER 키를 누르면 텍스트가 한 페이지 위로 자동으로 스크롤됩니다.

  • ECO_NOHIDESEL 편집 컨트롤의 기본 동작을 부정합니다. 기본 동작은 컨트롤이 입력 포커스를 잃을 때 선택을 숨기고 컨트롤이 입력 포커스를 받을 때 선택을 표시합니다. 지정 ECO_NOHIDESEL하면 컨트롤에 포커스가 없더라도 선택한 텍스트가 반전됩니다.

  • ECO_READONLY 사용자가 편집 컨트롤에서 텍스트를 입력하거나 편집하지 못하도록 합니다.

  • ECO_WANTRETURN 대화 상자에서 여러 줄 서식 있는 편집 컨트롤에 텍스트를 입력하는 동안 ENTER 키를 누를 때 캐리지 리턴이 삽입되도록 지정합니다. 이 스타일을 지정하지 않으면 Enter 키를 누르면 명령이 서식 있는 편집 컨트롤의 부모 창으로 전송됩니다. 이 창은 부모 창의 기본 단추(예: 대화 상자의 확인 단추)를 클릭하는 것을 모방합니다. 이 스타일은 한 줄 편집 컨트롤에 영향을 주지 않습니다.

  • ECO_SAVESEL 컨트롤이 포커스를 잃을 때 선택 영역을 유지합니다. 기본적으로 컨트롤의 전체 콘텐츠는 포커스를 다시 얻을 때 선택됩니다.

  • ECO_VERTICAL 텍스트와 개체를 세로 방향으로 그립니다. 아시아 언어로만 사용할 수 있습니다.

자세한 내용은 Windows SDK를 참조 EM_SETOPTIONS 하세요.

예시

// Add auto horizontal and vertical scrolling.
m_myRichEditCtrl.SetOptions(ECOOP_OR, ECO_AUTOVSCROLL |
                                          ECO_AUTOHSCROLL);

CRichEditCtrl::SetParaFormat

CRichEditCtrl 개체의 현재 선택 영역에 대한 단락 서식 특성을 설정합니다.

BOOL SetParaFormat(PARAFORMAT& pf);
BOOL SetParaFormat(PARAFORMAT2& pf);

매개 변수

pf
첫 번째 버전에서는 새 기본 단락 서식 특성을 포함하는 구조체에 대한 포인터 PARAFORMAT 입니다.

두 번째 버전에서는 구조체에 대한 PARAFORMAT2 Rich Edit 2.0 확장인 구조체에 대한 포인터로 PARAFORMAT , 기본 문자 서식 특성을 보유합니다.

반환 값

성공하면 0이 아닌 값입니다. 그렇지 않으면 0입니다.

설명

멤버 dwMask 가 지정한 pf 특성만 이 함수에 의해 변경됩니다.

자세한 내용은 Windows SDK의 EM_SETPARAFORMATPARAFORMAT 메시지 및 PARAFORMAT2 구조체를 참조하세요.

예시

PARAFORMAT pf;

// Modify the paragraph format so that the text is centered.
pf.cbSize = sizeof(PARAFORMAT);
pf.dwMask = PFM_ALIGNMENT;
pf.wAlignment = PFA_CENTER;
m_myRichEditCtrl.SetParaFormat(pf);

// Verify the settings are what is expected.
m_myRichEditCtrl.GetParaFormat(pf);
ASSERT(pf.dwMask &PFM_ALIGNMENT);
ASSERT(pf.wAlignment == PFA_CENTER);

CRichEditCtrl::SetPunctuation

서식 있는 편집 컨트롤의 문장 부호를 설정합니다.

BOOL SetPunctuation(
    UINT fType,
    PUNCTUATION* lpPunc);

매개 변수

fType
문장 부호 플래그입니다. 가능한 값 목록은 Windows SDK의 fType 매개 변수 EM_SETPUNCTUATION 를 참조하세요.

lpPunc
Windows SDK에 PUNCTUATION 설명된 대로 구조체에 대한 포인터입니다.

반환 값

성공하면 0이 아니고, 그렇지 않으면 0입니다.

설명

이 멤버 함수는 운영 체제의 아시아어 버전에만 사용할 수 있습니다.

CRichEditCtrl::SetReadOnly

ECO_READONLY 개체의 CRichEditCtrl 옵션을 변경합니다.

BOOL SetReadOnly(BOOL bReadOnly = TRUE);

매개 변수

bReadOnly
이 개체를 CRichEditCtrl 읽어야 하는지를 나타냅니다.

반환 값

성공하면 0이 아닌 값입니다. 그렇지 않으면 0입니다.

설명

이 옵션에 대한 간략한 설명은 다음을 참조하세요 SetOptions. 이 함수를 사용하여 이 CRichEditCtrl 개체에 대한 모든 옵션을 설정할 수 있습니다.

자세한 내용은 Windows SDK를 참조 EM_SETREADONLY 하세요.

예시

// Set the rich edit control to be read-only.
m_myRichEditCtrl.SetReadOnly(TRUE);
ASSERT(m_myRichEditCtrl.GetStyle() & ES_READONLY);

CRichEditCtrl::SetRect

CRichEditCtrl 개체의 서식 사각형을 설정합니다.

void SetRect(LPCRECT lpRect);

매개 변수

lpRect
CRect 또는 서식 지정 사각형의 새 범위를 나타내는 포인터 RECT 입니다.

설명

서식 지정 사각형은 텍스트의 제한 사각형입니다. 제한 사각형은 서식 있는 편집 컨트롤 창의 크기와는 독립적입니다. 이 CRichEditCtrl 개체를 처음 만들 때 서식 지정 사각형은 창의 클라이언트 영역과 크기가 같습니다. 서식 사각형을 서식 있는 편집 창보다 크거나 작게 만드는 데 사용합니다 SetRect .

자세한 내용은 Windows SDK를 참조 EM_SETRECT 하세요.

예시

CRect r;

m_myRichEditCtrl.GetRect(&r);

// Reduce the formatting rect of the rich edit control by
// 10 pixels on each side.
if ((r.Width() > 20) && (r.Height() > 20))
{
   r.DeflateRect(0, 20);
   m_myRichEditCtrl.SetRect(&r);
}

CRichEditCtrl::SetSel

CRichEditCtrl 개체 내에서 선택 영역을 설정합니다.

void SetSel(
    long nStartChar,
    long nEndChar);

void SetSel(CHARRANGE& cr);

매개 변수

nStartChar
선택 영역에 대한 첫 번째 문자의 인덱스(0부터 시작)입니다.

nEndChar
선택 영역에 대한 마지막 문자의 인덱스(0부터 시작하는 인덱스)입니다.

cr
CHARRANGE 현재 선택 영역의 범위를 보유하는 구조체입니다.

설명

이 함수의 두 가지 형태는 선택 영역의 범위를 설정하는 다른 방법을 제공합니다. 이러한 양식에 대한 간략한 설명은 다음과 같습니다.

  • SetSel(cr) 이 양식은 CHARRANGE 구조체와 cpMin 멤버를 cpMax 사용하여 경계를 설정합니다.

  • SetSel(nStartChar ,nEndChar) 이 양식은 매개 변수 nStartCharnEndChar를 사용하여 경계를 설정합니다.

caret는 시작(또는) 및 끝(cpMin또는nStartCharcpMax) 인덱스의 큰 값으로 표시된 선택 영역의 끝에nEndChar 배치됩니다. 이 함수는 캐리트가 표시되도록 내용을 CRichEditCtrl 스크롤합니다.

CRichEditCtrl 개체의 모든 텍스트를 선택하려면 시작 인덱스가 0이고 끝 인덱스가 - 1인 상태에서 호출 SetSel 합니다.

자세한 내용은 Windows SDK의 메시지 및 EM_EXSETSEL 구조를 참조 CHARRANGE 하세요.

예시

GetSel에 대한 예를 참조하세요.

CRichEditCtrl::SetSelectionCharFormat

CRichEditCtrl 개체의 현재 선택 영역에 있는 텍스트의 문자 서식 특성을 설정합니다.

BOOL SetSelectionCharFormat(CHARFORMAT& cf);
BOOL SetSelectionCharFormat(CHARFORMAT2& cf);

매개 변수

cf
첫 번째 버전에서는 현재 선택 영역에 대한 새 문자 서식 특성을 포함하는 구조체에 대한 포인터 CHARFORMAT 입니다.

두 번째 버전에서는 현재 선택 영역에 대한 새 문자 서식 특성을 포함하는 구조체에 대한 Rich Edit 2.0 확장 CHARFORMAT2 인 구조체에 대한 포인터 CHARFORMAT 입니다.

반환 값

성공하면 0이 아닌 값입니다. 그렇지 않으면 0입니다.

설명

cfdwMask멤버가 지정한 특성만 이 함수에 의해 변경됩니다.

자세한 내용은 Windows SDK의 EM_SETCHARFORMATCHARFORMAT 구조 및 CHARFORMAT2 구성을 참조하세요.

예시

CHARFORMAT cf;

// Modify the selection format so that the selected text is
// displayed in bold and not striked out.
cf.cbSize = sizeof(cf);
cf.dwMask = CFM_STRIKEOUT | CFM_BOLD;
cf.dwEffects = CFE_BOLD;
m_myRichEditCtrl.SetSelectionCharFormat(cf);

// Verify the settings are what is expected.
m_myRichEditCtrl.GetSelectionCharFormat(cf);
ASSERT((cf.dwMask & (CFM_STRIKEOUT | CFM_BOLD)) ==
       (CFM_STRIKEOUT | CFM_BOLD));
ASSERT((cf.dwEffects & (CFE_STRIKEOUT | CFE_BOLD)) == CFE_BOLD);

CRichEditCtrl::SetTargetDevice

CRichEditCtrl 개체의 WYSIWYG(표시되는 내용)에 사용되는 대상 디바이스 및 선 너비를 설정합니다.

BOOL SetTargetDevice(
    HDC hDC,
    long lLineWidth);

BOOL SetTargetDevice(
    CDC& dc,
    long lLineWidth);

매개 변수

hDC
새 대상 디바이스에 대한 디바이스 컨텍스트를 처리합니다.

lLineWidth
서식 지정에 사용할 선 너비입니다.

dc
CDC 새 대상 디바이스에 대한 입니다.

반환 값

성공하면 0이 아닌 값입니다. 그렇지 않으면 0입니다.

설명

이 함수가 성공하면 리치 편집 컨트롤은 매개 변수로 전달된 디바이스 컨텍스트를 소유합니다. 이 경우 호출 함수는 디바이스 컨텍스트를 삭제해서는 안 됩니다.

자세한 내용은 Windows SDK를 참조 EM_SETTARGETDEVICE 하세요.

예시

// First obtain a pointer to a printer DC.
CPageSetupDialog psDlg;
if (IDOK == psDlg.DoModal())
{
   CDC *pMyPrinterDC = CDC::FromHandle(psDlg.CreatePrinterDC());

   // Get line width information from the printer.
   long lLineWidth = ::MulDiv(pMyPrinterDC->GetDeviceCaps(PHYSICALWIDTH),
                              1440, pMyPrinterDC->GetDeviceCaps(LOGPIXELSX));

   // Set the printer as the target device.
   m_myRichEditCtrl.SetTargetDevice(*pMyPrinterDC, lLineWidth);

   pMyPrinterDC->DeleteDC();
}

CRichEditCtrl::SetTextMode

서식 있는 편집 컨트롤의 텍스트 모드 또는 실행 취소 및 다시 실행 수준을 설정합니다.

BOOL SetTextMode(UINT fMode);

매개 변수

fMode
컨트롤의 텍스트 모드에 대한 새 설정을 지정하고 수준 매개 변수를 실행 취소합니다. 가능한 값 목록은 Windows SDK의 모드 매개 변수 EM_SETTEXTMODE 를 참조하세요.

반환 값

성공하면 0이고, 그렇지 않으면 0이 아닙니다.

설명

텍스트 모드에 대한 설명은 Windows SDK를 참조 EM_SETTEXTMODE 하세요.

컨트롤에 텍스트가 포함되어 있으면 이 멤버 함수가 실패합니다. 컨트롤이 비어 있는지 확인하려면 빈 문자열이 포함된 WM_SETTEXT 메시지를 보냅니다.

CRichEditCtrl::SetUndoLimit

실행 취소 큐에 저장할 수 있는 최대 작업 수를 설정합니다.

UINT SetUndoLimit(UINT nLimit);

매개 변수

nLimit
실행 취소 큐에 저장할 수 있는 최대 작업 수를 지정합니다. 실행 취소를 사용하지 않도록 설정하려면 0으로 설정합니다.

반환 값

서식 있는 편집 컨트롤에 대한 실행 취소 작업의 새 최대 수입니다.

설명

기본적으로 실행 취소 큐의 최대 작업 수는 100개입니다. 이 숫자를 늘리면 새 숫자를 수용할 수 있는 충분한 사용 가능한 메모리가 있어야 합니다. 더 나은 성능을 위해 제한을 가능한 가장 작은 값으로 설정합니다.

CRichEditCtrl::SetWordCharFormat

CRichEditCtrl 개체에서 현재 선택한 단어의 문자 서식 특성을 설정합니다.

BOOL SetWordCharFormat(CHARFORMAT& cf);
BOOL SetWordCharFormat(CHARFORMAT2& cf);

매개 변수

cf
첫 번째 버전에서는 현재 선택한 단어에 CHARFORMAT 대한 새 문자 서식 특성을 포함하는 구조체에 대한 포인터입니다.

두 번째 버전에서는 현재 선택한 단어에 CHARFORMAT2 대한 새 문자 서식 특성을 포함하는 구조체에 대한 Rich Edit 2.0 확장 CHARFORMAT 인 구조체에 대한 포인터입니다.

반환 값

성공하면 0이 아닌 값입니다. 그렇지 않으면 0입니다.

설명

멤버 dwMask 가 지정한 cf 특성만 이 함수에 의해 변경됩니다.

자세한 내용은 Windows SDK의 EM_SETCHARFORMATCHARFORMAT 메시지 및 CHARFORMAT2 구조체를 참조하세요.

예시

CHARFORMAT cf;

// Modify the word format so that the selected word is
// displayed in bold and not striked out.
cf.cbSize = sizeof(cf);
cf.dwMask = CFM_STRIKEOUT | CFM_BOLD;
cf.dwEffects = CFE_BOLD;
m_myRichEditCtrl.SetWordCharFormat(cf);

CRichEditCtrl::SetWordWrapMode

서식 있는 편집 컨트롤에 대한 자동 줄 바꿈 및 단어 분리 옵션을 설정합니다.

UINT SetWordWrapMode(UINT uFlags) const;

매개 변수

uFlags
단어 줄 바꿈 및 단어 분리에 대해 설정하는 옵션입니다. 가능한 옵션 목록은 Windows SDK를 참조 EM_SETWORDWRAPMODE 하세요.

반환 값

현재 단어 줄 바꿈 및 단어 분리 옵션입니다.

설명

이 메시지는 운영 체제의 아시아 언어 버전에서만 사용할 수 있습니다.

CRichEditCtrl::StopGroupTyping

컨트롤이 추가 입력 작업을 현재 실행 취소 작업으로 수집하는 것을 중지합니다.

void StopGroupTyping();

설명

컨트롤은 실행 취소 큐의 새 작업에 다음 입력 작업(있는 경우)을 저장합니다.

자세한 내용은 Windows SDK를 참조 EM_STOPGROUPTYPING 하세요.

CRichEditCtrl::StreamIn

CRichEditCtrl 개체의 텍스트를 지정된 입력 스트림의 텍스트로 바꿉니다.

long StreamIn(
    int nFormat,
    EDITSTREAM& es);

매개 변수

nFormat
입력 데이터 형식을 지정하는 플래그입니다. 자세한 내용은 설명 부분을 참조하세요.

es
EDITSTREAM 입력 스트림을 지정하는 구조체입니다. 자세한 내용은 설명 부분을 참조하세요.

반환 값

입력 스트림에서 읽은 문자 수입니다.

설명

nFormat 은 다음 중 하나여야 합니다.

  • SF_TEXT 텍스트 읽기 전용을 나타냅니다.

  • SF_RTF 텍스트 읽기 및 서식을 나타냅니다.

이러한 값 중 하나를 .와 결합 SFF_SELECTION할 수 있습니다. 지정 SFF_SELECTION 한 경우 StreamIn 현재 선택 영역을 입력 스트림의 내용으로 바꿉니다. 지정 StreamIn 하지 않으면 이 CRichEditCtrl 개체의 전체 내용을 바꿉니다.

EDITSTREAM 매개 변수es에서 버퍼를 텍스트로 채우는 콜백 함수를 지정합니다. 이 콜백 함수는 입력 스트림이 소진될 때까지 반복적으로 호출됩니다.

자세한 내용은 Windows SDK의 메시지 및 EM_STREAMIN 구조를 참조 EDITSTREAM 하세요.

예시

// My callback procedure that reads the rich edit control contents
// from a file.
static DWORD CALLBACK 
MyStreamInCallback(DWORD dwCookie, LPBYTE pbBuff, LONG cb, LONG *pcb)
{
   CFile* pFile = (CFile*) dwCookie;

   *pcb = pFile->Read(pbBuff, cb);

   return 0;
}

 

// The example code.

// The file from which to load the contents of the rich edit control.
CFile cFile(TEXT("My_RichEdit_InFile.rtf"), CFile::modeRead);
EDITSTREAM es;

es.dwCookie = (DWORD)&cFile;
es.pfnCallback = MyStreamInCallback;
m_myRichEditCtrl.StreamIn(SF_RTF, es);

CRichEditCtrl::StreamOut

CRichEditCtrl 개체의 내용을 지정된 출력 스트림에 씁니다.

long StreamOut(
    int nFormat,
    EDITSTREAM& es);

매개 변수

nFormat
출력 데이터 형식을 지정하는 플래그입니다. 자세한 내용은 설명 부분을 참조하세요.

es
EDITSTREAM 출력 스트림을 지정하는 구조체입니다. 자세한 내용은 설명 부분을 참조하세요.

반환 값

출력 스트림에 기록된 문자 수입니다.

설명

nFormat 은 다음 중 하나여야 합니다.

  • SF_TEXT 텍스트만 작성했음을 나타냅니다.

  • SF_RTF 텍스트 작성 및 서식 지정을 나타냅니다.

  • SF_RTFNOOBJS 텍스트 및 서식을 작성하고 OLE 항목을 공백으로 대체합니다.

  • SF_TEXTIZED OLE 항목의 텍스트 표현을 사용하여 텍스트 및 서식을 작성합니다.

이러한 값은 모두 .와 결합 SFF_SELECTION할 수 있습니다. 지정 SFF_SELECTION 한 경우 StreamOut 현재 선택 영역을 출력 스트림에 씁니다. 지정 StreamOut 하지 않으면 이 CRichEditCtrl 개체의 전체 내용을 씁니다.

EDITSTREAM 매개 변수es에서 버퍼를 텍스트로 채우는 콜백 함수를 지정합니다. 이 콜백 함수는 출력 스트림이 소진될 때까지 반복적으로 호출됩니다.

자세한 내용은 Windows SDK의 메시지 및 EM_STREAMOUT 구조를 참조 EDITSTREAM 하세요.

예시

// My callback procedure that writes the rich edit control contents
// to a file.
static DWORD CALLBACK 
MyStreamOutCallback(DWORD dwCookie, LPBYTE pbBuff, LONG cb, LONG *pcb)
{
   CFile* pFile = (CFile*) dwCookie;

   pFile->Write(pbBuff, cb);
   *pcb = cb;

   return 0;
}

 

// The example code.

// The file to store the contents of the rich edit control.
CFile cFile(TEXT("My_RichEdit_OutFile.rtf"),
            CFile::modeCreate | CFile::modeWrite);
EDITSTREAM es;

es.dwCookie = (DWORD)&cFile;
es.pfnCallback = MyStreamOutCallback;
m_myRichEditCtrl.StreamOut(SF_RTF, es);

CRichEditCtrl::Undo

서식 있는 편집 컨트롤의 마지막 작업을 실행 취소합니다.

BOOL Undo();

반환 값

실행 취소 작업이 성공하면 0이 아닌 경우 그렇지 않으면 0입니다.

설명

실행 취소 작업을 실행 취소할 수도 있습니다. 예를 들어 첫 번째 호출을 사용하여 삭제된 텍스트를 복원할 Undo수 있습니다. 중간 편집 작업이 없는 한 두 번째 호출 Undo을 사용하여 텍스트를 다시 제거할 수 있습니다.

자세한 내용은 Windows SDK를 참조 EM_UNDO 하세요.

예시

CanUndo에 대한 예를 참조하세요.

참고 항목

MFC 샘플 WORDPAD
CWnd 클래스
계층 구조 차트
CEdit 클래스
CRichEditView 클래스