Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Megjegyzés:
A Microsoft Foundation Classes (MFC) könyvtár továbbra is támogatott. A továbbiakban azonban nem adunk hozzá funkciókat, és nem frissítjük a dokumentációt.
A részletes szerkesztési vezérlő funkcióit biztosítja.
Szemantika
class CRichEditCtrl : public CWnd
Tagok
Nyilvános konstruktorok
| Név | Description |
|---|---|
CRichEditCtrl::CRichEditCtrl |
Egy CRichEditCtrl objektumot hoz létre. |
Nyilvános metódusok
| Név | Description |
|---|---|
CRichEditCtrl::CanPaste |
Meghatározza, hogy a vágólap tartalma beilleszthető-e ebbe a gazdag szerkesztési vezérlőbe. |
CRichEditCtrl::CanRedo |
Meghatározza, hogy vannak-e műveletek a vezérlő ismétlési üzenetsorában. |
CRichEditCtrl::CanUndo |
Meghatározza, hogy visszavonható-e egy szerkesztési művelet. |
CRichEditCtrl::CharFromPos |
Beolvassa a szerkesztési vezérlő ügyfélterületének egy adott ponthoz legközelebb eső karakterével kapcsolatos információkat. |
CRichEditCtrl::Clear |
Törli az aktuális kijelölést. |
CRichEditCtrl::Copy |
Másolja az aktuális kijelölést a vágólapra. |
CRichEditCtrl::Create |
Létrehozza a Windows rich edit vezérlőt, és társítja az CRichEditCtrl objektumhoz. |
CRichEditCtrl::CreateEx |
Létrehozza a Windows rich edit vezérlőt a megadott kiterjesztett Windows-stílusokkal, és társítja az CRichEditCtrl objektummal. |
CRichEditCtrl::Cut |
Az aktuális kijelölést a vágólapra vágja. |
CRichEditCtrl::DisplayBand |
Megjeleníti az objektum tartalmának CRichEditCtrl egy részét. |
CRichEditCtrl::EmptyUndoBuffer |
Alaphelyzetbe állítja (törli) az objektum visszavonási jelzőjének jelölését CRichEditCtrl . |
CRichEditCtrl::FindText |
Megkeresi az CRichEditCtrl objektumon belüli szöveget. |
CRichEditCtrl::FindWordBreak |
Megkeresi a következő szótörést a megadott karakterpozíció előtt vagy után, vagy beolvassa az adott pozícióban lévő karakter adatait. |
CRichEditCtrl::FormatRange |
Szövegtartomány formázása a célkimeneti eszközhöz. |
CRichEditCtrl::GetCharPos |
Meghatározza egy adott karakter helyét az CRichEditCtrl objektumon belül. |
CRichEditCtrl::GetDefaultCharFormat |
Lekéri az objektum aktuális alapértelmezett karakterformázási CRichEditCtrl attribútumait. |
CRichEditCtrl::GetEventMask |
Lekéri az objektum eseménymaszkját CRichEditCtrl . |
CRichEditCtrl::GetFirstVisibleLine |
Meghatározza az objektum legfelül látható vonalát CRichEditCtrl . |
CRichEditCtrl::GetIRichEditOle |
A részletes szerkesztési vezérlő felületére mutató mutatót IRichEditOle kér le. |
CRichEditCtrl::GetLimitText |
Lekéri a felhasználó által az objektumba CRichEditCtrl beírható szöveg korlátját. |
CRichEditCtrl::GetLine |
Beolvas egy szövegsort ebből az CRichEditCtrl objektumból. |
CRichEditCtrl::GetLineCount |
Lekéri az objektumban lévő CRichEditCtrl sorok számát. |
CRichEditCtrl::GetModify |
Meghatározza, hogy az objektum tartalma megváltozott-e CRichEditCtrl az utolsó mentés óta. |
CRichEditCtrl::GetOptions |
Lekéri a szerkesztési lehetőségeket. |
CRichEditCtrl::GetParaFormat |
Beolvassa az objektum aktuális kijelölésének bekezdésformázási CRichEditCtrl attribútumait. |
CRichEditCtrl::GetPunctuation |
Lekéri a rich edit vezérlőelem aktuális írásjeleit. Ez az üzenet csak az operációs rendszer ázsiai nyelvű verzióiban érhető el. |
CRichEditCtrl::GetRect |
Lekéri az objektum formázási téglalapját CRichEditCtrl . |
CRichEditCtrl::GetRedoName |
Lekéri a vezérlő újraműveleti üzenetsorában a következő művelet típusát( ha van ilyen). |
CRichEditCtrl::GetSel |
Lekéri az objektum aktuális kijelölésének CRichEditCtrl kezdő és záró pozícióit. |
CRichEditCtrl::GetSelectionCharFormat |
Lekéri az objektum aktuális kijelölésének karakterformázási CRichEditCtrl attribútumait. |
CRichEditCtrl::GetSelectionType |
Lekéri az objektum aktuális kijelölésében szereplő tartalomtípust CRichEditCtrl . |
CRichEditCtrl::GetSelText |
Lekéri az objektum aktuális CRichEditCtrl kijelölésének szövegét |
CRichEditCtrl::GetTextLength |
A szöveg hosszát kéri le karakterben ebben az CRichEditCtrl objektumban. Nem tartalmazza a megszüntető null karaktert. |
CRichEditCtrl::GetTextLengthEx |
Beolvassa a karakterek vagy bájtok számát a rich edit nézetben. A jelölők listájának elfogadása a szöveg hosszának meghatározására a rich edit vezérlőelemben |
CRichEditCtrl::GetTextMode |
Lekéri az aktuális szöveges módot, és visszavonja a részletes szerkesztési vezérlő szintjét. |
CRichEditCtrl::GetTextRange |
Lekéri a megadott szövegtartományt. |
CRichEditCtrl::GetUndoName |
Lekéri a következő visszavonási művelet típusát, ha van ilyen. |
CRichEditCtrl::GetWordWrapMode |
Lekéri a részletes szerkesztési vezérlő aktuális szóburkolási és szótörési beállításait. Ez az üzenet csak az operációs rendszer ázsiai nyelvű verzióiban érhető el. |
CRichEditCtrl::HideSelection |
Megjeleníti vagy elrejti az aktuális kijelölést. |
CRichEditCtrl::LimitText |
Korlátozza a felhasználó által az CRichEditCtrl objektumba beírható szöveg mennyiségét. |
CRichEditCtrl::LineFromChar |
Meghatározza, hogy melyik sor tartalmazza a megadott karaktert. |
CRichEditCtrl::LineIndex |
Egy adott sor karakterindexét kéri le ebben az CRichEditCtrl objektumban. |
CRichEditCtrl::LineLength |
Egy adott sor hosszát kéri le ebben az CRichEditCtrl objektumban. |
CRichEditCtrl::LineScroll |
Görgeti az objektum szövegét CRichEditCtrl . |
CRichEditCtrl::Paste |
Beszúrja a vágólap tartalmát ebbe a részletes szerkesztési vezérlőbe. |
CRichEditCtrl::PasteSpecial |
Beszúrja a vágólap tartalmát ebbe a részletes szerkesztési vezérlőbe a megadott adatformátumban. |
CRichEditCtrl::PosFromChar |
Lekéri egy adott karakter ügyfélterület-koordinátáit egy szerkesztési vezérlőben. |
CRichEditCtrl::Redo |
Újra végrehajtja a következő műveletet a vezérlő ismétlési üzenetsorában. |
CRichEditCtrl::ReplaceSel |
Az objektum aktuális CRichEditCtrl kijelölését lecseréli a megadott szövegre. |
CRichEditCtrl::RequestResize |
Kényszeríti ezt az CRichEditCtrl objektumot a kérések átméretezésére vonatkozó értesítések küldésére. |
CRichEditCtrl::SetAutoURLDetect |
Azt jelzi, hogy az automatikus URL-észlelés aktív-e egy gazdag szerkesztési vezérlőben. |
CRichEditCtrl::SetBackgroundColor |
Beállítja az objektum háttérszínét CRichEditCtrl . |
CRichEditCtrl::SetDefaultCharFormat |
Beállítja az objektum aktuális alapértelmezett karakterformázási CRichEditCtrl attribútumait. |
CRichEditCtrl::SetEventMask |
Beállítja az objektum eseménymaszkját CRichEditCtrl . |
CRichEditCtrl::SetModify |
Beállítja vagy törli az objektum módosításjelzőjének jelölését CRichEditCtrl . |
CRichEditCtrl::SetOLECallback |
Beállítja a COM-objektumot ehhez a IRichEditOleCallback részletes szerkesztési vezérlőhöz. |
CRichEditCtrl::SetOptions |
Beállítja az CRichEditCtrl objektum beállításait. |
CRichEditCtrl::SetParaFormat |
Beállítja a bekezdésformázási attribútumokat az objektum aktuális kijelölésében CRichEditCtrl . |
CRichEditCtrl::SetPunctuation |
A rich edit vezérlőelem írásjeleit állítja be. Ez az üzenet csak az operációs rendszer ázsiai nyelvű verzióiban érhető el. |
CRichEditCtrl::SetReadOnly |
Beállítja az objektum írásvédett beállítását CRichEditCtrl . |
CRichEditCtrl::SetRect |
Beállítja az objektum formázási téglalapját CRichEditCtrl . |
CRichEditCtrl::SetSel |
A kijelölés beállítása ebben az CRichEditCtrl objektumban. |
CRichEditCtrl::SetSelectionCharFormat |
Az objektum aktuális kijelölésében szereplő karakterformázási attribútumokat állítja be CRichEditCtrl . |
CRichEditCtrl::SetTargetDevice |
Beállítja az objektum célkimeneti eszközét CRichEditCtrl . |
CRichEditCtrl::SetTextMode |
A rich edit vezérlőelem szövegmódját vagy visszavonási szintjét állítja be. Az üzenet meghiúsul, ha a vezérlő szöveget tartalmaz. |
CRichEditCtrl::SetUndoLimit |
Beállítja a visszavonási várólistában tárolható műveletek maximális számát. |
CRichEditCtrl::SetWordCharFormat |
Beállítja az objektum aktuális szójának CRichEditCtrl karakterformázási attribútumait. |
CRichEditCtrl::SetWordWrapMode |
A részletes szerkesztési vezérlő szóburkolási és szótörési beállításait állítja be. Ez az üzenet csak az operációs rendszer ázsiai nyelvű verzióiban érhető el. |
CRichEditCtrl::StopGroupTyping |
Megakadályozza, hogy a vezérlő további gépelési műveleteket gyűjtsön az aktuális visszavonási műveletbe. A vezérlő a következő beírási műveletet ( ha van ilyen) egy új műveletbe tárolja a visszavonási várólistában. |
CRichEditCtrl::StreamIn |
Szöveg beszúrása bemeneti adatfolyamból ebbe az CRichEditCtrl objektumba. |
CRichEditCtrl::StreamOut |
Az objektum szövegét CRichEditCtrl egy kimeneti streambe tárolja. |
CRichEditCtrl::Undo |
Megfordítja az utolsó szerkesztési műveletet. |
Megjegyzések
A "rich edit control" egy ablak, amelyben a felhasználó szöveget írhat be és szerkeszthet. A szöveg hozzárendelhető karakter- és bekezdésformázáshoz, és beágyazott OLE-objektumokat is tartalmazhat. A részletes szerkesztési vezérlők programozási felületet biztosítanak a szövegformázáshoz. Az alkalmazásnak azonban implementálnia kell minden olyan felhasználói felületi összetevőt, amely ahhoz szükséges, hogy a formázási műveleteket elérhetővé tegye a felhasználó számára.
Ez a Windows common control (és így az CRichEditCtrl osztály) csak a Windows 95/98 és a Windows NT 3.51-ös és újabb verzióiban futó programokhoz érhető el. Az CRichEditCtrl osztály támogatja a Windows SDK rich edit vezérlő 2.0-s és 3.0-s verzióját.
Caution
Ha egy párbeszédpanelen gazdag szerkesztési vezérlőt használ (függetlenül attól, hogy az alkalmazás SDI-, MDI- vagy párbeszédpanel-alapú), a párbeszédpanel megjelenése előtt egyszer kell hívnia AfxInitRichEdit . A függvény meghívásának tipikus helye a program tagfüggvénye InitInstance . Nem szükséges minden alkalommal meghívnia, amikor megjeleníti a párbeszédpanelt, csak az első alkalommal. Nem kell hívnia AfxInitRichEdit, ha a CRichEditView -val dolgozik.
További információ a használatról CRichEditCtrl:
Ha egy MFC-alkalmazásban gazdag szerkesztési vezérlőt használ, tekintse meg a WORDPAD mintaalkalmazást.
Öröklési hierarchia
CRichEditCtrl
Requirements
Fejléc:afxcmn.h
CRichEditCtrl::CanPaste
Meghatározza, hogy a rich edit vezérlő beillesztheti-e a megadott vágólapformátumot.
BOOL CanPaste(UINT nFormat = 0) const;
Paraméterek
nFormat
A lekérdezendő vágólap adatformátuma. Ez a paraméter lehet az előre definiált vágólapformátumok egyike vagy a visszaadott RegisterClipboardFormatérték.
Visszaadott érték
Nemzero, ha a vágólap formátuma beilleszthető; egyéb esetben 0.
Megjegyzések
Ha nFormat 0, CanPaste a vágólapon jelenleg bármilyen formátumot kipróbálhat.
További információ: EM_CANPASTE üzenet és RegisterClipboardFormat függvény a Windows SDK-ban.
Example
// Paste the clipboard data if possible.
if (m_myRichEditCtrl.CanPaste())
{
m_myRichEditCtrl.Paste();
}
CRichEditCtrl::CanRedo
Meghatározza, hogy az ismétlési üzenetsor tartalmaz-e műveleteket.
BOOL CanRedo() const;
Visszaadott érték
Nonzero, ha az ismétlési üzenetsor műveleteket tartalmaz, ellenkező esetben 0.
Megjegyzések
A művelet nevének az ismétlési üzenetsorban való felderítéséhez hívja fel a következőt CRichEditCtrl::GetRedoName: A legutóbbi visszavonási művelet újbóli végrehajtásához hívja meg a következőt Redo: .
További információt a Windows SDK-ban talál EM_CANREDO .
CRichEditCtrl::CanUndo
Meghatározza, hogy az utolsó szerkesztési művelet visszavonható-e.
BOOL CanUndo() const;
Visszaadott érték
Nonzero, ha az utolsó szerkesztési műveletet vissza lehet vonni a Undo tagfüggvény hívásával; 0, ha nem vonható vissza.
Megjegyzések
További információt a Windows SDK-ban talál EM_CANUNDO .
Example
// Undo the last operation, if possible.
if (m_myRichEditCtrl.CanUndo())
m_myRichEditCtrl.Undo();
CRichEditCtrl::CharFromPos
A paraméter ptáltal megadott ponton lévő karakter adatait kéri le.
int CharFromPos(CPoint pt) const;
Paraméterek
pt
A CPoint megadott pont koordinátáit tartalmazó objektum.
Visszaadott érték
A megadott ponthoz legközelebbi karakter nullaalapú karakterindexe. Ha a megadott pont meghaladja a vezérlőelem utolsó karakterét, a visszatérési érték a vezérlőelem utolsó karakterét jelzi.
Megjegyzések
Ez a tagfüggvény gazdag szerkesztési vezérlővel működik. A szerkesztési vezérlő adatainak lekéréséhez hívja meg a következőt CEdit::CharFromPos:
További információt a Windows SDK-ban talál EM_CHARFROMPOS .
CRichEditCtrl::Clear
Törli (törli) az aktuális kijelölést (ha van ilyen) a rich edit vezérlőelemben.
void Clear();
Megjegyzések
A tagfüggvény meghívásával visszavonható a Undo törlésClear.
Az aktuális kijelölés törléséhez és a törölt tartalom vágólapra helyezéséhez hívja meg a tagfüggvényt Cut .
További információt a Windows SDK-ban talál WM_CLEAR .
Example
// Delete all of the text.
m_myRichEditCtrl.SetSel(0, -1);
m_myRichEditCtrl.Clear();
CRichEditCtrl::Copy
Másolja az aktuális kijelölést (ha van ilyen) a rich edit vezérlőelemben a vágólapra.
void Copy();
Megjegyzések
További információt a Windows SDK-ban talál WM_COPY .
Example
// Copy all of the text to the clipboard.
m_myRichEditCtrl.SetSel(0, -1);
m_myRichEditCtrl.Copy();
CRichEditCtrl::Create
Létrehozza a Windows rich edit vezérlőt, és társítja az CRichEditCtrl objektumhoz.
virtual BOOL Create(
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Paraméterek
dwStyle
Megadja a szerkesztési vezérlő stílusát. Alkalmazza az alábbi Megjegyzések szakaszban felsorolt ablakstílusok kombinációját, és szerkessze a Windows SDK-ban leírt vezérlőstílusokat.
rect
Megadja a szerkesztési vezérlő méretét és pozícióját. Lehet objektum CRect vagy RECT struktúra.
pParentWnd
Megadja a szerkesztési vezérlő szülőablakát (gyakran a CDialog). Nem lehet NULL.
nID
Megadja a szerkesztési vezérlő azonosítóját.
Visszaadott érték
Nonzero, ha az inicializálás sikeres; ellenkező esetben 0.
Megjegyzések
Egy objektumot CRichEditCtrl két lépésben hozhat létre. Először hívja meg a CRichEditCtrl konstruktort, majd hívja meg Create, amely létrehozza a Windows szerkesztési vezérlőt, és csatolja azt az CRichEditCtrl objektumhoz.
Ha gazdag szerkesztési vezérlőt hoz létre ezzel a függvénnyel, először be kell töltenie a szükséges közös vezérlőtárat. A kódtár betöltéséhez hívja meg a globális függvényt AfxInitRichEdit, amely inicializálja a közös vezérlőtárat. A folyamat során csak egyszer kell hívást kezdeményeznie AfxInitRichEdit .
A végrehajtáskor Create a Windows elküldi a WM_NCCREATE, WM_NCCALCSIZE, WM_CREATEés WM_GETMINMAXINFO az üzeneteket a szerkesztési vezérlőnek.
Ezeket az üzeneteket alapértelmezés szerint az OnNcCreatealaposztály , OnNcCalcSize, OnCreateés OnGetMinMaxInfo tagfüggvényei CWnd kezelik. Az alapértelmezett üzenetkezelés kibővítéséhez származtassunk egy osztályt CRichEditCtrl, adjunk hozzá egy üzenettérképet az új osztályhoz, és felülbíráljuk a fenti üzenetkezelő tagfüggvényeket. Felülbírálhatja OnCreatepéldául az új osztály szükséges inicializálását.
Alkalmazza a következő ablakstílusokat egy szerkesztési vezérlőre.
WS_CHILDMindig.WS_VISIBLEÁltalában.WS_DISABLEDRitkán.WS_GROUPVezérlők csoportosítása.WS_TABSTOPSzerkesztési vezérlő belefoglalása a lapozási sorrendbe.
Az ablakstílusokról további információt a Windows SDK-ban talál CreateWindow .
Example
m_myRichEditCtrl.Create(
WS_CHILD | WS_VISIBLE | WS_BORDER | ES_MULTILINE,
CRect(10, 10, 100, 200), pParentWnd, IDD_RICHEDITCTRL);
CRichEditCtrl::CreateEx
Létrehoz egy vezérlőt (egy gyermekablakot), és társítja azt az CRichEditCtrl objektummal.
virtual BOOL CreateEx(
DWORD dwExStyle,
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Paraméterek
dwExStyle
A létrehozott vezérlőelem kiterjesztett stílusát adja meg. A bővített Windows-stílusok listáját a dwExStyle Windows SDK paraméterében CreateWindowEx találja.
dwStyle
Megadja a szerkesztési vezérlő stílusát. Alkalmazza a VezérlőstílusokMegjegyzések szakaszában Create felsorolt ablakstílusok kombinációját a Windows SDK-ban leírtak szerint.
rect
Hivatkozás a RECT létrehozandó ablak méretét és pozícióját leíró struktúrára a következő ügyfélkoordinátáiban pParentWnd: .
pParentWnd
A vezérlő szülőablakára mutató mutató.
nID
A vezérlő gyermekablak-azonosítója.
Visszaadott érték
Nonzero, ha sikeres; egyéb esetben 0.
Megjegyzések
Create A CreateEx bővített Windows-stílusok helyett használja a Windows bővített stílus előszavában WS_EX_megadott stílusokat.
CRichEditCtrl::CRichEditCtrl
Egy CRichEditCtrl objektumot hoz létre.
CRichEditCtrl();
Megjegyzések
A Windows rich edit vezérlőjének létrehozásához használható Create .
Example
// Declare a local CRichEditCtrl object.
CRichEditCtrl myRichEditCtrl;
// Declare a dynamic CRichEditCtrl object.
CRichEditCtrl* pRichEditCtrl = new CRichEditCtrl;
CRichEditCtrl::Cut
Törölje (kivágja) az aktuális kijelölést (ha van ilyen) a rich edit vezérlőelemben, és másolja a törölt szöveget a vágólapra.
void Cut();
Megjegyzések
A tagfüggvény meghívásával visszavonható a Undo törlésCut.
Ha úgy szeretné törölni az aktuális kijelölést, hogy nem helyezi el a törölt szöveget a vágólapra, hívja meg a tagfüggvényt Clear .
További információt a Windows SDK-ban talál WM_CUT .
Example
// Delete all of the text and copy it to the clipboard.
m_myRichEditCtrl.SetSel(0, -1);
m_myRichEditCtrl.Cut();
CRichEditCtrl::DisplayBand
A rich edit vezérlőelem (szöveg és OLE elemek) tartalmának egy részét jeleníti meg a korábban formázott FormatRangemódon.
BOOL DisplayBand(LPRECT pDisplayRect);
Paraméterek
pDisplayRect
Mutasson egy vagy CRect több RECT objektumra, amely megadja az eszköz területét a szöveg megjelenítéséhez.
Visszaadott érték
Nonzero, ha a formázott szöveg megjelenítése sikeres, ellenkező esetben 0.
Megjegyzések
A szöveg és az OLE elemek az egérmutató pDisplayRectáltal megadott területre lesznek vágva.
További információt a Windows SDK-ban talál EM_DISPLAYBAND .
Example
Lásd a példát a CRichEditCtrl::FormatRange.
CRichEditCtrl::EmptyUndoBuffer
Visszaállítja (törli) a részletes szerkesztési vezérlő visszavonási jelzőjének jelölését.
void EmptyUndoBuffer();
Megjegyzések
A vezérlő nem tudja visszavonni az utolsó szerkesztési műveletet. A visszavonási jelző minden alkalommal be van állítva, amikor a rich edit vezérlőelemen belüli művelet visszavonható.
A visszavonási jelző automatikusan törlődik, amikor meghívja a tagfüggvényt CWndSetWindowText.
További információt a Windows SDK-ban talál EM_EMPTYUNDOBUFFER .
Example
// Clear the undo buffer.
if (m_myRichEditCtrl.CanUndo())
{
m_myRichEditCtrl.EmptyUndoBuffer();
ASSERT(!m_myRichEditCtrl.CanUndo());
}
CRichEditCtrl::FindText
Szöveg keresése a rich edit vezérlőelemen belül.
long FindText(
DWORD dwFlags,
FINDTEXTEX* pFindText) const;
Paraméterek
dwFlags
A lehetséges értékek listáját a Windows SDK-ban EM_FINDTEXTEXT találjawParam.
pFindText
Mutasson arra a FINDTEXTEX struktúrára, amely megadja a keresés paramétereit, és visszaadja azt a tartományt, ahol az egyezés található.
Visszaadott érték
A következő egyezés nullaalapú karakterpozíciója; - 1, ha nincs több találat.
Megjegyzések
A struktúra FINDTEXTEX megfelelő tartományparamétereinek CHARRANGE beállításával felfelé vagy lefelé is kereshet.
További információ: EM_FINDTEXTEX üzenet és FINDTEXTEX struktúra a Windows SDK-ban.
Example
// 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
Megkeresi a következő szótörést a megadott nStartpozíció előtt vagy után.
DWORD FindWordBreak(
UINT nCode,
DWORD nStart) const;
Paraméterek
nCode
A végrehajtandó műveletet jelzi. A lehetséges értékek listájáért tekintse meg a paraméter code leírását a Windows SDK-ban EM_FINDWORDBREAK .
nStart
Az a nulla alapú karakterpozíció, amelyből kiindulni kell.
Visszaadott érték
A paraméter nCodealapján. További információt a Windows SDK-ban talál EM_FINDWORDBREAK .
Megjegyzések
Ez a tagfüggvény egy adott pozícióban lévő karakterre vonatkozó információk lekérésére használható.
CRichEditCtrl::FormatRange
Szövegtartomány formázása egy adott eszköz részletes szerkesztési vezérlőjében.
long FormatRange(
FORMATRANGE* pfr,
BOOL bDisplay = TRUE);
Paraméterek
pfr
Mutasson arra a FORMATRANGE struktúrára, amely a kimeneti eszköz adatait tartalmazza.
NULL azt jelzi, hogy a rich edit vezérlőelem gyorsítótárazott információi felszabadíthatók.
bDisplay
Azt jelzi, hogy a szöveget renderelni kell-e. Ha FALSE, akkor a szöveg csak meg van mérve.
Visszaadott érték
A régióban elférő utolsó karakter indexe plusz egy.
Megjegyzések
Ezt a hívást általában a következő hívás DisplayBandköveti: .
További információ: EM_FORMATRANGE üzenet és FORMATRANGE struktúra a Windows SDK-ban.
Example
// 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
Lekéri egy adott karakter pozícióját (bal felső sarokban) az CRichEditCtrl objektumon belül.
CPoint GetCharPos(long lChar) const;
Paraméterek
lChar
A karakter nulla alapú indexe.
Visszaadott érték
A karakter lCharbal felső sarkának helye.
Megjegyzések
A karakter a nullaalapú indexérték megadásával van megadva. Ha lChar nagyobb, mint az objektum utolsó karakterének CRichEditCtrl indexe, a visszatérési érték az objektum utolsó karakterén CRichEditCtrl túli karakterpozíció koordinátáit adja meg.
További információt a Windows SDK-ban talál EM_POSFROMCHAR .
CRichEditCtrl::GetDefaultCharFormat
Lekéri az objektum alapértelmezett karakterformázási attribútumait CRichEditCtrl .
DWORD GetDefaultCharFormat(CHARFORMAT& cf) const;
DWORD GetDefaultCharFormat(CHARFORMAT2& cf) const;
Paraméterek
cf
Az első verzióban az alapértelmezett karakterformázási attribútumokat tartalmazó struktúra mutatója CHARFORMAT .
A második verzióban egy szerkezetre CHARFORMAT2 mutató mutató, amely egy Rich Edit 2.0-bővítmény a CHARFORMAT szerkezethez, és az alapértelmezett karakterformázási attribútumokat tartja.
Visszaadott érték
A dwMask . adattagja cf. Megadta az alapértelmezett karakterformázási attribútumokat.
Megjegyzések
További információkért tekintse meg a EM_GETCHARFORMAT Windows SDK üzenetét CHARFORMAT és CHARFORMAT2 struktúráját.
Example
Lásd a példát a SetDefaultCharFormat.
CRichEditCtrl::GetEventMask
Lekéri az objektum eseménymaszkját CRichEditCtrl .
long GetEventMask() const;
Visszaadott érték
Az objektum eseménymaszkja CRichEditCtrl .
Megjegyzések
Az eseménymaszk megadja, hogy az CRichEditCtrl objektum mely értesítési üzeneteket küldi a szülőablakba.
További információt a Windows SDK-ban talál EM_GETEVENTMASK .
Example
Lásd a példát a CRichEditCtrl::SetEventMask.
CRichEditCtrl::GetFirstVisibleLine
Meghatározza az objektum legfelül látható vonalát CRichEditCtrl .
int GetFirstVisibleLine() const;
Visszaadott érték
Az objektum legfelső látható vonalának nulla alapú indexe CRichEditCtrl .
Megjegyzések
További információt a Windows SDK-ban talál EM_GETFIRSTVISIBLELINE .
Example
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
Hozzáfér az IRichEditOle objektum felületéhez CRichEditCtrl .
IRichEditOle* GetIRichEditOle() const;
Visszaadott érték
Mutasson arra a IRichEditOle felületre, amely az objektum OLE-funkcióinak eléréséhez CRichEditCtrl használható; NULL ha a felület nem érhető el.
Megjegyzések
Ezen a felületen érheti el az CRichEditCtrl objektum OLE-funkcióit.
További információ: EM_GETOLEINTERFACE üzenet és IRichEditOle felület a Windows SDK-ban.
CRichEditCtrl::GetLimitText
Lekéri az objektum szövegkorlátját CRichEditCtrl .
long GetLimitText() const;
Visszaadott érték
Az objektum jelenlegi szövegkorlátja bájtban CRichEditCtrl .
Megjegyzések
A szövegkorlát a szöveg maximális mennyisége, bájtban kifejezve a rich edit vezérlőelem elfogadható.
További információt a Windows SDK-ban talál EM_GETLIMITTEXT .
Example
// 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
Beolvas egy szövegsort ebből az CRichEditCtrl objektumból.
int GetLine(
int nIndex,
LPTSTR lpszBuffer) const;
int GetLine(
int nIndex,
LPTSTR lpszBuffer,
int nMaxLength) const;
Paraméterek
nIndex
A lekérendő sor nullaalapú indexe.
lpszBuffer
A szöveg fogadásához a pufferre mutat. A puffer első szójának meg kell adnia a pufferbe másolható bájtok maximális számát.
nMaxLength
A bemásolható lpszBufferkarakterek maximális száma. A második formátum GetLine ezt az értéket a puffer által megadott lpszBufferelső szóba helyezi.
Visszaadott érték
A bemásolt lpszBufferkarakterek száma.
Megjegyzések
A másolt vonal nem tartalmaz végződő null karaktert.
Megjegyzés:
Mivel a puffer első szava tárolja a másolandó karakterek számát, győződjön meg arról, hogy a puffer legalább 4 bájt hosszú.
További információt a Windows SDK-ban talál EM_GETLINE .
Example
Lásd a példát a GetLineCount.
CRichEditCtrl::GetLineCount
Lekéri az objektum sorainak CRichEditCtrl számát.
int GetLineCount() const;
Visszaadott érték
Az objektumban lévő CRichEditCtrl sorok száma.
Megjegyzések
További információt a Windows SDK-ban talál EM_GETLINECOUNT .
Example
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
Meghatározza, hogy az objektum tartalma módosult-e CRichEditCtrl .
BOOL GetModify() const;
Visszaadott érték
Nonzero, ha az objektum szövegét CRichEditCtrl módosították, ellenkező esetben 0.
Megjegyzések
A Windows egy belső jelzőt tart fenn, amely jelzi, hogy a rich edit vezérlő tartalma módosult-e. Ez a jelző törlődik a szerkesztési vezérlő első létrehozásakor, és a tagfüggvény meghívásával SetModify is törölhető.
További információt a Windows SDK-ban talál EM_GETMODIFY .
Example
// Reset the modified state only if the text has been modified.
if (m_myRichEditCtrl.GetModify())
m_myRichEditCtrl.SetModify(FALSE);
CRichEditCtrl::GetOptions
Lekéri a rich edit vezérlőelemhez jelenleg megadott beállításokat.
UINT GetOptions() const;
Visszaadott érték
Az aktuális beállításjelölő értékeinek kombinációja. Ezen értékek listájáért tekintse meg az fOptionsEM_SETOPTIONS üzenetben szereplő paramétert a Windows SDK-ban leírtak szerint.
CRichEditCtrl::GetParaFormat
Lekéri az aktuális kijelölés bekezdésformázási attribútumait.
DWORD GetParaFormat(PARAFORMAT& pf) const;
DWORD GetParaFormat(PARAFORMAT2& pf) const;
Paraméterek
pf
Az első verzióban egy struktúra mutatója PARAFORMAT az aktuális kijelölés bekezdésformázási attribútumainak tárolására.
A második verzióban egy szerkezetre PARAFORMAT2 mutató mutató, amely egy Rich Edit 2.0-bővítmény a PARAFORMAT szerkezethez, és az alapértelmezett karakterformázási attribútumokat tartja.
Visszaadott érték
A dwMask . adattagja pf. Az aktuális kijelölés során konzisztens bekezdésformázási attribútumokat adja meg.
Megjegyzések
Ha több bekezdés van kijelölve, pf megkapja az első kijelölt bekezdés attribútumait. A visszatérési érték határozza meg, hogy mely attribútumok konzisztensek a kijelölés során.
További információkért tekintse meg a EM_GETPARAFORMAT Windows SDK üzenetét PARAFORMAT és PARAFORMAT2 struktúráját.
Example
Lásd a példát a CRichEditCtrl::SetParaFormat.
CRichEditCtrl::GetPunctuation
Beolvashatja az aktuális írásjeleket egy gazdag szerkesztési vezérlőben.
BOOL GetPunctuation(
UINT fType,
PUNCTUATION* lpPunc) const;
Paraméterek
fType
Az írásjelek típusjelzője a Windows SDK paraméterében EM_GETPUNCTUATION leírtak fType szerint.
lpPunc
Mutató egy PUNCTUATION struktúrára a Windows SDK-ban leírtak szerint.
Visszaadott érték
Ha a művelet sikeres volt, akkor nem, ellenkező esetben 0.
Megjegyzések
Ez a tagfüggvény csak az operációs rendszer ázsiai nyelvű verzióival érhető el.
CRichEditCtrl::GetRect
Lekéri az objektum formázási téglalapját CRichEditCtrl .
void GetRect(LPRECT lpRect) const;
Paraméterek
lpRect
CRect vagy mutatót ad RECT az objektum formázási téglalapjának fogadásához CRichEditCtrl .
Megjegyzések
A formázási téglalap a szöveg határolókerete. Ez az érték független az objektum méretétől CRichEditCtrl .
További információt a Windows SDK-ban talál EM_GETRECT .
Example
Lásd a példát a LimitText.
CRichEditCtrl::GetRedoName
Lekéri a következő elérhető művelet típusát az ismétlési várólistában, ha van ilyen.
UNDONAMEID GetRedoName() const;
Visszaadott érték
Ha sikeres, GetRedoName a UNDONAMEID következő művelet típusát jelző enumerálási típust adja vissza a vezérlő ismétlési üzenetsorában. Ha az ismétlési üzenetsor üres, vagy ha az üzenetsor ismétlési művelete ismeretlen típusú, GetRedoName akkor 0 értéket ad vissza.
Megjegyzések
A visszavonható vagy újból végrehajtható műveletek típusai közé tartoznak a gépelési, törlési, húzási, kivágási és beillesztési műveletek. Ezek az információk olyan alkalmazások esetében lehetnek hasznosak, amelyek kiterjesztett felhasználói felületet biztosítanak a visszavonási és újraműveleti műveletekhez, például az újra végrehajtható műveletek legördülő listájához.
CRichEditCtrl::GetSel
Lekéri az objektum aktuális CRichEditCtrl kijelölésének határait.
void GetSel(CHARRANGE& cr) const;
void GetSel(
long& nStartChar,
long& nEndChar) const;
Paraméterek
cr
Hivatkozás egy CHARRANGE olyan struktúrára, amely az aktuális kijelölés határait fogadja.
nStartChar
Az aktuális kijelölés első karakterének nullaalapú indexe.
nEndChar
Az aktuális kijelölés utolsó karakterének nullaalapú indexe.
Megjegyzések
A függvény két formája alternatív módszereket kínál a kijelölés határainak lekérésére. Az űrlapok rövid leírása a következő:
GetSel(
cr) Ez az űrlap aCHARRANGEstruktúrát éscpMaxannakcpMintagjait használja a korlátok visszaadásához.GetSel(
nStartChar,nEndChar) Ez az űrlap a paramétereknStartCharésnEndChara .
A kijelölés mindent tartalmaz, ha az első (cpMin vagy nStartChar) 0, a vége (cpMax vagy nEndChar) pedig - 1.
További információ: EM_EXGETSEL üzenet és CHARRANGE struktúra a Windows SDK-ban.
Example
// 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
Lekéri az aktuális kijelölés karakterformázási attribútumait.
DWORD GetSelectionCharFormat(CHARFORMAT& cf) const;
DWORD GetSelectionCharFormat(CHARFORMAT2& cf) const;
Paraméterek
cf
Az első verzióban egy struktúra mutatója CHARFORMAT fogadja az aktuális kijelölés karakterformázási attribútumait.
A második verzióban egy struktúra mutatója CHARFORMAT2 , amely egy Rich Edit 2.0-bővítmény a struktúrához, CHARFORMAT hogy megkapja az aktuális kijelölés karakterformázási attribútumait.
Visszaadott érték
A dwMask . adattagja cf. Megadja azokat a karakterformázási attribútumokat, amelyek az aktuális kijelölés során konzisztensek.
Megjegyzések
A cf paraméter az aktuális kijelölés első karakterének attribútumait kapja meg. A visszatérési érték határozza meg, hogy mely attribútumok konzisztensek a kijelölés során.
További információkért tekintse meg a EM_GETCHARFORMAT Windows SDK üzenetét CHARFORMAT és CHARFORMAT2 struktúráját.
Example
Lásd a példát a SetSelectionCharFormat.
CRichEditCtrl::GetSelectionType
Meghatározza az objektum kijelölési típusát CRichEditCtrl .
WORD GetSelectionType() const;
Visszaadott érték
Az aktuális kijelölés tartalmát jelző jelzők. A következő jelölők kombinációja:
SEL_EMPTYAzt jelzi, hogy nincs aktuális kijelölés.SEL_TEXTAzt jelzi, hogy az aktuális kijelölés szöveget tartalmaz.SEL_OBJECTAzt jelzi, hogy az aktuális kijelölés legalább egy OLE elemet tartalmaz.SEL_MULTICHARAzt jelzi, hogy az aktuális kijelölés több szöveg karaktert tartalmaz.SEL_MULTIOBJECTAzt jelzi, hogy az aktuális kijelölés egynél több OLE objektumot tartalmaz.
Megjegyzések
További információt a Windows SDK-ban talál EM_SELECTIONTYPE .
Example
// 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
Lekéri a szöveget az objektum aktuális kijelöléséből CRichEditCtrl .
long GetSelText(LPSTR lpBuf) const;
CString GetSelText() const;
Paraméterek
lpBuf
Az aktuális kijelölés szövegének fogadásához mutasson a pufferre.
Visszaadott érték
Az űrlaptól függ:
GetSelText(lpBuf)A bemásoltlpBufkarakterek száma, a null végződést nem beleértve.GetSelText( )Az aktuális kijelölést tartalmazó sztring.
Megjegyzések
Ha az első űrlapot használja, győződjön meg arról, GetSelText(lpBuf)hogy a puffer elég nagy ahhoz a szöveghez, amelyet kapni fog. Hívás GetSel az aktuális kijelölésben szereplő karakterek számának meghatározásához.
További információt a Windows SDK-ban talál EM_GETSELTEXT .
Example
Lásd a példát a CRichEditCtrl::GetSelectionType.
CRichEditCtrl::GetTextLength
Beolvassa a szöveg hosszát ebben az objektumban karakterekben CRichEditCtrl , a null karaktert nem beleértve.
long GetTextLength() const;
Visszaadott érték
Az objektum szövegének CRichEditCtrl hossza.
Megjegyzések
További információt a Windows SDK-ban talál WM_GETTEXTLENGTH .
Example
// Limit the rich edit controls text to the number of
// characters currently in it.
m_myRichEditCtrl.LimitText(m_myRichEditCtrl.GetTextLength());
CRichEditCtrl::GetTextLengthEx
Kiszámítja a rich edit vezérlőelem szövegének hosszát.
long GetTextLengthEx(
DWORD dwFlags,
UINT uCodePage = -1) const;
Paraméterek
dwFlags
A szöveg hosszának meghatározásához használandó metódust meghatározó érték. Ez a tag egy vagy több lehet a Windows SDK-ban leírt jelzőkben GETTEXTLENGTHEX felsorolt értékek közül.
uCodePage
Kódlap fordításhoz (CP_ACP ANSI-kódlap, Unicode esetén 1200).
Visszaadott érték
A szerkesztési vezérlőben lévő karakterek vagy bájtok száma. Ha inkompatibilis jelzők lettek beállítva dwFlags, ez a tagfüggvény ad E_INVALIDARGvissza.
Megjegyzések
GetTextLengthEx további módszereket biztosít a szöveg hosszának meghatározására. Támogatja a Rich Edit 2.0 funkciót. További információt a Windows SDK rich edit vezérlőiről talál.
CRichEditCtrl::GetTextMode
Lekéri az aktuális szöveges módot, és visszavonja a részletes szerkesztési vezérlő szintjét.
UINT GetTextMode() const;
Visszaadott érték
Az enumerálási típus bitjelzőinek TEXTMODE készlete a Windows SDK-ban leírtak szerint. A jelölők az aktuális szövegmódot jelölik, és visszavonják a vezérlőelem szintjét.
CRichEditCtrl::GetTextRange
Lekéri a megadott karaktertartományt.
int GetTextRange(
int nFirst,
int nLast,
CString& refString) const;
Paraméterek
nFirst
A tartomány első karakterét közvetlenül megelőző karakterpozícióindex.
nLast
A karakter pozíciója közvetlenül a tartomány utolsó karaktere után.
refString
Hivatkozás egy CString olyan objektumra, amely megkapja a szöveget.
Visszaadott érték
A másolt karakterek száma, a null karaktert nem beleértve.
Megjegyzések
További információt a Windows SDK-ban talál EM_GETTEXTRANGE .
GetTextRange támogatja a Rich Edit 2.0 funkciót. További információt a Windows SDK rich edit vezérlőiről talál.
CRichEditCtrl::GetUndoName
Lekéri a visszavonási üzenetsor következő elérhető műveletének típusát, ha van ilyen.
UNDONAMEID GetUndoName() const;
Visszaadott érték
Ha egy visszavonási művelet szerepel a vezérlő visszavonási üzenetsorában, GetUndoName a VISSZAVONÁSNÉVID enumerálási típust adja vissza, amely az üzenetsor következő műveletének típusát jelzi. Ha a visszavonási üzenetsor üres, vagy ha az üzenetsor visszavonási művelete ismeretlen típusú, GetUndoName akkor 0 értéket ad vissza.
Megjegyzések
A visszavonható vagy újból végrehajtható műveletek típusai közé tartoznak a gépelési, törlési, húzási, kivágási és beillesztési műveletek. Ezek az információk olyan alkalmazások esetében lehetnek hasznosak, amelyek kiterjesztett felhasználói felületet biztosítanak a visszavonási és újraműveleti műveletekhez, például a visszavonható műveletek legördülő listájához.
CRichEditCtrl::GetWordWrapMode
Lekéri a részletes szerkesztési vezérlő aktuális szóburkolási és szótörési beállításait.
UINT GetWordWrapMode() const;
Visszaadott érték
Az aktuális szóburkolási és szótörési lehetőségek. Ezeket a beállításokat a Windows SDK ismerteti EM_SETWORDWRAPMODE .
Megjegyzések
Ez a tagfüggvény csak az operációs rendszer ázsiai nyelvű verzióihoz érhető el.
CRichEditCtrl::HideSelection
Megváltoztatja a kijelölés láthatóságát.
void HideSelection(
BOOL bHide,
BOOL bPerm);
Paraméterek
bHide
Azt jelzi, hogy a kijelölésnek láthatónak vagy rejtettnek kell-e lennie a TRUE kijelölés elrejtéséhez.
bPerm
Azt jelzi, hogy a kijelölés láthatóságának változásának állandónak kell-e lennie.
Megjegyzések
Ha bPerm igen TRUE, az módosítja az ECO_NOHIDESEL objektum beállítását CRichEditCtrl . Ennek a beállításnak a rövid leírását lásd SetOptions: . Ezzel a függvénnyel beállíthatja az objektum összes beállítását CRichEditCtrl .
További információt a Windows SDK-ban talál EM_HIDESELECTION .
Example
// Show the selection and make it permanent.
m_myRichEditCtrl.HideSelection(FALSE, TRUE);
CRichEditCtrl::LimitText
Korlátozza annak a szövegnek a hosszát, amelyet a felhasználó be tud írni egy szerkesztési vezérlőbe.
void LimitText(long nChars = 0);
Paraméterek
nChars
A felhasználó által megadható szöveg hosszát (bájtban) adja meg. Ha ez a paraméter 0 (az alapértelmezett érték), a szöveg hossza 64 000 bájtra van állítva.
Megjegyzések
A szövegkorlát módosítása csak a felhasználó által beírható szöveget korlátozza. Nincs hatással a szerkesztési vezérlőben már meglévő szövegekre, és nem befolyásolja a szerkesztési vezérlőbe másolt szöveg hosszát a SetWindowText tagfüggvényben CWnd. Ha egy alkalmazás a SetWindowText függvény használatával több szöveget helyez egy szerkesztési vezérlőbe, mint amelyet a hívásban LimitTextmegadott, a felhasználó törölheti a szerkesztési vezérlő bármelyik szövegét. A szövegkorlát azonban megakadályozza, hogy a felhasználó lecserélje a meglévő szöveget új szövegre, kivéve, ha az aktuális kijelölés törlése miatt a szöveg a szövegkorlát alá csökken.
Megjegyzés:
A szövegkorlát esetében minden OLE-elem egyetlen karakternek számít.
További információt a Windows SDK-ban talál EM_EXLIMITTEXT .
Example
// 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
Lekéri a megadott karakterindexet tartalmazó sor sorszámát.
long LineFromChar(long nIndex) const;
Paraméterek
nIndex
A szerkesztési vezérlő szövegében a kívánt karakter nullaalapú indexértékét tartalmazza, vagy -1 értéket tartalmaz. Ha nIndex -1, akkor az aktuális sort adja meg, vagyis azt a vonalat, amely a gondviseletet tartalmazza.
Visszaadott érték
A megadott karakterindexet nIndextartalmazó sor nullaalapú vonalszáma. Ha nIndex -1, a program visszaadja a kijelölés első karakterét tartalmazó sor számát. Ha nincs kijelölés, a program az aktuális sorszámot adja vissza.
Megjegyzések
A karakterindex a rich edit vezérlőelem elejétől kezdődő karakterek száma. Karakterszámlálás esetén az OLE-elemek egyetlen karakternek számítanak.
További információt a Windows SDK-ban talál EM_EXLINEFROMCHAR .
Example
// 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
Lekéri az objektumon belüli CRichEditCtrl vonal karakterindexét.
int LineIndex(int nLine = -1) const;
Paraméterek
nLine
A szerkesztési vezérlőelem szövegében a kívánt sor indexértékét tartalmazza, vagy -1 értéket tartalmaz. Ha nLine -1, akkor az aktuális sort adja meg, vagyis azt a vonalat, amely a gondviseletet tartalmazza.
Visszaadott érték
A megadott vonal nLine karakterindexe vagy -1, ha a megadott sorszám nagyobb, mint a szerkesztési vezérlőben lévő sorok száma.
Megjegyzések
A karakterindex a rich edit vezérlőelem elejétől a megadott sorig lévő karakterek száma.
További információt a Windows SDK-ban talál EM_LINEINDEX .
Example
// 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
Egy sor hosszát kéri le egy rich edit vezérlőelemben.
int LineLength(int nLine = -1) const;
Paraméterek
nLine
Megadja annak a karakternek a karakterindexét, amelynek a hosszát le kell kérni. Ha ez a paraméter -1, a függvény visszaadja az aktuális sor (a metszést tartalmazó sor) hosszát, a vonalon belül kijelölt szöveg hosszát nem beleértve. Egysoros szerkesztési vezérlő meghívása esetén LineLength a rendszer figyelmen kívül hagyja ezt a paramétert.
Visszaadott érték
Ha LineLength többsoros szerkesztési vezérlőelemre van meghívva, a visszatérési érték a megadott sor nLinehossza (inTCHAR) lesz. Nem tartalmazza a sor végén lévő kocsivissza karaktert. Ha LineLength egysoros szerkesztési vezérlőelemre van meghívva, a visszatérési érték a szerkesztési vezérlőben lévő szöveg hossza (in TCHAR) lesz. Ha nLine nagyobb, mint a vezérlőelemben szereplő karakterek száma, akkor a visszatérési érték nulla.
Megjegyzések
LineIndex A tag függvénnyel lekérhet egy karakterindexet egy adott sorszámhoz az CRichEditCtrl objektumon belül.
További információt a Windows SDK-ban talál EM_LINELENGTH .
Example
Lásd a példát a LineIndex.
CRichEditCtrl::LineScroll
Többsoros szerkesztési vezérlő szövegének görgetése.
void LineScroll(
int nLines,
int nChars = 0);
Paraméterek
nLines
Meghatározza a függőlegesen görgetni kívánt sorok számát.
nChars
Meghatározza a vízszintesen görgetendő karakterpozíciók számát. Ez az érték figyelmen kívül lesz hagyva, ha a rich edit vezérlőelem stílusa vagy ES_CENTER stílusa ES_RIGHT van.
A szerkesztési stílusok a következőben vannak megadva: Create.
Megjegyzések
A szerkesztési vezérlő nem görget függőlegesen a szerkesztési vezérlő utolsó szövegsora mellett. Ha az aktuális vonal és a megadott nLines sorok száma meghaladja a szerkesztési vezérlőben lévő sorok teljes számát, az érték úgy van módosítva, hogy a szerkesztési vezérlő utolsó sora a szerkesztés-vezérlés ablakának elejére görgessen.
LineScroll segítségével vízszintesen görgethet bármely sor utolsó karaktere mellett.
További információt a Windows SDK-ban talál EM_LINESCROLL .
Example
Lásd a példát a GetFirstVisibleLine.
CRichEditCtrl::Paste
Beszúrja a vágólapról származó adatokat a CRichEditCtrl beszúrási pontba, a gondviselet helyébe.
void Paste();
Megjegyzések
Az adatok csak akkor lesznek beszúrva, ha a vágólap felismert formátumú adatokat tartalmaz.
További információt a Windows SDK-ban talál WM_PASTE .
Example
// Replace all of the text with the text in the clipboard.
m_myRichEditCtrl.SetSel(0, -1);
m_myRichEditCtrl.Paste();
CRichEditCtrl::PasteSpecial
Adott vágólapformátumban illessze be az adatokat ebbe az CRichEditCtrl objektumba.
void PasteSpecial(
UINT nClipFormat,
DWORD dvAspect = 0,
HMETAFILE hMF = 0);
Paraméterek
nClipFormat
Vágólap formátuma az CRichEditCtrl objektumba való beillesztéshez.
dvAspect
A vágólapról lekérendő adatok eszközeleme.
hMF
A beillesztendő objektum ikonikus nézetét tartalmazó metafájl kezelése.
Megjegyzések
Az új anyag be lesz szúrva a beszúrási pontra, a gondozás helyére.
További információt a Windows SDK-ban talál EM_PASTESPECIAL .
Example
// Paste the data from the clipboard as text.
m_myRichEditCtrl.PasteSpecial(CF_TEXT);
CRichEditCtrl::PosFromChar
Lekéri egy adott karakter ügyfélterület-koordinátáit egy szerkesztési vezérlőben.
CPoint PosFromChar(UINT nChar) const;
Paraméterek
nChar
A karakter nulla alapú indexe.
Visszaadott érték
A karakter pozíciója (x, y). Egysoros szerkesztési vezérlők esetén az y koordinátája mindig nulla.
Megjegyzések
További információt a Windows SDK-ban talál EM_POSFROMCHAR .
CRichEditCtrl::Redo
Újra végrehajtja a következő műveletet a vezérlő ismétlési üzenetsorában.
BOOL Redo();
Visszaadott érték
Nonzero, ha sikeres; ellenkező esetben 0.
Megjegyzések
További információt a Windows SDK-ban talál EM_REDO .
CRichEditCtrl::ReplaceSel
Az objektum aktuális CRichEditCtrl kijelölését lecseréli a megadott szövegre.
void ReplaceSel(
LPCTSTR lpszNewText,
BOOL bCanUndo = FALSE);
Paraméterek
lpszNewText
Mutató a helyettesítő szöveget tartalmazó null értékű sztringre.
bCanUndo
Ha meg szeretné adni, hogy a függvény visszavonható legyen, állítsa a paraméter értékét a következőre TRUE: . Az alapértelmezett érték a FALSE.
Megjegyzések
Az objektum összes szövegének CRichEditCtrl cseréjéhez használja a következőt CWnd::SetWindowText: .
Ha nincs aktuális kijelölés, a program beszúrja a helyettesítő szöveget a beszúrási pontra, vagyis az aktuális simítási helyre.
Ez a függvény a beszúrt szöveget a meglévő karakterformázással formázza. Ha a teljes szövegtartományt lecseréli (hívás ReplaceSelelőtt a SetSel(0,-1) hívással), a bekezdés karakterének vége megtartja az előző bekezdés formázását, amelyet az újonnan beszúrt szöveg örököl.
További információt a Windows SDK-ban talál EM_REPLACESEL .
Example
Lásd a példát a LineIndex.
CRichEditCtrl::RequestResize
Kényszeríti ezt az CRichEditCtrl objektumot, hogy értesítési üzeneteket küldjön EN_REQUESTRESIZE a szülőablakba.
void RequestResize();
Megjegyzések
Ez a függvény hasznos a feneketlen CRichEditCtrl objektumok feldolgozása soránCWnd::OnSize.
További információkért tekintse meg a EM_REQUESTRESIZE Windows SDK Rich Edit Vezérlőkről szóló szakaszának üzenetét és a Részletes szerkesztési vezérlőkről szóló szakaszt.
CRichEditCtrl::SetAutoURLDetect
Beállítja a rich edit vezérlőt, hogy automatikusan észleljen egy URL-címet.
BOOL SetAutoURLDetect(BOOL bEnable = TRUE);
Paraméterek
bEnable
Megadja, hogy a vezérlő úgy van-e beállítva, hogy automatikusan észleljen egy URL-címet. Ha TRUE, akkor engedélyezve van. Ha FALSE, akkor le van tiltva.
Visszaadott érték
Ha sikeres, akkor nulla, ellenkező esetben nem. Előfordulhat például, hogy az üzenet nem megfelelő memória miatt hiúsul meg.
Megjegyzések
Ha engedélyezve van, a rich edit vezérlő megvizsgálja a szöveget, hogy megállapítsa, egy szabványos URL-formátumnak felel-e meg. Ezeknek az URL-formátumoknak a listáját a Windows SDK-ban találja EM_AUTOURLDETECT .
Megjegyzés:
Ne állítsa be SetAutoURLDetect , hogy TRUE a szerkesztési vezérlő az URL-címeken kívül más szövegre használja-e az CFE_LINK effektust.
SetAutoURLDetect engedélyezi ezt az effektust az URL-címek esetében, és letiltja az összes többi szöveg esetében. Az effektusról CFE_LINK további információt a EN_LINK talál.
CRichEditCtrl::SetBackgroundColor
Beállítja az objektum háttérszínét CRichEditCtrl .
COLORREF SetBackgroundColor(
BOOL bSysColor,
COLORREF cr);
Paraméterek
bSysColor
Azt jelzi, hogy a háttérszínt a rendszer értékére kell-e állítani. Ha ez az érték, cr a TRUErendszer figyelmen kívül hagyja.
cr
A kért háttérszín. Csak akkor használható, ha bSysColor az FALSE.
Visszaadott érték
Az objektum előző háttérszíne CRichEditCtrl .
Megjegyzések
A háttérszín beállítható a rendszer értékére vagy egy megadott COLORREF értékre.
További információ: EM_SETBKGNDCOLOR üzenet és COLORREF struktúra a Windows SDK-ban.
Example
// Use red as the background color.
m_myRichEditCtrl.SetBackgroundColor(FALSE, RGB(255, 0, 0));
CRichEditCtrl::SetDefaultCharFormat
Beállítja az objektum új szövegének karakterformázási CRichEditCtrl attribútumait.
BOOL SetDefaultCharFormat(CHARFORMAT& cf);
BOOL SetDefaultCharFormat(CHARFORMAT2& cf);
Paraméterek
cf
Az első verzióban az új alapértelmezett karakterformázási attribútumokat tartalmazó struktúra mutatója CHARFORMAT .
A második verzióban az alapértelmezett karakterformázási attribútumokat tartalmazó szerkezetre mutató mutató CHARFORMAT2 , amely a CHARFORMAT szerkezet Rich Edit 2.0-bővítménye.
Visszaadott érték
Nonzero, ha sikeres; ellenkező esetben 0.
Megjegyzések
Ez a függvény csak a dwMask tag cf által megadott attribútumokat módosítja.
További információkért tekintse meg a EM_SETCHARFORMAT Windows SDK üzenetét CHARFORMAT és CHARFORMAT2 struktúráját.
Example
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
Beállítja az objektum eseménymaszkját CRichEditCtrl .
DWORD SetEventMask(DWORD dwEventMask);
Paraméterek
dwEventMask
Az objektum új eseménymaszkja CRichEditCtrl .
Visszaadott érték
Az előző eseménymaszk.
Megjegyzések
Az eseménymaszk megadja, hogy az CRichEditCtrl objektum mely értesítési üzeneteket küldi a szülőablakba.
További információt a Windows SDK-ban talál EM_SETEVENTMASK .
Example
// 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
Beállítja vagy törli a módosított jelölőt egy szerkesztési vezérlőhöz.
void SetModify(BOOL bModified = TRUE);
Paraméterek
bModified
Egy érték TRUE azt jelzi, hogy a szöveg módosult, és egy érték FALSE azt jelzi, hogy nincs módosítva. Alapértelmezés szerint a módosított jelző be van állítva.
Megjegyzések
A módosított jelző azt jelzi, hogy a szerkesztési vezérlőben lévő szöveg módosult-e. Automatikusan be van állítva, amikor a felhasználó módosítja a szöveget. Az értéke lekérhető a GetModify tagfüggvénnyel.
További információt a Windows SDK-ban talál EM_SETMODIFY .
Example
Lásd a példát a GetModify.
CRichEditCtrl::SetOLECallback
Objektumot IRichEditOleCallback ad az CRichEditCtrl objektumnak az OLE-hez kapcsolódó erőforrások és információk eléréséhez.
BOOL SetOLECallback(IRichEditOleCallback* pCallback);
Paraméterek
pCallback
Mutasson egy IRichEditOleCallback objektumra, amelyet az CRichEditCtrl objektum az OLE-hoz kapcsolódó erőforrások és információk lekérésére fog használni.
Visszaadott érték
Nonzero, ha sikeres; ellenkező esetben 0.
Megjegyzések
Ez az CRichEditCtrl objektum a megadott COM-objektum pCallbackhasználati számának növelését fogja meghívniIUnknown::AddRef.
További információ: EM_SETOLECALLBACK üzenet és IRichEditOleCallback felület a Windows SDK-ban.
CRichEditCtrl::SetOptions
Beállítja az CRichEditCtrl objektum beállításait.
void SetOptions(
WORD wOp,
DWORD dwFlags);
Paraméterek
wOp
A művelet típusát jelzi. Az alábbi értékek egyike:
ECOOP_SETÁllítsa be a beállításokat a megadottdwFlagsbeállításokra.ECOOP_ORAz aktuális beállítások kombinálása a megadottdwFlagsbeállításokkal.ECOOP_ANDCsak azokat az aktuális beállításokat őrizze meg, amelyek szintén meg vannak adva.dwFlagsECOOP_XORLogikailag kizárja VAGY az aktuális beállításokat a megadottdwFlagsbeállításokkal.
dwFlags
Részletes szerkesztési lehetőségek. A jelzőértékek a Megjegyzések szakaszban jelennek meg.
Megjegyzések
A lehetőségek a következő értékek kombinációját tartalmazhatják:
ECO_AUTOWORDSELECTIONAutomatikus szókijelölés dupla kattintással.ECO_AUTOVSCROLLAutomatikusan 10 karakterrel jobbra görgeti a szöveget, amikor a felhasználó beír egy karaktert a sor végére. Amikor a felhasználó lenyomja az ENTER billentyűt, a vezérlő az összes szöveget visszagörgeti a nulla pozícióba.ECO_AUTOHSCROLLAutomatikusan görget fel egy oldalt, amikor a felhasználó lenyomja az ENTER billentyűt az utolsó sorban.ECO_NOHIDESELA szerkesztési vezérlők alapértelmezett viselkedésének tagadása. Az alapértelmezett viselkedés elrejti a kijelölést, ha a vezérlő elveszíti a bemeneti fókuszt, és megjeleníti a kijelölést, amikor a vezérlő megkapja a bemeneti fókuszt. Ha megadjaECO_NOHIDESEL, a kijelölt szöveg invertált lesz, még akkor is, ha a vezérlőelem nincs fókuszban.ECO_READONLYMegakadályozza, hogy a felhasználó begépelje vagy szerkessze a szöveget a szerkesztési vezérlőben.ECO_WANTRETURNAzt adja meg, hogy a rendszer beszúrjon egy kocsivisszajelet, amikor a felhasználó lenyomja az ENTER billentyűt, miközben szöveget ír be egy többsoros rich edit vezérlőelembe egy párbeszédpanelen. Ha nem adja meg ezt a stílust, az ENTER billentyű lenyomásával egy parancsot küld a rich edit vezérlő szülőablakába, amely a szülőablak alapértelmezett gombjára (például egy párbeszédpanel OK gombjára) kattint. Ez a stílus nincs hatással az egysoros szerkesztési vezérlőre.ECO_SAVESELMegőrzi a kijelölést, ha a vezérlő elveszíti a fókuszt. Alapértelmezés szerint a vezérlő teljes tartalma ki lesz választva, amikor visszanyeri a fókuszt.ECO_VERTICALFüggőleges irányba rajzolja a szöveget és az objektumokat. Csak ázsiai nyelvekhez érhető el.
További információt a Windows SDK-ban talál EM_SETOPTIONS .
Example
// Add auto horizontal and vertical scrolling.
m_myRichEditCtrl.SetOptions(ECOOP_OR, ECO_AUTOVSCROLL |
ECO_AUTOHSCROLL);
CRichEditCtrl::SetParaFormat
Az objektum aktuális kijelölésének bekezdésformázási attribútumait állítja be CRichEditCtrl .
BOOL SetParaFormat(PARAFORMAT& pf);
BOOL SetParaFormat(PARAFORMAT2& pf);
Paraméterek
pf
Az első verzióban az új alapértelmezett bekezdésformázási attribútumokat tartalmazó struktúra mutatója PARAFORMAT .
A második verzióban egy szerkezetre PARAFORMAT2 mutató mutató, amely egy Rich Edit 2.0-bővítmény a PARAFORMAT szerkezethez, és az alapértelmezett karakterformázási attribútumokat tartja.
Visszaadott érték
Nonzero, ha sikeres; ellenkező esetben 0.
Megjegyzések
Ez a függvény csak a dwMask tag pf által megadott attribútumokat módosítja.
További információkért tekintse meg a EM_SETPARAFORMAT Windows SDK üzenetét PARAFORMAT és PARAFORMAT2 struktúráját.
Example
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
Az írásjeleket rich edit vezérlőelemben állítja be.
BOOL SetPunctuation(
UINT fType,
PUNCTUATION* lpPunc);
Paraméterek
fType
Az írásjel jelölője. A lehetséges értékek listáját a fType Windows SDK paraméterében EM_SETPUNCTUATION találja.
lpPunc
Mutató egy PUNCTUATION struktúrára a Windows SDK-ban leírtak szerint.
Visszaadott érték
Sikertelen, ha sikeres, egyébként 0.
Megjegyzések
Ez a tagfüggvény csak az operációs rendszer ázsiai nyelvű verzióihoz érhető el.
CRichEditCtrl::SetReadOnly
Módosítja az ECO_READONLY objektum beállítását CRichEditCtrl .
BOOL SetReadOnly(BOOL bReadOnly = TRUE);
Paraméterek
bReadOnly
Azt jelzi, hogy az objektum csak olvasható-e CRichEditCtrl .
Visszaadott érték
Nonzero, ha sikeres; ellenkező esetben 0.
Megjegyzések
Ennek a beállításnak a rövid leírását lásd SetOptions: . Ezzel a függvénnyel beállíthatja az objektum összes beállítását CRichEditCtrl .
További információt a Windows SDK-ban talál EM_SETREADONLY .
Example
// Set the rich edit control to be read-only.
m_myRichEditCtrl.SetReadOnly(TRUE);
ASSERT(m_myRichEditCtrl.GetStyle() & ES_READONLY);
CRichEditCtrl::SetRect
Beállítja az objektum formázási téglalapját CRichEditCtrl .
void SetRect(LPCRECT lpRect);
Paraméterek
lpRect
CRect vagy mutasson egy RECT olyanra, amely a formázási téglalap új határait jelzi.
Megjegyzések
A formázási téglalap a szöveg korlátozó téglalapja. A korlátozó téglalap független a rich edit vezérlőablak méretétől. Az CRichEditCtrl objektum első létrehozásakor a formázási téglalap mérete megegyezik az ablak ügyfélterületével. A SetRect formázási téglalap méretének vagy méretének növelése a rich edit ablaknál.
További információt a Windows SDK-ban talál EM_SETRECT .
Example
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
Az objektumon belüli CRichEditCtrl kijelölés beállítása.
void SetSel(
long nStartChar,
long nEndChar);
void SetSel(CHARRANGE& cr);
Paraméterek
nStartChar
A kijelölés első karakterének nullaalapú indexe.
nEndChar
A kijelölés utolsó karakterének nullaalapú indexe.
cr
CHARRANGE szerkezet, amely az aktuális kijelölés határait foglalja magában.
Megjegyzések
A függvény két formája alternatív módszereket kínál a kijelölés határainak beállítására. Az űrlapok rövid leírása a következő:
SetSel(
cr) Ez az űrlap aCHARRANGEstruktúrát éscpMaxannakcpMintagjait használja a korlátok beállításához.SetSel(
nStartChar,nEndChar) Ez az űrlap a paraméterek ésnStartCharaz nEndChar használatával állítja be a határokat.
A simító a kijelölés végére kerül, amelyet a kezdő (cpMin vagy nStartChar) és záró (cpMax vagy nEndChar) indexek nagyobbika jelez. Ez a függvény görgeti a lap tartalmát CRichEditCtrl , hogy a gondviselet látható legyen.
Az CRichEditCtrl objektum összes szövegének kijelöléséhez hívja meg SetSel a 0 kezdőindexet és az - 1 végpontindexet.
További információ: EM_EXSETSEL üzenet és CHARRANGE struktúra a Windows SDK-ban.
Example
Lásd a példát a GetSel.
CRichEditCtrl::SetSelectionCharFormat
Az objektum aktuális kijelölésében szereplő szöveg karakterformázási attribútumait állítja be CRichEditCtrl .
BOOL SetSelectionCharFormat(CHARFORMAT& cf);
BOOL SetSelectionCharFormat(CHARFORMAT2& cf);
Paraméterek
cf
Az első verzióban az aktuális kijelölés új karakterformázási attribútumait tartalmazó struktúra mutatója CHARFORMAT .
A második verzióban egy szerkezetre CHARFORMAT2 mutató mutató, amely a szerkezet Rich Edit 2.0-bővítménye CHARFORMAT , amely az aktuális kijelölés új karakterformázási attribútumait tartalmazza.
Visszaadott érték
Nonzero, ha sikeres; ellenkező esetben 0.
Megjegyzések
Ez a függvény csak a dwMaskcf tag által megadott attribútumokat módosítja.
További információ: a EM_SETCHARFORMAT Windows SDK és a CHARFORMATCHARFORMAT2 struktúrák.
Example
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
Beállítja az objektum WYSIWYG-formázásához használt céleszközt és vonalszélességű (amit lát, az az, amit kap) formázást ebben az CRichEditCtrl objektumban.
BOOL SetTargetDevice(
HDC hDC,
long lLineWidth);
BOOL SetTargetDevice(
CDC& dc,
long lLineWidth);
Paraméterek
hDC
Kezelje az új céleszköz eszközkörnyezetét.
lLineWidth
Formázáshoz használandó vonalszélesség.
dc
CDC az új céleszközhöz.
Visszaadott érték
Nonzero, ha sikeres; ellenkező esetben 0.
Megjegyzések
Ha ez a függvény sikeres, a rich edit vezérlő a paraméterként átadott eszközkörnyezet tulajdonosa. Ebben az esetben a hívó függvénynek nem szabad megsemmisítenie az eszközkörnyezetet.
További információt a Windows SDK-ban talál EM_SETTARGETDEVICE .
Example
// 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
Beállítja a szövegmódot, vagy visszavonja és újra elvégzi a részletes szerkesztési vezérlők szintjét.
BOOL SetTextMode(UINT fMode);
Paraméterek
fMode
Megadja a vezérlő szövegmódjának új beállításait, és visszavonja a szint paramétereit. A lehetséges értékek listáját a Windows SDK módparaméterében EM_SETTEXTMODE találja.
Visszaadott érték
Ha sikeres, akkor nulla, ellenkező esetben nem.
Megjegyzések
A szövegmódok leírását a Windows SDK-ban talál EM_SETTEXTMODE .
Ez a tagfüggvény meghiúsul, ha a vezérlő szöveget tartalmaz. Ha meg szeretné győződni arról, hogy a vezérlő üres, küldjön egy üres sztringet WM_SETTEXT tartalmazó üzenetet.
CRichEditCtrl::SetUndoLimit
Beállítja a visszavonási várólistában tárolható műveletek maximális számát.
UINT SetUndoLimit(UINT nLimit);
Paraméterek
nLimit
Megadja a visszavonási várólistában tárolható műveletek maximális számát. Állítsa nullára a visszavonás letiltásához.
Visszaadott érték
A részletes szerkesztési vezérlő visszavonási műveleteinek új maximális száma.
Megjegyzések
Alapértelmezés szerint a visszavonási várólista műveleteinek maximális száma 100. Ha növeli ezt a számot, elegendő memóriával kell rendelkeznie az új szám elhelyezéséhez. A jobb teljesítmény érdekében állítsa a korlátot a lehető legkisebb értékre.
CRichEditCtrl::SetWordCharFormat
Beállítja az objektumban CRichEditCtrl jelenleg kijelölt szó karakterformázási attribútumait.
BOOL SetWordCharFormat(CHARFORMAT& cf);
BOOL SetWordCharFormat(CHARFORMAT2& cf);
Paraméterek
cf
Az első verzióban az aktuálisan kijelölt szó új karakterformázási attribútumait tartalmazó struktúra mutatója CHARFORMAT .
A második verzióban egy szerkezetre CHARFORMAT2 mutató mutató, amely a szerkezet Rich Edit 2.0-bővítménye CHARFORMAT , amely az aktuálisan kijelölt szó új karakterformázási attribútumait tartalmazza.
Visszaadott érték
Nonzero, ha sikeres; ellenkező esetben 0.
Megjegyzések
Ez a függvény csak a dwMask tag cf által megadott attribútumokat módosítja.
További információkért tekintse meg a EM_SETCHARFORMAT Windows SDK üzenetét CHARFORMAT és CHARFORMAT2 struktúráját.
Example
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
A részletes szerkesztési vezérlő szóburkolási és szótörési beállításait állítja be.
UINT SetWordWrapMode(UINT uFlags) const;
Paraméterek
uFlags
A szóburkolás és a szótörés beállításának lehetőségei. A lehetséges lehetőségek listáját a Windows SDK-ban találja EM_SETWORDWRAPMODE .
Visszaadott érték
Az aktuális szóburkolási és szótörési lehetőségek.
Megjegyzések
Ez az üzenet csak az operációs rendszer ázsiai nyelvű verzióiban érhető el.
CRichEditCtrl::StopGroupTyping
Megakadályozza, hogy a vezérlő további gépelési műveleteket gyűjtsön az aktuális visszavonási műveletbe.
void StopGroupTyping();
Megjegyzések
A vezérlő a következő beírási műveletet ( ha van ilyen) egy új műveletbe tárolja a visszavonási várólistában.
További információt a Windows SDK-ban talál EM_STOPGROUPTYPING .
CRichEditCtrl::StreamIn
Az objektum szövegét CRichEditCtrl lecseréli a megadott bemeneti adatfolyamból származó szövegre.
long StreamIn(
int nFormat,
EDITSTREAM& es);
Paraméterek
nFormat
A bemeneti adatformátumokat meghatározó jelzők. További információért tekintse meg a Megjegyzések szakaszt.
es
EDITSTREAM a bemeneti adatfolyamot meghatározó struktúra. További információért tekintse meg a Megjegyzések szakaszt.
Visszaadott érték
A bemeneti adatfolyamból beolvasott karakterek száma.
Megjegyzések
Az értéknek a következők egyikének nFormat kell lennie:
SF_TEXTCsak olvasási szöveget jelez.SF_RTFA szöveg és a formázás olvasását jelzi.
Ezen értékek bármelyike kombinálható a .SFF_SELECTION Ha SFF_SELECTION meg van adva, StreamIn az aktuális kijelölést cserélje le a bemeneti adatfolyam tartalmára. Ha nincs megadva, StreamIn az objektum teljes tartalmát lecseréli CRichEditCtrl .
A paraméterben EDITSTREAMesmeg kell adnia egy visszahívási függvényt, amely szöveggel tölti ki a puffert. Ezt a visszahívási függvényt a rendszer többször hívja meg, amíg a bemeneti adatfolyam ki nem merül.
További információ: EM_STREAMIN üzenet és EDITSTREAM struktúra a Windows SDK-ban.
Example
// 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
Kiírja az objektum tartalmát CRichEditCtrl a megadott kimeneti adatfolyamba.
long StreamOut(
int nFormat,
EDITSTREAM& es);
Paraméterek
nFormat
A kimeneti adatformátumokat meghatározó jelzők. További információért tekintse meg a Megjegyzések szakaszt.
es
EDITSTREAM a kimeneti streamet meghatározó struktúra. További információért tekintse meg a Megjegyzések szakaszt.
Visszaadott érték
A kimeneti streambe írt karakterek száma.
Megjegyzések
Az értéknek a következők egyikének nFormat kell lennie:
SF_TEXTCsak szöveg írását jelzi.SF_RTFSzöveg és formázás írását jelzi.SF_RTFNOOBJSSzöveg és formázás írását jelzi, az OLE-elemek szóközökkel való helyettesítését.SF_TEXTIZEDA szöveg és a formázás írását jelzi az OLE-elemek szöveges ábrázolása mellett.
Ezen értékek bármelyike kombinálható a .SFF_SELECTION Ha SFF_SELECTION meg van adva, StreamOut írja ki az aktuális kijelölést a kimeneti adatfolyamba. Ha nincs megadva, StreamOut az objektum teljes tartalmát CRichEditCtrl kiírja.
A paraméterben EDITSTREAMesmeg kell adnia egy visszahívási függvényt, amely szöveggel tölti ki a puffert. Ezt a visszahívási függvényt a függvény ismételten meghívja, amíg a kimeneti adatfolyam ki nem merül.
További információ: EM_STREAMOUT üzenet és EDITSTREAM struktúra a Windows SDK-ban.
Example
// 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
Visszavonja a rich edit vezérlőelem utolsó műveletét.
BOOL Undo();
Visszaadott érték
Nonzero, ha a visszavonási művelet sikeres; ellenkező esetben 0.
Megjegyzések
A visszavonási művelet is visszavonható. Visszaállíthatja például a törölt szöveget az első hívással Undo. Ha nincs beavatkozó szerkesztési művelet, a szöveget ismét eltávolíthatja egy második hívással Undo.
További információt a Windows SDK-ban talál EM_UNDO .
Example
Lásd a példát a CanUndo.
Lásd még
MFC-minta WORDPAD
CWnd osztály
hierarchiadiagram
CEdit osztály
CRichEditView osztály