CRichEditCtrl-Klasse

Stellt die Funktionalität des Rich-Edit-Steuerelements bereit.

Syntax

class CRichEditCtrl : public CWnd

Member

Öffentliche Konstruktoren

Name Beschreibung
CRichEditCtrl::CRichEditCtrl Erstellt ein CRichEditCtrl-Objekt.

Öffentliche Methoden

Name Beschreibung
CRichEditCtrl::CanPaste Bestimmt, ob der Inhalt der Zwischenablage in dieses Rich-Edit-Steuerelement eingefügt werden kann.
CRichEditCtrl::CanRedo Bestimmt, ob aktionen in der Redo-Warteschlange des Steuerelements vorhanden sind.
CRichEditCtrl::CanUndo Bestimmt, ob ein Bearbeitungsvorgang rückgängig gemacht werden kann.
CRichEditCtrl::CharFromPos Ruft Informationen zum Zeichen ab, das einem bestimmten Punkt im Clientbereich eines Bearbeitungssteuerelements am nächsten kommt.
CRichEditCtrl::Clear Löscht die aktuelle Auswahl.
CRichEditCtrl::Copy Kopiert die aktuelle Auswahl in die Zwischenablage.
CRichEditCtrl::Create Erstellt das Windows Rich Edit-Steuerelement und ordnet es diesem CRichEditCtrl Objekt zu.
CRichEditCtrl::CreateEx Erstellt das Windows Rich Edit-Steuerelement mit den angegebenen erweiterten Windows-Stilen und ordnet es diesem CRichEditCtrl Objekt zu.
CRichEditCtrl::Cut Schneidet die aktuelle Auswahl in die Zwischenablage.
CRichEditCtrl::DisplayBand Zeigt einen Teil des Inhalts dieses CRichEditCtrl Objekts an.
CRichEditCtrl::EmptyUndoBuffer Setzt das Rückgängig-Kennzeichen dieses CRichEditCtrl Objekts zurück (löscht sie).
CRichEditCtrl::FindText Sucht Text in diesem CRichEditCtrl Objekt.
CRichEditCtrl::FindWordBreak Sucht den nächsten Wortwechsel vor oder nach der angegebenen Zeichenposition oder ruft Informationen zum Zeichen an dieser Position ab.
CRichEditCtrl::FormatRange Formatiert einen Textbereich für das Zielausgabegerät.
CRichEditCtrl::GetCharPos Bestimmt die Position eines bestimmten Zeichens innerhalb dieses CRichEditCtrl Objekts.
CRichEditCtrl::GetDefaultCharFormat Ruft die aktuellen Standardzeichenformatierungsattribute in diesem CRichEditCtrl Objekt ab.
CRichEditCtrl::GetEventMask Ruft das Ereignisformat für dieses CRichEditCtrl Objekt ab.
CRichEditCtrl::GetFirstVisibleLine Bestimmt die oberste sichtbare Linie in diesem CRichEditCtrl Objekt.
CRichEditCtrl::GetIRichEditOle Ruft einen Zeiger auf die IRichEditOle Schnittstelle für dieses Rich-Edit-Steuerelement ab.
CRichEditCtrl::GetLimitText Ruft den Grenzwert für die Textmenge ab, die ein Benutzer in dieses CRichEditCtrl Objekt eingeben kann.
CRichEditCtrl::GetLine Ruft eine Textzeile aus diesem CRichEditCtrl Objekt ab.
CRichEditCtrl::GetLineCount Ruft die Anzahl der Zeilen in diesem CRichEditCtrl Objekt ab.
CRichEditCtrl::GetModify Bestimmt, ob sich der Inhalt dieses CRichEditCtrl Objekts seit dem letzten Speichern geändert hat.
CRichEditCtrl::GetOptions Ruft die Rich-Edit-Steuerelementoptionen ab.
CRichEditCtrl::GetParaFormat Ruft die Absatzformatierungsattribute in der aktuellen Auswahl in diesem CRichEditCtrl Objekt ab.
CRichEditCtrl::GetPunctuation Ruft die aktuellen Interpunktionszeichen für das Rich-Edit-Steuerelement ab. Diese Meldung ist nur in asiatischen Versionen des Betriebssystems verfügbar.
CRichEditCtrl::GetRect Ruft das Formatierungsrechteck für dieses CRichEditCtrl Objekt ab.
CRichEditCtrl::GetRedoName Ruft den Typ der nächsten Aktion (falls vorhanden) in der Redo-Warteschlange des Steuerelements ab.
CRichEditCtrl::GetSel Ruft die Anfangs- und Endpositionen der aktuellen Auswahl in diesem CRichEditCtrl Objekt ab.
CRichEditCtrl::GetSelectionCharFormat Ruft die Zeichenformatierungsattribute in der aktuellen Auswahl in diesem CRichEditCtrl Objekt ab.
CRichEditCtrl::GetSelectionType Ruft den Inhaltstyp in der aktuellen Auswahl in diesem CRichEditCtrl Objekt ab.
CRichEditCtrl::GetSelText Ruft den Text der aktuellen Markierung in diesem CRichEditCtrl Objekt ab.
CRichEditCtrl::GetTextLength Ruft die Länge des Texts in Zeichen in diesem CRichEditCtrl Objekt ab. Enthält nicht das endende Nullzeichen.
CRichEditCtrl::GetTextLengthEx Ruft die Anzahl der Zeichen oder Bytes in der Rich-Edit-Ansicht ab. Akzeptiert eine Liste von Flags, um die Methode zur Bestimmung der Länge des Texts in einem Rich-Edit-Steuerelement anzugeben.
CRichEditCtrl::GetTextMode Ruft den aktuellen Textmodus und die Rückgängig-Ebene eines Rich-Edit-Steuerelements ab.
CRichEditCtrl::GetTextRange Ruft den angegebenen Textbereich ab.
CRichEditCtrl::GetUndoName Ruft den Typ der nächsten Rückgängig-Aktion ab, falls vorhanden.
CRichEditCtrl::GetWordWrapMode Ruft die aktuellen Wörterumbruch- und Wortumbruchoptionen für das Rich-Edit-Steuerelement ab. Diese Meldung ist nur in asiatischen Versionen des Betriebssystems verfügbar.
CRichEditCtrl::HideSelection Blendet die aktuelle Auswahl ein oder aus.
CRichEditCtrl::LimitText Beschränkt die Textmenge, die ein Benutzer in das CRichEditCtrl Objekt eingeben kann.
CRichEditCtrl::LineFromChar Bestimmt, welche Zeile das angegebene Zeichen enthält.
CRichEditCtrl::LineIndex Ruft den Zeichenindex einer bestimmten Zeile in diesem CRichEditCtrl Objekt ab.
CRichEditCtrl::LineLength Ruft die Länge einer bestimmten Zeile in diesem CRichEditCtrl Objekt ab.
CRichEditCtrl::LineScroll Scrollt den Text in diesem CRichEditCtrl Objekt.
CRichEditCtrl::Paste Fügt den Inhalt der Zwischenablage in dieses Rich-Edit-Steuerelement ein.
CRichEditCtrl::PasteSpecial Fügt den Inhalt der Zwischenablage in dieses Rich-Edit-Steuerelement im angegebenen Datenformat ein.
CRichEditCtrl::PosFromChar Ruft die Clientbereichskoordinaten eines angegebenen Zeichens in einem Bearbeitungssteuerelement ab.
CRichEditCtrl::Redo Wiederholt die nächste Aktion in der Redo-Warteschlange des Steuerelements.
CRichEditCtrl::ReplaceSel Ersetzt die aktuelle Markierung in diesem CRichEditCtrl Objekt durch angegebenen Text.
CRichEditCtrl::RequestResize Erzwingt, dass dieses CRichEditCtrl Objekt Anforderungsänderungsbenachrichtigungen sendet.
CRichEditCtrl::SetAutoURLDetect Gibt an, ob die Automatische URL-Erkennung in einem Rich-Edit-Steuerelement aktiv ist.
CRichEditCtrl::SetBackgroundColor Legt die Hintergrundfarbe in diesem CRichEditCtrl Objekt fest.
CRichEditCtrl::SetDefaultCharFormat Legt die aktuellen Standardzeichenformatierungsattribute in diesem CRichEditCtrl Objekt fest.
CRichEditCtrl::SetEventMask Legt das Ereignisformat für dieses CRichEditCtrl Objekt fest.
CRichEditCtrl::SetModify Legt die Änderungskennzeichnung für dieses CRichEditCtrl Objekt fest oder löscht sie.
CRichEditCtrl::SetOLECallback Legt das IRichEditOleCallback COM-Objekt für dieses Rich-Edit-Steuerelement fest.
CRichEditCtrl::SetOptions Legt die Optionen für dieses CRichEditCtrl Objekt fest.
CRichEditCtrl::SetParaFormat Legt die Absatzformatierungsattribute in der aktuellen Auswahl in diesem CRichEditCtrl Objekt fest.
CRichEditCtrl::SetPunctuation Legt die Interpunktionszeichen für ein Rich-Edit-Steuerelement fest. Diese Meldung ist nur in asiatischen Versionen des Betriebssystems verfügbar.
CRichEditCtrl::SetReadOnly Legt die schreibgeschützte Option für dieses CRichEditCtrl Objekt fest.
CRichEditCtrl::SetRect Legt das Formatierungsrechteck für dieses CRichEditCtrl Objekt fest.
CRichEditCtrl::SetSel Legt die Auswahl in diesem CRichEditCtrl Objekt fest.
CRichEditCtrl::SetSelectionCharFormat Legt die Zeichenformatierungsattribute in der aktuellen Auswahl in diesem CRichEditCtrl Objekt fest.
CRichEditCtrl::SetTargetDevice Legt das Zielausgabegerät für dieses CRichEditCtrl Objekt fest.
CRichEditCtrl::SetTextMode Legt den Textmodus oder die Rückgängig-Ebene eines Rich-Edit-Steuerelements fest. Die Nachricht schlägt fehl, wenn das Steuerelement Text enthält.
CRichEditCtrl::SetUndoLimit Legt die maximale Anzahl von Aktionen fest, die in der Rückgängig-Warteschlange gespeichert werden können.
CRichEditCtrl::SetWordCharFormat Legt die Zeichenformatierungsattribute im aktuellen Wort in diesem CRichEditCtrl Objekt fest.
CRichEditCtrl::SetWordWrapMode Legt die Wörterumbruch- und Wortumbruchoptionen für das Rich-Edit-Steuerelement fest. Diese Meldung ist nur in asiatischen Versionen des Betriebssystems verfügbar.
CRichEditCtrl::StopGroupTyping Verhindert, dass das Steuerelement zusätzliche Eingabeaktionen in die aktuelle Rückgängig-Aktion sammelt. Das Steuerelement speichert ggf. die nächste Eingabeaktion in einer neuen Aktion in der Rückgängig-Warteschlange.
CRichEditCtrl::StreamIn Fügt Text aus einem Eingabedatenstrom in dieses CRichEditCtrl Objekt ein.
CRichEditCtrl::StreamOut Speichert Text aus diesem CRichEditCtrl Objekt in einem Ausgabedatenstrom.
CRichEditCtrl::Undo Kehrt den letzten Bearbeitungsvorgang um.

Hinweise

Ein "Rich Edit Control" ist ein Fenster, in dem der Benutzer Text eingeben und bearbeiten kann. Der Text kann Zeichen- und Absatzformatierungen zugewiesen werden und eingebettete OLE-Objekte enthalten. Rich-Edit-Steuerelemente bieten eine Programmierschnittstelle zum Formatieren von Text. Eine Anwendung muss jedoch alle Benutzeroberflächenkomponenten implementieren, die erforderlich sind, um dem Benutzer Formatierungsvorgänge zur Verfügung zu stellen.

Dieses allgemeine Windows-Steuerelement (und daher die Klasse) ist nur für Programme verfügbar, die CRichEditCtrl unter Windows 95/98 und Windows NT,3.51 und höher ausgeführt werden. Die CRichEditCtrl Klasse unterstützt die Versionen 2.0 und 3.0 des Windows SDK-Rich-Edit-Steuerelements.

Achtung

Wenn Sie ein Rich-Edit-Steuerelement in einem Dialogfeld verwenden (unabhängig davon, ob ihre Anwendung SDI, MDI oder dialogbasiert ist), müssen Sie einmal aufrufen AfxInitRichEdit , bevor das Dialogfeld angezeigt wird. Ein typischer Ort zum Aufrufen dieser Funktion befindet sich in der Memberfunktion Ihres Programms InitInstance . Sie müssen es nicht jedes Mal aufrufen, wenn Sie das Dialogfeld anzeigen, nur das erste Mal. Sie müssen nicht anrufen AfxInitRichEdit , wenn Sie mit CRichEditViewihnen arbeiten.

Weitere Informationen zur Verwendung CRichEditCtrlfinden Sie unter:

Ein Beispiel für die Verwendung eines Rich-Edit-Steuerelements in einer MFC-Anwendung finden Sie in der WORDPAD-Beispielanwendung .

Vererbungshierarchie

CObject

CCmdTarget

CWnd

CRichEditCtrl

Anforderungen

Headerafxcmn.h:

CRichEditCtrl::CanPaste

Bestimmt, ob das Rich-Edit-Steuerelement das angegebene Zwischenablageformat einfügen kann.

BOOL CanPaste(UINT nFormat = 0) const;

Parameter

nFormat
Das zu abfragende Datenformat der Zwischenablage. Dieser Parameter kann eines der vordefinierten Zwischenablageformate oder der von RegisterClipboardFormatihnen zurückgegebene Wert sein.

Rückgabewert

Nonzero, wenn das Format der Zwischenablage eingefügt werden kann; andernfalls 0.

Hinweise

Wenn nFormat 0 ist, CanPaste versuchen Sie es mit einem beliebigen Format, das sich derzeit in der Zwischenablage befindet.

Weitere Informationen finden Sie unter EM_CANPASTE Meldung und RegisterClipboardFormat Funktion im Windows SDK.

Beispiel

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

CRichEditCtrl::CanRedo

Bestimmt, ob die Redo-Warteschlange Aktionen enthält.

BOOL CanRedo() const;

Rückgabewert

Nonzero, wenn die Redo-Warteschlange Aktionen enthält, andernfalls 0.

Hinweise

Rufen Sie auf CRichEditCtrl::GetRedoName, um den Namen des Vorgangs in der Redo-Warteschlange zu ermitteln. Rufen Sie zum Wiederholen des letzten Rückgängig-Vorgangs auf Redo.

Weitere Informationen finden Sie im EM_CANREDO Windows SDK.

CRichEditCtrl::CanUndo

Bestimmt, ob der letzte Bearbeitungsvorgang rückgängig gemacht werden kann.

BOOL CanUndo() const;

Rückgabewert

Nonzero, wenn der letzte Bearbeitungsvorgang durch einen Aufruf der Undo Memberfunktion rückgängig gemacht werden kann; 0, wenn er nicht rückgängig gemacht werden kann.

Hinweise

Weitere Informationen finden Sie im EM_CANUNDO Windows SDK.

Beispiel

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

CRichEditCtrl::CharFromPos

Ruft Informationen zum Zeichen an dem durch den Parameter ptangegebenen Punkt ab.

int CharFromPos(CPoint pt) const;

Parameter

pt
Ein CPoint Objekt, das die Koordinaten des angegebenen Punkts enthält.

Rückgabewert

Der nullbasierte Zeichenindex des Zeichens, das dem angegebenen Punkt am nächsten ist. Wenn der angegebene Punkt über das letzte Zeichen im Steuerelement hinausgeht, gibt der Rückgabewert das letzte Zeichen im Steuerelement an.

Hinweise

Diese Memberfunktion funktioniert mit einem Rich-Edit-Steuerelement. Rufen Sie auf, um CEdit::CharFromPosdie Informationen für ein Bearbeitungssteuerelement abzurufen.

Weitere Informationen finden Sie im EM_CHARFROMPOS Windows SDK.

CRichEditCtrl::Clear

Löscht die aktuelle Auswahl (falls vorhanden) im Rich-Edit-Steuerelement.

void Clear();

Hinweise

Der von Clear ihnen ausgeführte Löschvorgang kann durch Aufrufen der Undo Memberfunktion rückgängig gemacht werden.

Rufen Sie die Memberfunktion auf, um die aktuelle Auswahl zu löschen und den gelöschten Inhalt in die Cut Zwischenablage zu setzen.

Weitere Informationen finden Sie im WM_CLEAR Windows SDK.

Beispiel

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

CRichEditCtrl::Copy

Kopiert die aktuelle Auswahl (falls vorhanden) im Rich-Edit-Steuerelement in die Zwischenablage.

void Copy();

Hinweise

Weitere Informationen finden Sie im WM_COPY Windows SDK.

Beispiel

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

CRichEditCtrl::Create

Erstellt das Windows Rich Edit-Steuerelement und ordnet es diesem CRichEditCtrl Objekt zu.

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

Parameter

dwStyle
Gibt die Formatvorlage des Bearbeitungssteuerelements an. Wenden Sie eine Kombination der im Abschnitt "Hinweise" aufgeführten Fensterformatvorlagen an, und bearbeiten Sie Steuerelementstile, die im Windows SDK beschrieben werden.

rect
Gibt die Größe und Position des Bearbeitungssteuerelements an. Kann ein Objekt oder RECT eine CRect Struktur sein.

pParentWnd
Gibt das übergeordnete Fenster des Bearbeitungssteuerelements an (häufig ein CDialog). Es darf nicht sein NULL.

nID
Gibt die ID des Bearbeitungssteuerelements an.

Rückgabewert

Nonzero, wenn die Initialisierung erfolgreich ist; andernfalls 0.

Hinweise

Sie erstellen ein CRichEditCtrl Objekt in zwei Schritten. Rufen Sie zuerst den CRichEditCtrl Konstruktor auf, und rufen Sie ihn dann auf Create, wodurch das Windows-Bearbeitungssteuerelement erstellt und an das CRichEditCtrl Objekt angefügt wird.

Wenn Sie ein Rich-Edit-Steuerelement mit dieser Funktion erstellen, müssen Sie zuerst die erforderliche allgemeine Steuerelementbibliothek laden. Rufen Sie zum Laden der Bibliothek die globale Funktion AfxInitRichEditauf, die wiederum die allgemeine Steuerelementbibliothek initialisiert. Sie müssen nur einmal in Ihrem Prozess aufrufen AfxInitRichEdit .

Bei Create Ausführung sendet Windows die WM_NCCREATE, WM_NCCALCSIZE, WM_CREATE, und WM_GETMINMAXINFO Nachrichten an das Bearbeitungssteuerelement.

Diese Nachrichten werden standardmäßig von den OnNcCreateFunktionen , OnNcCalcSize, , OnCreateund OnGetMinMaxInfo Member in der CWnd Basisklasse behandelt. Um die Standardmäßige Nachrichtenbehandlung zu erweitern, leiten Sie eine Klasse ab CRichEditCtrl, fügen Sie der neuen Klasse eine Nachrichtenzuordnung hinzu, und überschreiben Sie die obigen Nachrichtenhandlermemmfunktionen. Überschreiben OnCreateSie z. B. die erforderliche Initialisierung für die neue Klasse.

Wenden Sie die folgenden Fensterformatvorlagen auf ein Bearbeitungssteuerelement an.

  • WS_CHILD Immer.

  • WS_VISIBLE Normalerweise.

  • WS_DISABLED Selten.

  • WS_GROUP So gruppieren Sie Steuerelemente.

  • WS_TABSTOP So fügen Sie das Bearbeitungssteuerelement in die Aktivierreihenfolge ein.

Weitere Informationen zu Fensterformatvorlagen finden Sie im CreateWindow Windows SDK.

Beispiel

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

CRichEditCtrl::CreateEx

Erstellt ein Steuerelement (ein untergeordnetes Fenster) und ordnet es dem Objekt zu CRichEditCtrl .

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

Parameter

dwExStyle
Gibt die erweiterte Formatvorlage des zu erstellenden Steuerelements an. Eine Liste der erweiterten Windows-Stile finden Sie im dwExStyle Parameter für CreateWindowEx das Windows SDK.

dwStyle
Gibt die Formatvorlage des Bearbeitungssteuerelements an. Wenden Sie eine Kombination der fensterformatvorlagen an, die im Abschnitt "Hinweise " der Create im Windows SDK beschriebenen Steuerelementformatvorlagen und -bearbeitungsarten aufgeführt sind.

rect
Ein Verweis auf eine RECT Struktur, die die Größe und Position des zu erstellenden Fensters in Clientkoordinaten pParentWndbeschreibt.

pParentWnd
Ein Zeiger auf das Fenster, das das übergeordnete Steuerelement ist.

nID
Die Untergeordnete Fenster-ID des Steuerelements.

Rückgabewert

Ungleich Null, wenn erfolgreich, andernfalls 0 (Null).

Hinweise

Verwenden Sie CreateEx anstelle von Create erweiterten Windows-Formatvorlagen, die durch die Erweiterte Formatvorlage WS_EX_von Windows angegeben werden.

CRichEditCtrl::CRichEditCtrl

Erstellt ein CRichEditCtrl-Objekt.

CRichEditCtrl();

Hinweise

Wird Create verwendet, um das Windows Rich Edit-Steuerelement zu erstellen.

Beispiel

// Declare a local CRichEditCtrl object.
CRichEditCtrl myRichEditCtrl;

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

CRichEditCtrl::Cut

Löschen (Ausschnitte) der aktuellen Auswahl (falls vorhanden) im Rich-Edit-Steuerelement und kopiert den gelöschten Text in die Zwischenablage.

void Cut();

Hinweise

Der von Cut ihnen ausgeführte Löschvorgang kann durch Aufrufen der Undo Memberfunktion rückgängig gemacht werden.

Um die aktuelle Auswahl zu löschen, ohne den gelöschten Text in die Zwischenablage zu setzen, rufen Sie die Clear Memberfunktion auf.

Weitere Informationen finden Sie im WM_CUT Windows SDK.

Beispiel

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

CRichEditCtrl::DisplayBand

Zeigt einen Teil des Inhalts des Rich-Edit-Steuerelements (Text und OLE-Elemente) wie zuvor formatiert an FormatRange.

BOOL DisplayBand(LPRECT pDisplayRect);

Parameter

pDisplayRect
Zeigen Sie auf ein RECT Oder CRect Objekt, das den Bereich des Geräts angibt, um den Text anzuzeigen.

Rückgabewert

Nonzero, wenn die Anzeige des formatierten Texts erfolgreich ist, andernfalls 0.

Hinweise

Der Text und die OLE-Elemente werden auf den bereich zugeschnitten, der durch den Zeiger angegeben wird pDisplayRect.

Weitere Informationen finden Sie im EM_DISPLAYBAND Windows SDK.

Beispiel

Sehen Sie sich das Beispiel für CRichEditCtrl::FormatRange.

CRichEditCtrl::EmptyUndoBuffer

Setzt das Rückgängig-Kennzeichen dieses Rich-Edit-Steuerelements zurück (löschen).

void EmptyUndoBuffer();

Hinweise

Das Steuerelement kann nun den letzten Bearbeitungsvorgang nicht rückgängig machen. Das Rückgängig-Flag wird festgelegt, wenn ein Vorgang innerhalb des Rich-Edit-Steuerelements rückgängig gemacht werden kann.

Das Rückgängig-Flag wird automatisch gelöscht, wenn Sie die CWnd Memberfunktion SetWindowTextaufrufen.

Weitere Informationen finden Sie im EM_EMPTYUNDOBUFFER Windows SDK.

Beispiel

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

CRichEditCtrl::FindText

Sucht Text innerhalb des Rich-Edit-Steuerelements.

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

Parameter

dwFlags
Eine Liste der möglichen Werte finden Sie wParam im EM_FINDTEXTEXT Windows SDK.

pFindText
Zeigen Sie auf die FINDTEXTEX Struktur, die die Parameter für die Suche angibt, und geben Sie den Bereich zurück, in dem die Übereinstimmung gefunden wurde.

Rückgabewert

Nullbasierte Zeichenposition der nächsten Übereinstimmung; - 1, wenn keine weiteren Übereinstimmungen vorhanden sind.

Hinweise

Sie können entweder nach oben oder unten suchen, indem Sie die richtigen Bereichsparameter in der Struktur innerhalb der CHARRANGEFINDTEXTEX Struktur festlegen.

Weitere Informationen finden Sie unter EM_FINDTEXTEX Meldung und FINDTEXTEX Struktur im Windows SDK.

Beispiel

// 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

Sucht den nächsten Wortwechsel vor oder nach der durch nStart.

DWORD FindWordBreak(
    UINT nCode,
    DWORD nStart) const;

Parameter

nCode
Gibt die auszuführende Aktion an. Eine Liste der möglichen Werte finden Sie in der Beschreibung des Parameters code im EM_FINDWORDBREAK Windows SDK.

nStart
Die nullbasierte Zeichenposition, von der aus begonnen werden soll.

Rückgabewert

Basierend auf dem Parameter nCode. Weitere Informationen finden Sie im EM_FINDWORDBREAK Windows SDK.

Hinweise

Mit dieser Memberfunktion können Sie Informationen zu einem Zeichen an einer bestimmten Position abrufen.

CRichEditCtrl::FormatRange

Formatiert einen Textbereich in einem Rich-Edit-Steuerelement für ein bestimmtes Gerät.

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

Parameter

pfr
Zeigen Sie auf die FORMATRANGE Struktur, die Informationen zum Ausgabegerät enthält. NULL gibt an, dass zwischengespeicherte Informationen innerhalb des Rich-Edit-Steuerelements freigegeben werden können.

bDisplay
Gibt an, ob der Text gerendert werden soll. Wenn FALSE, wird der Text nur gemessen.

Rückgabewert

Der Index des letzten Zeichens, das in die Region passt plus eins.

Hinweise

In der Regel folgt auf diesen Anruf ein Anruf.DisplayBand

Weitere Informationen finden Sie unter EM_FORMATRANGE Meldung und FORMATRANGE Struktur im Windows SDK.

Beispiel

// 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

Ruft die Position (obere linke Ecke) eines bestimmten Zeichens innerhalb dieses CRichEditCtrl Objekts ab.

CPoint GetCharPos(long lChar) const;

Parameter

lChar
Nullbasierter Index des Zeichens.

Rückgabewert

Die Position der oberen linken Ecke des durch lChar.

Hinweise

Das Zeichen wird angegeben, indem es seinen nullbasierten Indexwert angibt. Wenn lChar der Index des letzten Zeichens in diesem CRichEditCtrl Objekt größer ist, gibt der Rückgabewert die Koordinaten der Zeichenposition direkt über das letzte Zeichen in diesem CRichEditCtrl Objekt an.

Weitere Informationen finden Sie im EM_POSFROMCHAR Windows SDK.

CRichEditCtrl::GetDefaultCharFormat

Ruft die Standardzeichenformatierungsattribute dieses CRichEditCtrl Objekts ab.

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

Parameter

cf
In der ersten Version zeigt ein Zeiger auf eine CHARFORMAT Struktur, die die Standardzeichenformatierungsattribute enthält.

In der zweiten Version zeigt ein Zeiger auf eine CHARFORMAT2 Struktur, bei der CHARFORMAT es sich um eine Rich Edit 2.0-Erweiterung der Struktur handelt, die die Standardzeichenformatierungsattribute enthält.

Rückgabewert

Das dwMask Datenelement von cf. Es hat die Standardzeichenformatierungsattribute angegeben.

Hinweise

Weitere Informationen finden Sie in der Meldung und den EM_GETCHARFORMATCHARFORMATCHARFORMAT2 Strukturen im Windows SDK.

Beispiel

Sehen Sie sich das Beispiel für SetDefaultCharFormat.

CRichEditCtrl::GetEventMask

Ruft das Ereignisformat für dieses CRichEditCtrl Objekt ab.

long GetEventMask() const;

Rückgabewert

Das Ereignisformat für dieses CRichEditCtrl Objekt.

Hinweise

Das Ereignisformat gibt an, welche Benachrichtigungen das CRichEditCtrl Objekt an das übergeordnete Fenster sendet.

Weitere Informationen finden Sie im EM_GETEVENTMASK Windows SDK.

Beispiel

Sehen Sie sich das Beispiel für CRichEditCtrl::SetEventMask.

CRichEditCtrl::GetFirstVisibleLine

Bestimmt die oberste sichtbare Linie in diesem CRichEditCtrl Objekt.

int GetFirstVisibleLine() const;

Rückgabewert

Nullbasierter Index der obersten sichtbaren Zeile in diesem CRichEditCtrl Objekt.

Hinweise

Weitere Informationen finden Sie im EM_GETFIRSTVISIBLELINE Windows SDK.

Beispiel

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

Greift auf die IRichEditOle Schnittstelle für dieses CRichEditCtrl Objekt zu.

IRichEditOle* GetIRichEditOle() const;

Rückgabewert

Zeiger auf die IRichEditOle Schnittstelle, die für den Zugriff auf die OLE-Funktionalität dieses CRichEditCtrl Objekts verwendet werden kann; NULL wenn auf die Schnittstelle nicht zugegriffen werden kann.

Hinweise

Verwenden Sie diese Schnittstelle, um auf die OLE-Funktionalität dieses CRichEditCtrl Objekts zuzugreifen.

Weitere Informationen finden Sie unter EM_GETOLEINTERFACE Meldung und IRichEditOle Schnittstelle im Windows SDK.

CRichEditCtrl::GetLimitText

Ruft den Textgrenzwert für dieses CRichEditCtrl Objekt ab.

long GetLimitText() const;

Rückgabewert

Der aktuelle Textgrenzwert in Bytes für dieses CRichEditCtrl Objekt.

Hinweise

Der Textgrenzwert ist die maximale Textmenge in Byte, die das Rich-Edit-Steuerelement akzeptieren kann.

Weitere Informationen finden Sie im EM_GETLIMITTEXT Windows SDK.

Beispiel

// 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

Ruft eine Textzeile aus diesem CRichEditCtrl Objekt ab.

int GetLine(
    int nIndex,
    LPTSTR lpszBuffer) const;

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

Parameter

nIndex
Nullbasierter Index der abzurufenden Zeile.

lpszBuffer
Verweist auf den Puffer, um den Text zu empfangen. Das erste Wort des Puffers muss die maximale Anzahl von Bytes angeben, die in den Puffer kopiert werden können.

nMaxLength
Maximale Anzahl von Zeichen, in die kopiert lpszBufferwerden kann. Mit der zweiten Form wird GetLine dieser Wert in das erste Wort des durch lpszBufferden Puffer angegebenen Puffers eingefügt.

Rückgabewert

Die Anzahl der zeichen, in lpszBufferdie kopiert wurde.

Hinweise

Die kopierte Zeile enthält kein endendes NULL-Zeichen.

Hinweis

Da das erste Wort des Puffers die Anzahl der zu kopierenden Zeichen speichert, stellen Sie sicher, dass der Puffer mindestens 4 Byte lang ist.

Weitere Informationen finden Sie im EM_GETLINE Windows SDK.

Beispiel

Sehen Sie sich das Beispiel für GetLineCount.

CRichEditCtrl::GetLineCount

Ruft die Anzahl der Zeilen im CRichEditCtrl Objekt ab.

int GetLineCount() const;

Rückgabewert

Die Anzahl der Zeilen in diesem CRichEditCtrl Objekt.

Hinweise

Weitere Informationen finden Sie im EM_GETLINECOUNT Windows SDK.

Beispiel

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

Bestimmt, ob der Inhalt dieses CRichEditCtrl Objekts geändert wurde.

BOOL GetModify() const;

Rückgabewert

Nonzero, wenn der Text in diesem CRichEditCtrl Objekt geändert wurde; andernfalls 0.

Hinweise

Windows Standard enthält ein internes Flag, das angibt, ob der Inhalt des Rich-Edit-Steuerelements geändert wurde. Dieses Kennzeichen wird gelöscht, wenn das Bearbeitungssteuerelement zum ersten Mal erstellt wird und auch durch Aufrufen der SetModify Memberfunktion gelöscht werden kann.

Weitere Informationen finden Sie im EM_GETMODIFY Windows SDK.

Beispiel

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

CRichEditCtrl::GetOptions

Ruft die derzeit für das Rich-Edit-Steuerelement festgelegten Optionen ab.

UINT GetOptions() const;

Rückgabewert

Eine Kombination der aktuellen Optionskennzeichnungswerte. Eine Liste dieser Werte finden Sie fOptions im Parameter in der EM_SETOPTIONS Nachricht, wie im Windows SDK beschrieben.

CRichEditCtrl::GetParaFormat

Ruft die Absatzformatierungsattribute der aktuellen Auswahl ab.

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

Parameter

pf
In der ersten Version zeigt ein Zeiger auf eine PARAFORMAT Struktur, um die Absatzformatierungsattribute der aktuellen Auswahl zu enthalten.

In der zweiten Version zeigt ein Zeiger auf eine PARAFORMAT2 Struktur, bei der PARAFORMAT es sich um eine Rich Edit 2.0-Erweiterung der Struktur handelt, die die Standardzeichenformatierungsattribute enthält.

Rückgabewert

Das dwMask Datenelement von pf. Es gibt die Absatzformatierungsattribute an, die während der aktuellen Auswahl konsistent sind.

Hinweise

Wenn mehrere Absätze ausgewählt sind, pf werden die Attribute des ersten markierten Absatzes empfangen. Der Rückgabewert gibt an, welche Attribute während der gesamten Auswahl konsistent sind.

Weitere Informationen finden Sie in der Meldung und den EM_GETPARAFORMATPARAFORMATPARAFORMAT2 Strukturen im Windows SDK.

Beispiel

Sehen Sie sich das Beispiel für CRichEditCtrl::SetParaFormat.

CRichEditCtrl::GetPunctuation

Ruft die aktuellen Interpunktionszeichen in einem Rich-Edit-Steuerelement ab.

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

Parameter

fType
Das Interpunktionstyp-Flag, wie im fType Parameter des EM_GETPUNCTUATION Windows SDK beschrieben.

lpPunc
Ein Zeiger auf eine PUNCTUATION Struktur, wie im Windows SDK beschrieben.

Rückgabewert

Nonzero, wenn der Vorgang erfolgreich war, andernfalls 0.

Hinweise

Diese Memberfunktion ist nur mit den asiatischen Sprachversionen des Betriebssystems verfügbar.

CRichEditCtrl::GetRect

Ruft das Formatierungsrechteck für dieses CRichEditCtrl Objekt ab.

void GetRect(LPRECT lpRect) const;

Parameter

lpRect
CRect oder zeigen Sie auf ein RECT , um das Formatierungsrechteck dieses CRichEditCtrl Objekts zu empfangen.

Hinweise

Das Formatierungsrechteck ist das umgebende Rechteck für den Text. Dieser Wert ist unabhängig von der Größe des CRichEditCtrl Objekts.

Weitere Informationen finden Sie im EM_GETRECT Windows SDK.

Beispiel

Sehen Sie sich das Beispiel für LimitText.

CRichEditCtrl::GetRedoName

Ruft den Typ der nächsten verfügbaren Aktion in der Redo-Warteschlange ab, falls vorhanden.

UNDONAMEID GetRedoName() const;

Rückgabewert

Bei erfolgreicher Ausführung gibt den UNDONAMEID Enumerationstyp zurück, GetRedoName der den Typ der nächsten Aktion in der Redo-Warteschlange des Steuerelements angibt. Wenn die Redo-Warteschlange leer ist oder die Redo-Aktion in der Warteschlange einen unbekannten Typ aufweist, GetRedoName wird 0 zurückgegeben.

Hinweise

Die Arten von Aktionen, die rückgängig gemacht werden können, umfassen Eingabe-, Lösch-, Drag-Drop-, Ausschneiden- und Einfügevorgänge. Diese Informationen können für Anwendungen nützlich sein, die eine erweiterte Benutzeroberfläche für Rückgängig- und Wiederholen-Vorgänge bereitstellen, z. B. ein Dropdown-Listenfeld mit wiederholbaren Aktionen.

CRichEditCtrl::GetSel

Ruft die Grenzen der aktuellen Auswahl in diesem CRichEditCtrl Objekt ab.

void GetSel(CHARRANGE& cr) const;

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

Parameter

cr
Verweisen auf eine CHARRANGE Struktur, um die Grenzen der aktuellen Auswahl zu empfangen.

nStartChar
Nullbasierter Index des ersten Zeichens in der aktuellen Auswahl.

nEndChar
Nullbasierter Index des letzten Zeichens in der aktuellen Auswahl.

Hinweise

Die beiden Formen dieser Funktion bieten alternative Möglichkeiten zum Abrufen der Grenzen für die Auswahl. Kurze Beschreibungen dieser Formulare folgen:

  • GetSel(cr) Dieses Formular verwendet die CHARRANGE Struktur mit seinen cpMin Elementen, cpMax um die Grenzen zurückzugeben.

  • GetSel(nStartChar,nEndChar) Dieses Formular gibt die Grenzen in den Parametern nStartChar und nEndChar.

Die Auswahl enthält alles, wenn der Anfang (cpMin oder nStartChar) 0 ist und das Ende (cpMax oder nEndChar) - 1 ist.

Weitere Informationen finden Sie unter EM_EXGETSEL Meldung und CHARRANGE Struktur im Windows SDK.

Beispiel

// 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

Ruft die Zeichenformatierungsattribute der aktuellen Auswahl ab.

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

Parameter

cf
In der ersten Version zeigt ein Zeiger auf eine CHARFORMAT Struktur, um die Zeichenformatierungsattribute der aktuellen Auswahl zu erhalten.

In der zweiten Version zeigt ein Zeiger auf eine CHARFORMAT2 Struktur, bei der CHARFORMAT es sich um eine Rich Edit 2.0-Erweiterung der Struktur handelt, um die Zeichenformatierungsattribute der aktuellen Auswahl zu erhalten.

Rückgabewert

Das dwMask Datenelement von cf. Es gibt die Zeichenformatierungsattribute an, die während der aktuellen Auswahl konsistent sind.

Hinweise

Der cf Parameter empfängt die Attribute des ersten Zeichens in der aktuellen Auswahl. Der Rückgabewert gibt an, welche Attribute während der gesamten Auswahl konsistent sind.

Weitere Informationen finden Sie in der Meldung und den EM_GETCHARFORMATCHARFORMATCHARFORMAT2 Strukturen im Windows SDK.

Beispiel

Sehen Sie sich das Beispiel für SetSelectionCharFormat.

CRichEditCtrl::GetSelectionType

Bestimmt den Auswahltyp in diesem CRichEditCtrl Objekt.

WORD GetSelectionType() const;

Rückgabewert

Flags, die den Inhalt der aktuellen Auswahl angeben. Eine Kombination der folgenden Flags:

  • SEL_EMPTY Gibt an, dass keine aktuelle Auswahl vorhanden ist.

  • SEL_TEXT Gibt an, dass die aktuelle Markierung Text enthält.

  • SEL_OBJECT Gibt an, dass die aktuelle Auswahl mindestens ein OLE-Element enthält.

  • SEL_MULTICHAR Gibt an, dass die aktuelle Markierung mehr als ein Zeichen von Text enthält.

  • SEL_MULTIOBJECT Gibt an, dass die aktuelle Auswahl mehrere OLE-Objekte enthält.

Hinweise

Weitere Informationen finden Sie im EM_SELECTIONTYPE Windows SDK.

Beispiel

// 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

Ruft den Text aus der aktuellen Auswahl in diesem CRichEditCtrl Objekt ab.

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

Parameter

lpBuf
Zeigen Sie auf den Puffer, um den Text in der aktuellen Auswahl zu empfangen.

Rückgabewert

Hängt vom Formular ab:

  • GetSelText(lpBuf) Die Anzahl der zeichen, in lpBufdie kopiert wurde, nicht einschließlich der NULL-Beendigung.

  • GetSelText( ) Die Zeichenfolge, die die aktuelle Auswahl enthält.

Hinweise

Wenn Sie das erste Formular verwenden, müssen Sie sicherstellen, GetSelText(lpBuf)dass der Puffer für den empfangenen Text groß genug ist. Rufen Sie auf GetSel , um die Anzahl der Zeichen in der aktuellen Auswahl zu ermitteln.

Weitere Informationen finden Sie im EM_GETSELTEXT Windows SDK.

Beispiel

Sehen Sie sich das Beispiel für CRichEditCtrl::GetSelectionType.

CRichEditCtrl::GetTextLength

Ruft die Länge des Texts in Zeichen in diesem CRichEditCtrl Objekt ab, nicht einschließlich des endenden NULL-Zeichens.

long GetTextLength() const;

Rückgabewert

Die Länge des Texts in diesem CRichEditCtrl Objekt.

Hinweise

Weitere Informationen finden Sie im WM_GETTEXTLENGTH Windows SDK.

Beispiel

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

CRichEditCtrl::GetTextLengthEx

Berechnet die Länge des Texts im Rich-Edit-Steuerelement.

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

Parameter

dwFlags
Wert, der die Methode angibt, die beim Bestimmen der Textlänge verwendet werden soll. Bei diesem Element kann es sich um einen oder mehrere der Werte handeln, die im Flags-Element aufgeführt sind, das GETTEXTLENGTHEX im Windows SDK beschrieben ist.

uCodePage
Codepage für die Übersetzung (CP_ACP für ANSI Code Page, 1200 für Unicode).

Rückgabewert

Die Anzahl der Zeichen oder Bytes im Bearbeitungssteuerelement. Wenn inkompatible Flags festgelegt dwFlagswurden, gibt diese Memberfunktion zurück E_INVALIDARG.

Hinweise

GetTextLengthEx bietet zusätzliche Möglichkeiten zum Bestimmen der Länge des Texts. Sie unterstützt die Rich Edit 2.0-Funktionalität. Weitere Informationen finden Sie unter "Rich Edit Controls " in windows SDK.

CRichEditCtrl::GetTextMode

Ruft den aktuellen Textmodus und die Rückgängig-Ebene eines Rich-Edit-Steuerelements ab.

UINT GetTextMode() const;

Rückgabewert

Eine Reihe von Bitkennzeichnungen aus dem TEXTMODE Enumerationstyp, wie im Windows SDK beschrieben. Die Flags geben den aktuellen Textmodus und die Rückgängig-Ebene des Steuerelements an.

CRichEditCtrl::GetTextRange

Ruft den angegebenen Zeichenbereich ab.

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

Parameter

nFirst
Der Zeichenpositionsindex unmittelbar vor dem ersten Zeichen im Bereich.

nLast
Die Zeichenposition unmittelbar nach dem letzten Zeichen im Bereich.

refString
Ein Verweis auf ein CString Objekt, das den Text empfängt.

Rückgabewert

Die Anzahl der kopierten Zeichen, nicht einschließlich des endenden Nullzeichens.

Hinweise

Weitere Informationen finden Sie im EM_GETTEXTRANGE Windows SDK.

GetTextRange unterstützt die Rich Edit 2.0-Funktionalität. Weitere Informationen finden Sie unter "Rich Edit Controls " in windows SDK.

CRichEditCtrl::GetUndoName

Ruft den Typ der nächsten verfügbaren Aktion in der Rückgängig-Warteschlange ab, falls vorhanden.

UNDONAMEID GetUndoName() const;

Rückgabewert

Wenn sich eine Rückgängig-Aktion in der Rückgängig-Warteschlange des Steuerelements befindet, wird der UndONAMEID-Enumerationstyp zurückgegeben, GetUndoName der den Typ der nächsten Aktion in der Warteschlange angibt. Wenn die Rückgängig-Warteschlange leer ist oder die Rückgängig-Aktion in der Warteschlange einen unbekannten Typ aufweist, GetUndoName wird 0 zurückgegeben.

Hinweise

Die Arten von Aktionen, die rückgängig gemacht werden können, umfassen Eingabe-, Lösch-, Drag-Drop-, Ausschneiden- und Einfügevorgänge. Diese Informationen können für Anwendungen nützlich sein, die eine erweiterte Benutzeroberfläche für Rückgängig- und Wiederholen-Vorgänge bereitstellen, z. B. ein Dropdown-Listenfeld mit Aktionen, die rückgängig gemacht werden können.

CRichEditCtrl::GetWordWrapMode

Ruft die aktuellen Wörterumbruch- und Wortumbruchoptionen für das Rich-Edit-Steuerelement ab.

UINT GetWordWrapMode() const;

Rückgabewert

Die aktuellen Wörterumbruch- und Wortumbruchoptionen. Diese Optionen werden im EM_SETWORDWRAPMODE Windows SDK beschrieben.

Hinweise

Diese Memberfunktion ist nur für asiatische Versionen des Betriebssystems verfügbar.

CRichEditCtrl::HideSelection

Ändert die Sichtbarkeit der Auswahl.

void HideSelection(
    BOOL bHide,
    BOOL bPerm);

Parameter

bHide
Gibt an, ob die Auswahl angezeigt oder ausgeblendet werden soll, TRUE um die Auswahl auszublenden.

bPerm
Gibt an, ob diese Änderung der Sichtbarkeit für die Auswahl dauerhaft sein soll.

Hinweise

Ist bPerm dies der Fall TRUE, wird die ECO_NOHIDESEL Option für dieses CRichEditCtrl Objekt geändert. Eine kurze Beschreibung dieser Option finden Sie unter SetOptions. Mit dieser Funktion können Sie alle Optionen für dieses CRichEditCtrl Objekt festlegen.

Weitere Informationen finden Sie im EM_HIDESELECTION Windows SDK.

Beispiel

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

CRichEditCtrl::LimitText

Beschränkt die Länge des Texts, den der Benutzer in ein Bearbeitungssteuerelement eingeben kann.

void LimitText(long nChars = 0);

Parameter

nChars
Gibt die Länge (in Byte) des Texts an, den der Benutzer eingeben kann. Wenn dieser Parameter 0 (Standardwert) ist, wird die Textlänge auf 64 KB festgelegt.

Hinweise

Durch Das Ändern der Textgrenze wird nur der Text eingeschränkt, den der Benutzer eingeben kann. Es hat keine Auswirkungen auf Text, der bereits im Bearbeitungssteuerelement enthalten ist, oder wirkt sich nicht auf die Länge des Texts aus, der von der SetWindowText Memberfunktion CWndin das Bearbeitungssteuerelement in das Bearbeitungssteuerelement kopiert wurde. Wenn eine Anwendung die SetWindowText Funktion verwendet, um mehr Text in ein Bearbeitungssteuerelement zu setzen, als im Aufruf LimitTextangegeben ist, kann der Benutzer jeden Text innerhalb des Bearbeitungssteuerelements löschen. Die Textgrenze verhindert jedoch, dass der Benutzer den vorhandenen Text durch neuen Text ersetzt, es sei denn, das Löschen der aktuellen Markierung bewirkt, dass der Text unter die Textgrenze fällt.

Hinweis

Für den Textgrenzwert zählt jedes OLE-Element als einzelnes Zeichen.

Weitere Informationen finden Sie im EM_EXLIMITTEXT Windows SDK.

Beispiel

// 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

Ruft die Zeilennummer der Zeile ab, die den angegebenen Zeichenindex enthält.

long LineFromChar(long nIndex) const;

Parameter

nIndex
Enthält den nullbasierten Indexwert für das gewünschte Zeichen im Text des Bearbeitungssteuerelements oder enthält -1. Wenn nIndex -1 ist, gibt sie die aktuelle Zeile an, d. h. die Zeile, die das Caret enthält.

Rückgabewert

Die nullbasierte Zeilennummer der Zeile, die den zeichenindex enthält, der durch nIndex. Wenn nIndex -1 ist, wird die Nummer der Zeile zurückgegeben, die das erste Zeichen der Auswahl enthält. Wenn keine Auswahl vorhanden ist, wird die aktuelle Zeilennummer zurückgegeben.

Hinweise

Ein Zeichenindex ist die Anzahl der Zeichen vom Anfang des Rich-Edit-Steuerelements. Bei der Zeichenzählung wird ein OLE-Element als einzelnes Zeichen gezählt.

Weitere Informationen finden Sie im EM_EXLINEFROMCHAR Windows SDK.

Beispiel

// 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

Ruft den Zeichenindex einer Zeile innerhalb dieses CRichEditCtrl Objekts ab.

int LineIndex(int nLine = -1) const;

Parameter

nLine
Enthält den Indexwert für die gewünschte Zeile im Text des Bearbeitungssteuerelements oder enthält -1. Wenn nLine -1 ist, gibt sie die aktuelle Zeile an, d. h. die Zeile, die das Caret enthält.

Rückgabewert

Der Zeichenindex der in nLine oder -1 angegebenen Zeile, wenn die angegebene Zeilennummer größer als die Anzahl der Zeilen im Bearbeitungssteuerelement ist.

Hinweise

Der Zeichenindex ist die Anzahl der Zeichen vom Anfang des Rich-Edit-Steuerelements bis zur angegebenen Zeile.

Weitere Informationen finden Sie im EM_LINEINDEX Windows SDK.

Beispiel

// 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

Ruft die Länge einer Zeile in einem Rich-Edit-Steuerelement ab.

int LineLength(int nLine = -1) const;

Parameter

nLine
Gibt den Zeichenindex eines Zeichens in der Zeile an, deren Länge abgerufen werden soll. Wenn dieser Parameter -1 ist, wird die Länge der aktuellen Zeile (die Zeile, die das Caret enthält) zurückgegeben, nicht einschließlich der Länge eines markierten Texts innerhalb der Zeile. Wenn LineLength für ein ein einzeiliges Bearbeitungssteuerelement aufgerufen wird, wird dieser Parameter ignoriert.

Rückgabewert

Wenn LineLength für ein Mehrzeilen-Bearbeitungssteuerelement aufgerufen wird, ist der Rückgabewert die Länge (in TCHAR) der durch nLine. Es enthält nicht das Wagenrücklaufzeichen am Ende der Zeile. Wenn LineLength ein einzeiliges Bearbeitungssteuerelement aufgerufen wird, ist der Rückgabewert die Länge (in TCHAR) des Texts im Bearbeitungssteuerelement. Wenn nLine die Anzahl der Zeichen im Steuerelement größer ist, ist der Rückgabewert null.

Hinweise

Verwenden Sie die LineIndex Memberfunktion, um einen Zeichenindex für eine bestimmte Zeilennummer in diesem CRichEditCtrl Objekt abzurufen.

Weitere Informationen finden Sie im EM_LINELENGTH Windows SDK.

Beispiel

Sehen Sie sich das Beispiel für LineIndex.

CRichEditCtrl::LineScroll

Scrollt den Text eines mehrzeiligen Bearbeitungssteuerelements.

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

Parameter

nLines
Gibt die Anzahl der Zeilen an, die vertikal gescrollt werden sollen.

nChars
Gibt die Anzahl der Zeichenpositionen an, die horizontal gescrollt werden sollen. Dieser Wert wird ignoriert, wenn das Rich-Edit-Steuerelement entweder das Format oder die ES_RIGHT Formatvorlage ES_CENTER aufweist. Bearbeitungsformatvorlagen werden in Createangegeben.

Hinweise

Das Bearbeitungssteuerelement führt keinen vertikalen Bildlauf nach der letzten Textzeile im Bearbeitungssteuerelement durch. Wenn die aktuelle Zeile plus der Anzahl von Zeilen, die durch nLines Überschreitung der Gesamtanzahl von Zeilen im Bearbeitungssteuerelement angegeben werden, wird der Wert so angepasst, dass die letzte Zeile des Bearbeitungssteuerelements nach oben im Bearbeitungssteuerelementfenster verschoben wird.

LineScroll kann verwendet werden, um horizontal nach dem letzten Zeichen einer beliebigen Zeile zu scrollen.

Weitere Informationen finden Sie im EM_LINESCROLL Windows SDK.

Beispiel

Sehen Sie sich das Beispiel für GetFirstVisibleLine.

CRichEditCtrl::Paste

Fügt die Daten aus der Zwischenablage an der CRichEditCtrl Einfügemarke, der Position des Carets, ein.

void Paste();

Hinweise

Daten werden nur eingefügt, wenn die Zwischenablage Daten in einem erkannten Format enthält.

Weitere Informationen finden Sie im WM_PASTE Windows SDK.

Beispiel

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

CRichEditCtrl::PasteSpecial

Fügt Daten in ein bestimmtes Zwischenablageformat in dieses CRichEditCtrl Objekt ein.

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

Parameter

nClipFormat
Zwischenablageformat, das in dieses CRichEditCtrl Objekt eingefügt werden soll.

dvAspect
Geräteaspekt für die Daten, die aus der Zwischenablage abgerufen werden sollen.

hMF
Behandeln Sie die Metadatei, die die iconic-Ansicht des objekts enthält, das eingefügt werden soll.

Hinweise

Das neue Material wird an der Einfügemarke, der Position des Carets, eingefügt.

Weitere Informationen finden Sie im EM_PASTESPECIAL Windows SDK.

Beispiel

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

CRichEditCtrl::PosFromChar

Ruft die Clientbereichskoordinaten eines angegebenen Zeichens in einem Bearbeitungssteuerelement ab.

CPoint PosFromChar(UINT nChar) const;

Parameter

nChar
Der nullbasierte Index des Zeichens.

Rückgabewert

Die Position des Zeichens (x, y). Bei einem einzeiligen Bearbeitungssteuerelement ist die y-Koordinate immer null.

Hinweise

Weitere Informationen finden Sie im EM_POSFROMCHAR Windows SDK.

CRichEditCtrl::Redo

Wiederholt die nächste Aktion in der Redo-Warteschlange des Steuerelements.

BOOL Redo();

Rückgabewert

Ungleich 0 (null), wenn erfolgreich, andernfalls 0 (null).

Hinweise

Weitere Informationen finden Sie im EM_REDO Windows SDK.

CRichEditCtrl::ReplaceSel

Ersetzt die aktuelle Markierung in diesem CRichEditCtrl Objekt durch den angegebenen Text.

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

Parameter

lpszNewText
Zeiger auf eine mit Null beendete Zeichenfolge, die den Ersetzungstext enthält.

bCanUndo
Um anzugeben, dass diese Funktion rückgängig gemacht werden kann, legen Sie den Wert dieses Parameters auf TRUE. Der Standardwert ist FALSE.

Hinweise

Um den gesamten Text in diesem CRichEditCtrl Objekt zu ersetzen, verwenden Sie CWnd::SetWindowText.

Wenn keine aktuelle Markierung vorhanden ist, wird der Ersetzungstext an der Einfügemarke eingefügt, d. h. an der aktuellen Caretposition.

Diese Funktion formatiert den eingefügten Text mit der vorhandenen Zeichenformatierung. Beim Ersetzen des gesamten Textbereichs (durch Aufrufen SetSelvon (0,-1) vor dem Aufrufen ReplaceSel) gibt es ein Absatzendezeichen, das die Formatierung des vorherigen Absatzes beibehält, die vom neu eingefügten Text geerbt wird.

Weitere Informationen finden Sie im EM_REPLACESEL Windows SDK.

Beispiel

Sehen Sie sich das Beispiel für LineIndex.

CRichEditCtrl::RequestResize

Erzwingt das Senden EN_REQUESTRESIZE von CRichEditCtrl Benachrichtigungen an das übergeordnete Fenster.

void RequestResize();

Hinweise

Diese Funktion ist bei der CWnd::OnSize Verarbeitung für ein unterloses CRichEditCtrl Objekt nützlich.

Weitere Informationen finden Sie in der EM_REQUESTRESIZE Meldung und im Abschnitt "Bottomless Rich Edit Controls" unter "Informationen zu Rich Edit Controls " im Windows SDK.

CRichEditCtrl::SetAutoURLDetect

Legt das Rich-Edit-Steuerelement fest, um automatisch eine URL zu erkennen.

BOOL SetAutoURLDetect(BOOL bEnable = TRUE);

Parameter

bEnable
Gibt an, ob das Steuerelement so festgelegt ist, dass automatisch eine URL erkannt wird. If TRUE, it is enabled. Wenn FALSE, ist sie deaktiviert.

Rückgabewert

Null bei erfolgreicher Ausführung, andernfalls nonzero. Die Nachricht kann z. B. aufgrund unzureichenden Arbeitsspeichers fehlschlagen.

Hinweise

Wenn diese Option aktiviert ist, überprüft das Rich-Edit-Steuerelement den Text, um festzustellen, ob es mit einem Standard-URL-Format übereinstimmt. Eine Liste dieser URL-Formate finden Sie im EM_AUTOURLDETECT Windows SDK.

Hinweis

Legen Sie diesen Wert nicht fest SetAutoURLDetectTRUE , wenn das Bearbeitungssteuerelement den CFE_LINK Effekt für andere Text als URLs verwendet. SetAutoURLDetect aktiviert diesen Effekt für URLs und deaktiviert ihn für alle anderen Texte. Weitere Informationen zum CFE_LINK Effekt finden Sie unter EN_LINK.

CRichEditCtrl::SetBackgroundColor

Legt die Hintergrundfarbe für dieses CRichEditCtrl Objekt fest.

COLORREF SetBackgroundColor(
    BOOL bSysColor,
    COLORREF cr);

Parameter

bSysColor
Gibt an, ob die Hintergrundfarbe auf den Systemwert festgelegt werden soll. Wenn dieser Wert ist TRUE, cr wird ignoriert.

cr
Die angeforderte Hintergrundfarbe. Wird nur verwendet, wenn bSysColor dies der Grund ist FALSE.

Rückgabewert

Die vorherige Hintergrundfarbe für dieses CRichEditCtrl Objekt.

Hinweise

Die Hintergrundfarbe kann auf den Systemwert oder auf einen angegebenen COLORREF Wert festgelegt werden.

Weitere Informationen finden Sie unter EM_SETBKGNDCOLOR Meldung und COLORREF Struktur im Windows SDK.

Beispiel

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

CRichEditCtrl::SetDefaultCharFormat

Legt die Zeichenformatierungsattribute für neuen Text in diesem CRichEditCtrl Objekt fest.

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

Parameter

cf
In der ersten Version zeigt ein Zeiger auf eine CHARFORMAT Struktur mit den neuen Standardzeichenformatierungsattributen.

In der zweiten Version zeigt ein Zeiger auf eine CHARFORMAT2 Struktur, bei der es sich um eine Rich Edit 2.0-Erweiterung auf die Struktur handelt, die CHARFORMAT die Standardzeichenformatierungsattribute enthält.

Rückgabewert

Ungleich 0 (null), wenn erfolgreich, andernfalls 0 (null).

Hinweise

Nur die vom dwMask Element cf angegebenen Attribute werden von dieser Funktion geändert.

Weitere Informationen finden Sie in der Meldung und den EM_SETCHARFORMATCHARFORMATCHARFORMAT2 Strukturen im Windows SDK.

Beispiel

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

Legt das Ereignisformat für dieses CRichEditCtrl Objekt fest.

DWORD SetEventMask(DWORD dwEventMask);

Parameter

dwEventMask
Das neue Ereignisformat für dieses CRichEditCtrl Objekt.

Rückgabewert

Das vorherige Ereignisformat.

Hinweise

Das Ereignisformat gibt an, welche Benachrichtigungen das CRichEditCtrl Objekt an das übergeordnete Fenster sendet.

Weitere Informationen finden Sie im EM_SETEVENTMASK Windows SDK.

Beispiel

// 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

Legt das geänderte Kennzeichen für ein Bearbeitungssteuerelement fest oder löscht es.

void SetModify(BOOL bModified = TRUE);

Parameter

bModified
Ein Wert, der TRUE angibt, dass der Text geändert wurde, und ein Wert, der FALSE angibt, dass er nicht geändert wurde. Standardmäßig ist das geänderte Flag festgelegt.

Hinweise

Das geänderte Kennzeichen gibt an, ob der Text im Bearbeitungssteuerelement geändert wurde. Er wird automatisch festgelegt, wenn der Benutzer den Text ändert. Der Wert kann mit der GetModify Memberfunktion abgerufen werden.

Weitere Informationen finden Sie im EM_SETMODIFY Windows SDK.

Beispiel

Sehen Sie sich das Beispiel für GetModify.

CRichEditCtrl::SetOLECallback

Gibt diesem CRichEditCtrl Objekt ein IRichEditOleCallback Objekt für den Zugriff auf OLE-bezogene Ressourcen und Informationen.

BOOL SetOLECallback(IRichEditOleCallback* pCallback);

Parameter

pCallback
Zeigen Sie auf ein IRichEditOleCallback Objekt, das dieses CRichEditCtrl Objekt zum Abrufen von OLE-bezogenen Ressourcen und Informationen verwendet.

Rückgabewert

Ungleich 0 (null), wenn erfolgreich, andernfalls 0 (null).

Hinweise

Dieses CRichEditCtrl Objekt ruft IUnknown::AddRef die Verwendungsanzahl für das durch pCallback.

Weitere Informationen finden Sie unter EM_SETOLECALLBACK Meldung und IRichEditOleCallback Schnittstelle im Windows SDK.

CRichEditCtrl::SetOptions

Legt die Optionen für dieses CRichEditCtrl Objekt fest.

void SetOptions(
    WORD wOp,
    DWORD dwFlags);

Parameter

wOp
Gibt den Typ des Vorgangs an. Einer der folgenden Werte:

  • ECOOP_SET Legen Sie die Optionen auf diejenigen fest, die durch dwFlags.

  • ECOOP_OR Kombinieren Sie die aktuellen Optionen mit den von dwFlags.

  • ECOOP_AND Behalten Sie nur die aktuellen Optionen bei, die auch von dwFlags.

  • ECOOP_XOR Logisch exklusive ODER die aktuellen Optionen mit denen, die durch dwFlagsangegeben sind.

dwFlags
Rich-Edit-Optionen. Die Kennzeichenwerte werden im Abschnitt "Hinweise" aufgeführt.

Hinweise

Die Optionen können eine Kombination aus den folgenden Werten sein:

  • ECO_AUTOWORDSELECTION Automatische Wortauswahl beim Doppelklicken.

  • ECO_AUTOVSCROLL Scrollt text automatisch um 10 Zeichen nach rechts, wenn der Benutzer am Ende der Zeile ein Zeichen eingibt. Wenn der Benutzer die EINGABETASTE drückt, führt das Steuerelement einen Bildlauf bis zur Position 0 durch.

  • ECO_AUTOHSCROLL Scrollt text automatisch um eine Seite nach oben, wenn der Benutzer die EINGABETASTE in der letzten Zeile drückt.

  • ECO_NOHIDESEL Hebt das Standardverhalten für ein Bearbeitungssteuerelement ab. Das Standardverhalten blendet die Auswahl aus, wenn das Steuerelement den Eingabefokus verliert, und zeigt die Auswahl an, wenn das Steuerelement den Eingabefokus erhält. Wenn Sie angeben ECO_NOHIDESEL, wird der markierte Text invertiert, auch wenn das Steuerelement nicht den Fokus hat.

  • ECO_READONLY Verhindert, dass der Benutzer Text im Bearbeitungssteuerelement eingibt oder bearbeitet.

  • ECO_WANTRETURN Gibt an, dass ein Wagenrücklauf eingefügt wird, wenn der Benutzer die EINGABETASTE drückt, während text in ein mehrzeiliges Rich-Edit-Steuerelement in einem Dialogfeld eingegeben wird. Wenn Sie diese Formatvorlage nicht angeben, sendet das Drücken der EINGABETASTE einen Befehl an das übergeordnete Fenster des Rich-Edit-Steuerelements, das das Klicken auf die Standardschaltfläche des übergeordneten Fensters imitiert (z. B. die Schaltfläche "OK" in einem Dialogfeld). Diese Formatvorlage hat keine Auswirkung auf ein einzeiliges Bearbeitungssteuerelement.

  • ECO_SAVESEL Behält die Auswahl bei, wenn das Steuerelement den Fokus verliert. Standardmäßig werden die gesamten Inhalte des Steuerelements ausgewählt, wenn sie wieder den Fokus erhält.

  • ECO_VERTICAL Zeichnet Text und Objekte in vertikaler Richtung. Nur für asiatische Sprachen verfügbar.

Weitere Informationen finden Sie im EM_SETOPTIONS Windows SDK.

Beispiel

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

CRichEditCtrl::SetParaFormat

Legt die Absatzformatierungsattribute für die aktuelle Auswahl in diesem CRichEditCtrl Objekt fest.

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

Parameter

pf
In der ersten Version zeigt ein Zeiger auf eine PARAFORMAT Struktur mit den neuen Standardabsatzformatierungsattributen.

In der zweiten Version zeigt ein Zeiger auf eine PARAFORMAT2 Struktur, bei der PARAFORMAT es sich um eine Rich Edit 2.0-Erweiterung der Struktur handelt, die die Standardzeichenformatierungsattribute enthält.

Rückgabewert

Ungleich 0 (null), wenn erfolgreich, andernfalls 0 (null).

Hinweise

Nur die vom dwMask Element pf angegebenen Attribute werden von dieser Funktion geändert.

Weitere Informationen finden Sie in der Meldung und den EM_SETPARAFORMATPARAFORMATPARAFORMAT2 Strukturen im Windows SDK.

Beispiel

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

Legt die Interpunktion in einem Rich-Edit-Steuerelement fest.

BOOL SetPunctuation(
    UINT fType,
    PUNCTUATION* lpPunc);

Parameter

fType
Das Interpunktionszeichen. Eine Liste der möglichen Werte finden Sie im fType Parameter für EM_SETPUNCTUATION das Windows SDK.

lpPunc
Ein Zeiger auf eine PUNCTUATION Struktur, wie im Windows SDK beschrieben.

Rückgabewert

Wenn dies erfolgreich ist, andernfalls 0.

Hinweise

Diese Memberfunktion ist nur für asiatische Versionen des Betriebssystems verfügbar.

CRichEditCtrl::SetReadOnly

Ändert die ECO_READONLY Option für dieses CRichEditCtrl Objekt.

BOOL SetReadOnly(BOOL bReadOnly = TRUE);

Parameter

bReadOnly
Gibt an, ob dieses CRichEditCtrl Objekt schreibgeschützt sein soll.

Rückgabewert

Ungleich 0 (null), wenn erfolgreich, andernfalls 0 (null).

Hinweise

Eine kurze Beschreibung dieser Option finden Sie unter SetOptions. Mit dieser Funktion können Sie alle Optionen für dieses CRichEditCtrl Objekt festlegen.

Weitere Informationen finden Sie im EM_SETREADONLY Windows SDK.

Beispiel

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

CRichEditCtrl::SetRect

Legt das Formatierungsrechteck für dieses CRichEditCtrl Objekt fest.

void SetRect(LPCRECT lpRect);

Parameter

lpRect
CRect oder zeigen Sie auf eine RECT , die die neuen Grenzen für das Formatierungsrechteck angibt.

Hinweise

Das Formatierungsrechteck ist das einschränkende Rechteck für den Text. Das Begrenzungsrechteck ist unabhängig von der Größe des Rich-Edit-Steuerelementfensters. Wenn dieses CRichEditCtrl Objekt zum ersten Mal erstellt wird, ist das Formatierungsrechteck dieselbe Größe wie der Clientbereich des Fensters. Verwenden Sie diese Eigenschaft SetRect , um das Formatierungsrechteck zu vergrößern oder kleiner als das Rich-Edit-Fenster zu machen.

Weitere Informationen finden Sie im EM_SETRECT Windows SDK.

Beispiel

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

Legt die Auswahl in diesem CRichEditCtrl Objekt fest.

void SetSel(
    long nStartChar,
    long nEndChar);

void SetSel(CHARRANGE& cr);

Parameter

nStartChar
Nullbasierter Index des ersten Zeichens für die Auswahl.

nEndChar
Nullbasierter Index des letzten Zeichens für die Auswahl.

cr
CHARRANGE Struktur, die die Grenzen der aktuellen Auswahl enthält.

Hinweise

Die beiden Formen dieser Funktion bieten alternative Möglichkeiten zum Festlegen der Grenzen für die Auswahl. Kurze Beschreibungen dieser Formulare folgen:

  • SetSel(cr) Dieses Formular verwendet die CHARRANGE Struktur mit seinen cpMin Elementen, cpMax um die Grenzen festzulegen.

  • SetSel(nStartChar,nEndChar) Dieses Formular verwendet die Parameter nStartChar und nEndChar, um die Grenzen festzulegen.

Das Caret wird am Ende der Markierung platziert, die durch den größeren Anfangswert (cpMin oder nStartChar) und end (cpMax oder nEndChar) Indizes angegeben ist. Mit dieser Funktion wird der Inhalt des CRichEditCtrl Carets so verschoben, dass das Caret sichtbar ist.

Rufen Sie SetSel zum Markieren des gesamten Texts in diesem CRichEditCtrl Objekt den Anfangsindex 0 und einen Endindex von - 1 auf.

Weitere Informationen finden Sie unter EM_EXSETSEL Meldung und CHARRANGE Struktur im Windows SDK.

Beispiel

Sehen Sie sich das Beispiel für GetSel.

CRichEditCtrl::SetSelectionCharFormat

Legt die Zeichenformatierungsattribute für den Text in der aktuellen Auswahl in diesem CRichEditCtrl Objekt fest.

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

Parameter

cf
In der ersten Version zeigt ein Zeiger auf eine CHARFORMAT Struktur mit den neuen Zeichenformatierungsattributen für die aktuelle Auswahl.

In der zweiten Version zeigt ein Zeiger auf eine CHARFORMAT2 Struktur, bei der es sich um eine Rich Edit 2.0-Erweiterung der Struktur handelt, die CHARFORMAT die neuen Zeichenformatierungsattribute für die aktuelle Auswahl enthält.

Rückgabewert

Ungleich 0 (null), wenn erfolgreich, andernfalls 0 (null).

Hinweise

Nur die attribute, die vom dwMask Element von cf angegeben werden, werden von dieser Funktion geändert.

Weitere Informationen finden Sie unter den EM_SETCHARFORMAT und den CHARFORMAT Strukturen CHARFORMAT2 im Windows SDK.

Beispiel

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

Legt das Zielgerät und die Linienbreite fest, die für WYSIWYG (was Sie sehen) Formatierungen in diesem CRichEditCtrl Objekt.

BOOL SetTargetDevice(
    HDC hDC,
    long lLineWidth);

BOOL SetTargetDevice(
    CDC& dc,
    long lLineWidth);

Parameter

hDC
Behandeln Sie den Gerätekontext für das neue Zielgerät.

lLineWidth
Zur Formatierung zu verwendende Linienbreite.

dc
CDC für das neue Zielgerät.

Rückgabewert

Ungleich 0 (null), wenn erfolgreich, andernfalls 0 (null).

Hinweise

Wenn diese Funktion erfolgreich ist, besitzt das Rich Edit-Steuerelement den Als Parameter übergebenen Gerätekontext. In diesem Fall sollte die aufrufende Funktion den Gerätekontext nicht zerstören.

Weitere Informationen finden Sie im EM_SETTARGETDEVICE Windows SDK.

Beispiel

// 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

Legt die Textmodus- oder Rückgängig-Und-Wiederholen-Ebene für ein Rich-Edit-Steuerelement fest.

BOOL SetTextMode(UINT fMode);

Parameter

fMode
Gibt die neuen Einstellungen für den Textmodus des Steuerelements und Parameter für die Rückgängig-Ebene an. Eine Liste der möglichen Werte finden Sie im Modusparameter für EM_SETTEXTMODE das Windows SDK.

Rückgabewert

Null bei erfolgreicher Ausführung, andernfalls nonzero.

Hinweise

Eine Beschreibung der Textmodi finden Sie im EM_SETTEXTMODE Windows SDK.

Diese Memberfunktion schlägt fehl, wenn das Steuerelement Text enthält. Um sicherzustellen, dass das Steuerelement leer ist, senden Sie eine WM_SETTEXT Nachricht mit einer leeren Zeichenfolge.

CRichEditCtrl::SetUndoLimit

Legt die maximale Anzahl von Aktionen fest, die in der Rückgängig-Warteschlange gespeichert werden können.

UINT SetUndoLimit(UINT nLimit);

Parameter

nLimit
Gibt die maximale Anzahl von Aktionen an, die in der Rückgängig-Warteschlange gespeichert werden können. Legen Sie auf Null fest, um "Rückgängig" zu deaktivieren.

Rückgabewert

Die neue maximale Anzahl von Rückgängig-Aktionen für das Rich-Edit-Steuerelement.

Hinweise

Standardmäßig beträgt die maximale Anzahl von Aktionen in der Rückgängig-Warteschlange 100. Wenn Sie diese Zahl erhöhen, muss genügend Arbeitsspeicher verfügbar sein, um die neue Nummer aufzunehmen. Legen Sie für eine bessere Leistung den Grenzwert auf den kleinsten möglichen Wert fest.

CRichEditCtrl::SetWordCharFormat

Legt die Zeichenformatierungsattribute für das aktuell ausgewählte Wort in diesem CRichEditCtrl Objekt fest.

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

Parameter

cf
In der ersten Version zeigt ein Zeiger auf eine CHARFORMAT Struktur mit den neuen Zeichenformatierungsattributen für das aktuell ausgewählte Wort.

In der zweiten Version zeigt ein Zeiger auf eine CHARFORMAT2 Struktur, bei der es sich um eine Rich Edit 2.0-Erweiterung auf die Struktur handelt, die CHARFORMAT die neuen Zeichenformatierungsattribute für das aktuell ausgewählte Wort enthält.

Rückgabewert

Ungleich 0 (null), wenn erfolgreich, andernfalls 0 (null).

Hinweise

Nur die vom dwMask Element cf angegebenen Attribute werden von dieser Funktion geändert.

Weitere Informationen finden Sie in der Meldung und den EM_SETCHARFORMATCHARFORMATCHARFORMAT2 Strukturen im Windows SDK.

Beispiel

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

Legt die Wörterumbruch- und Wortumbruchoptionen für das Rich-Edit-Steuerelement fest.

UINT SetWordWrapMode(UINT uFlags) const;

Parameter

uFlags
Die Optionen, die für Wortumbruch und Wortumbruch festgelegt werden sollen. Eine Liste der möglichen Optionen finden Sie im EM_SETWORDWRAPMODE Windows SDK.

Rückgabewert

Die aktuellen Wörterumbruch- und Wortumbruchoptionen.

Hinweise

Diese Meldung ist nur in asiatischen Versionen des Betriebssystems verfügbar.

CRichEditCtrl::StopGroupTyping

Verhindert, dass das Steuerelement zusätzliche Eingabeaktionen in die aktuelle Rückgängig-Aktion sammelt.

void StopGroupTyping();

Hinweise

Das Steuerelement speichert ggf. die nächste Eingabeaktion in einer neuen Aktion in der Rückgängig-Warteschlange.

Weitere Informationen finden Sie im EM_STOPGROUPTYPING Windows SDK.

CRichEditCtrl::StreamIn

Ersetzt Text in diesem CRichEditCtrl Objekt durch Text aus dem angegebenen Eingabedatenstrom.

long StreamIn(
    int nFormat,
    EDITSTREAM& es);

Parameter

nFormat
Flags, die die Eingabedatenformate angeben. Weitere Informationen finden Sie im Abschnitt Bemerkungen.

es
EDITSTREAM Struktur, die den Eingabedatenstrom angibt. Weitere Informationen finden Sie im Abschnitt Bemerkungen.

Rückgabewert

Anzahl der aus dem Eingabedatenstrom gelesenen Zeichen.

Hinweise

Der Wert muss nFormat eine der folgenden Sein:

  • SF_TEXT Gibt nur das Lesen von Text an.

  • SF_RTF Gibt das Lesen von Text und Formatierung an.

Eine dieser Werte kann mit SFF_SELECTION. Wenn SFF_SELECTION angegeben, StreamIn ersetzt die aktuelle Auswahl durch den Inhalt des Eingabedatenstroms. Wenn sie nicht angegeben ist, StreamIn wird der gesamte Inhalt dieses CRichEditCtrl Objekts ersetzt.

EDITSTREAM Im Parameter esgeben Sie eine Rückruffunktion an, die einen Puffer mit Text ausfüllt. Diese Rückruffunktion wird wiederholt aufgerufen, bis der Eingabedatenstrom erschöpft ist.

Weitere Informationen finden Sie unter EM_STREAMIN Meldung und EDITSTREAM Struktur im Windows SDK.

Beispiel

// 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

Schreibt den Inhalt dieses CRichEditCtrl Objekts in den angegebenen Ausgabedatenstrom.

long StreamOut(
    int nFormat,
    EDITSTREAM& es);

Parameter

nFormat
Flags, die die Ausgabedatenformate angeben. Weitere Informationen finden Sie im Abschnitt Bemerkungen.

es
EDITSTREAM Struktur, die den Ausgabedatenstrom angibt. Weitere Informationen finden Sie im Abschnitt Bemerkungen.

Rückgabewert

Anzahl der Zeichen, die in den Ausgabedatenstrom geschrieben wurden.

Hinweise

Der Wert muss nFormat eine der folgenden Sein:

  • SF_TEXT Gibt nur das Schreiben von Text an.

  • SF_RTF Gibt das Schreiben von Text und Formatierung an.

  • SF_RTFNOOBJS Gibt das Schreiben von Text und Formatierung an, wobei OLE-Elemente durch Leerzeichen ersetzt werden.

  • SF_TEXTIZED Gibt das Schreiben von Text und Formatierung mit Textdarstellungen von OLE-Elementen an.

Jeder dieser Werte kann mit SFF_SELECTION. Wenn SFF_SELECTION angegeben, StreamOut schreibt die aktuelle Auswahl in den Ausgabedatenstrom. Wenn er nicht angegeben ist, StreamOut schreibt er den gesamten Inhalt dieses CRichEditCtrl Objekts aus.

EDITSTREAM Im Parameter esgeben Sie eine Rückruffunktion an, die einen Puffer mit Text ausfüllt. Diese Rückruffunktion wird wiederholt aufgerufen, bis der Ausgabedatenstrom erschöpft ist.

Weitere Informationen finden Sie unter EM_STREAMOUT Meldung und EDITSTREAM Struktur im Windows SDK.

Beispiel

// 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

Rückgängigmachen des letzten Vorgangs im Rich-Edit-Steuerelement.

BOOL Undo();

Rückgabewert

Nonzero, wenn der Rückgängig-Vorgang erfolgreich ist; andernfalls 0.

Hinweise

Ein Rückgängig-Vorgang kann auch rückgängig gemacht werden. Sie können beispielsweise gelöschten Text mit dem ersten Aufruf wiederherstellen.Undo Solange kein Bearbeitungsvorgang dazwischen besteht, können Sie den Text erneut mit einem zweiten Aufruf Undoentfernen.

Weitere Informationen finden Sie im EM_UNDO Windows SDK.

Beispiel

Sehen Sie sich das Beispiel für CanUndo.

Siehe auch

MFC-Beispiel FÜR WORDPAD
CWnd Klasse
Hierarchiediagramm
CEdit Klasse
CRichEditView Klasse