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 Koordinaten des Clientbereichs 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 CRichEditView
ihnen arbeiten.
Weitere Informationen zur Verwendung CRichEditCtrl
finden Sie unter:
Ein Beispiel für die Verwendung eines Rich-Edit-Steuerelements in einer MFC-Anwendung finden Sie in der WORDPAD-Beispielanwendung .
Vererbungshierarchie
CRichEditCtrl
Anforderungen
Header: afxcmn.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 RegisterClipboardFormat
ihnen 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 pt
angegebenen 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::CharFromPos
die 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 AfxInitRichEdit
auf, 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 OnNcCreate
Funktionen , OnNcCalcSize
, , OnCreate
und 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 OnCreate
Sie z. B. die erforderliche Initialisierung für die neue Klasse.
Wenden Sie die folgenden Fensterformatvorlagen auf ein Bearbeitungssteuerelement an.
WS_CHILD
Immer.WS_VISIBLE
Gewöhnlich.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 pParentWnd
beschreibt.
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
Ein Beispiel hierfür finden Sie unter 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 SetWindowText
aufrufen.
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 CHARRANGE
FINDTEXTEX
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_GETCHARFORMAT
CHARFORMAT
CHARFORMAT2
Strukturen im Windows SDK.
Beispiel
Ein Beispiel hierfür finden Sie unter 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
Ein Beispiel hierfür finden Sie unter 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 lpszBuffer
werden kann. Mit der zweiten Form wird GetLine
dieser Wert in das erste Wort des durch lpszBuffer
den Puffer angegebenen Puffers eingefügt.
Rückgabewert
Die Anzahl der zeichen, in lpszBuffer
die 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
Ein Beispiel hierfür finden Sie unter 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 verwaltet 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_GETPARAFORMAT
PARAFORMAT
PARAFORMAT2
Strukturen im Windows SDK.
Beispiel
Ein Beispiel hierfür finden Sie unter 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
Ein Beispiel hierfür finden Sie unter 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 dieCHARRANGE
Struktur mit seinencpMin
Elementen,cpMax
um die Grenzen zurückzugeben.GetSel(
nStartChar
,nEndChar
) Dieses Formular gibt die Grenzen in den ParameternnStartChar
undnEndChar
.
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_GETCHARFORMAT
CHARFORMAT
CHARFORMAT2
Strukturen im Windows SDK.
Beispiel
Ein Beispiel hierfür finden Sie unter 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, inlpBuf
die 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
Ein Beispiel hierfür finden Sie unter 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 dwFlags
wurden, 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 CWnd
in 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 LimitText
angegeben 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
Ein Beispiel hierfür finden Sie unter 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 Create
angegeben.
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
Ein Beispiel hierfür finden Sie unter 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 Koordinaten des Clientbereichs 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 SetSel
von (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
Ein Beispiel hierfür finden Sie unter 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 SetAutoURLDetect
TRUE
, 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_SETCHARFORMAT
CHARFORMAT
CHARFORMAT2
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
Ein Beispiel hierfür finden Sie unter 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 durchdwFlags
.ECOOP_OR
Kombinieren Sie die aktuellen Optionen mit den vondwFlags
.ECOOP_AND
Behalten Sie nur die aktuellen Optionen bei, die auch vondwFlags
.ECOOP_XOR
Logisch exklusive ODER die aktuellen Optionen mit denen, die durchdwFlags
angegeben 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 angebenECO_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_SETPARAFORMAT
PARAFORMAT
PARAFORMAT2
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 dieCHARRANGE
Struktur mit seinencpMin
Elementen,cpMax
um die Grenzen festzulegen.SetSel(
nStartChar
,nEndChar
) Dieses Formular verwendet die ParameternStartChar
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
Ein Beispiel hierfür finden Sie unter 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_SETCHARFORMAT
CHARFORMAT
CHARFORMAT2
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 es
geben 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 es
geben 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 Undo
entfernen.
Weitere Informationen finden Sie im EM_UNDO
Windows SDK.
Beispiel
Ein Beispiel hierfür finden Sie unter CanUndo
.
Siehe auch
MFC-Beispiel FÜR WORDPAD
CWnd
Klasse
Hierarchiediagramm
CEdit
Klasse
CRichEditView
Klasse