CRichEditView Sınıfı
CRichEditDoc ve CRichEditCntrItem ile MFC'nin belge görünümü mimarisi bağlamında zengin düzenleme denetiminin işlevselliğini sağlar.
Sözdizimi
class CRichEditView : public CCtrlView
Üyeler
Ortak Oluşturucular
Veri Akışı Adı | Açıklama |
---|---|
CRichEditView::CRichEditView | Bir CRichEditView nesne oluşturur. |
Genel Yöntemler
Veri Akışı Adı | Açıklama |
---|---|
CRichEditView::AdjustDialogPosition | Geçerli seçimi gizlememesi için bir iletişim kutusunu taşır. |
CRichEditView::CanPaste | Pano'da zengin düzenleme görünümüne yapıştırılabilir veriler olup olmadığını bildirir. |
CRichEditView::D oPaste | Bir OLE öğesini bu zengin düzenleme görünümüne yapıştırır. |
CRichEditView::FindText | Belirtilen metni bulur ve bekleme imlecini çağırır. |
CRichEditView::FindTextSimple | Belirtilen metni bulur. |
CRichEditView::GetCharFormatSelection | Geçerli seçim için karakter biçimlendirme özniteliklerini alır. |
CRichEditView::GetDocument | İlgili CRichEditDoc için bir işaretçi alır. |
CRichEditView::GetInPlaceActiveItem | Zengin düzenleme görünümünde şu anda yerinde etkin olan OLE öğesini alır. |
CRichEditView::GetMargins | Bu zengin düzenleme görünümü için kenar boşluklarını alır. |
CRichEditView::GetPageRect | Bu zengin düzenleme görünümü için sayfa dikdörtgenini alır. |
CRichEditView::GetPaperSize | Bu zengin düzenleme görünümü için kağıt boyutunu alır. |
CRichEditView::GetParaFormatSelection | Geçerli seçim için paragraf biçimlendirme özniteliklerini alır. |
CRichEditView::GetPrintRect | Bu zengin düzenleme görünümü için yazdırma dikdörtgenini alır. |
CRichEditView::GetPrintWidth | Bu zengin düzenleme görünümü için yazdırma genişliğini alır. |
CRichEditView::GetRichEditCtrl | Zengin düzenleme denetimini alır. |
CRichEditView::GetSelectedItem | Seçili öğeyi zengin düzenleme görünümünden alır. |
CRichEditView::GetTextLength | Zengin düzenleme görünümünde metnin uzunluğunu alır. |
CRichEditView::GetTextLengthEx | Zengin düzenleme görünümündeki karakter veya bayt sayısını alır. Uzunluğu belirleme yöntemi için genişletilmiş bayrak listesi. |
CRichEditView::InsertFileAsObject | Dosyayı OLE öğesi olarak ekler. |
CRichEditView::InsertItem | Ole öğesi olarak yeni bir öğe ekler. |
CRichEditView::IsRichEditFormat | Pano'da zengin düzenleme veya metin biçiminde veri içerip içermediğini bildirir. |
CRichEditView::OnCharEffect | Geçerli seçimin karakter biçimlendirmesini değiştirir. |
CRichEditView::OnParaAlign | Paragrafların hizalamasını değiştirir. |
CRichEditView::OnUpdateCharEffect | Karakter ortak üye işlevleri için Komut kullanıcı arabirimini güncelleştirir. |
CRichEditView::OnUpdateParaAlign | Paragraf genel üye işlevleri için Komut kullanıcı arabirimini güncelleştirir. |
CRichEditView::P rintInsideRect | Belirtilen metni verilen dikdörtgen içinde biçimlendirin. |
CRichEditView::P rintPage | Belirtilen metni verilen sayfa içinde biçimlendirin. |
CRichEditView::SetCharFormat | Geçerli seçim için karakter biçimlendirme özniteliklerini ayarlar. |
CRichEditView::SetMargins | Bu zengin düzenleme görünümü için kenar boşluklarını ayarlar. |
CRichEditView::SetPaperSize | Bu zengin düzenleme görünümü için kağıt boyutunu ayarlar. |
CRichEditView::SetParaFormat | Geçerli seçim için paragraf biçimlendirme özniteliklerini ayarlar. |
CRichEditView::TextNotFound | Denetimin iç arama durumunu sıfırlar. |
Korumalı Yöntemler
Veri Akışı Adı | Açıklama |
---|---|
CRichEditView::GetClipboardData | Bu zengin düzenleme görünümünde bir aralık için Pano nesnesi alır. |
CRichEditView::GetContextMenu | Sağ fare düğmesinde kullanmak üzere bir bağlam menüsü alır. |
CRichEditView::IsSelected | Verilen OLE öğesinin seçili olup olmadığını gösterir. |
CRichEditView::OnFindNext | Bir alt dizenin sonraki oluşumunu bulur. |
CRichEditView::OnInitialUpdate | Bir belgeye ilk eklendiğinde görünümü yeniler. |
CRichEditView::OnPasteNativeObject | Ole öğesinden yerel verileri alır. |
CRichEditView::OnPrinterChanged | Verilen cihaza yazdırma özelliklerini ayarlar. |
CRichEditView::OnReplaceAll | Belirli bir dizenin tüm oluşumlarını yeni bir dizeyle değiştirir. |
CRichEditView::OnReplaceSel | Geçerli seçimin yerini alır. |
CRichEditView::OnTextNotFound | İstenen metnin bulunamadığını belirten kullanıcı bildirimini işler. |
CRichEditView::QueryAcceptData | üzerindeki IDataObject veriler hakkında görmek için sorgular. |
CRichEditView::WrapChanged | Bu zengin düzenleme görünümü için hedef çıkış cihazını değerine m_nWordWrap göre ayarlar. |
Ortak Veri Üyeleri
Veri Akışı Adı | Açıklama |
---|---|
CRichEditView::m_nBulletIndent | Madde işareti listelerinin girinti miktarını gösterir. |
CRichEditView::m_nWordWrap | Sözcük kaydırma kısıtlamalarını gösterir. |
Açıklamalar
"Zengin düzenleme denetimi", kullanıcının metin girip düzenleyebileceği bir penceredir. Metne karakter ve paragraf biçimlendirmesi atanabilir ve eklenmiş OLE nesneleri içerebilir. Zengin düzenleme denetimleri, metni biçimlendirmek için bir programlama arabirimi sağlar. Ancak, bir uygulamanın biçimlendirme işlemlerinin kullanıcının kullanımına sunulması için gereken tüm kullanıcı arabirimi bileşenlerini uygulaması gerekir.
CRichEditView
metnin ve biçimlendirmenin özelliklerini korur. CRichEditDoc
görünümdeki OLE istemci öğelerinin listesini tutar. CRichEditCntrItem
OLE istemci öğesine kapsayıcı tarafı erişimi sağlar.
Bu Windows Ortak denetimi (ve dolayısıyla CRichEditCtrl ve ilgili sınıflar) yalnızca Windows 95/98 ve Windows NT sürüm 3.51 ve üzeri altında çalışan programlarda kullanılabilir.
MFC uygulamasında zengin düzenleme görünümü kullanma örneği için bkz . WORDPAD örnek uygulaması.
Devralma Hiyerarşisi
CRichEditView
Gereksinimler
Üst bilgi: afxrich.h
CRichEditView::AdjustDialogPosition
Verilen iletişim kutusunu geçerli seçimi gizlemeyecek şekilde taşımak için bu işlevi çağırın.
void AdjustDialogPosition(CDialog* pDlg);
Parametreler
pDlg
Nesne CDialog
işaretçisi.
CRichEditView::CanPaste
Pano'da bu zengin düzenleme görünümüne yapıştırılabilir bilgiler olup olmadığını belirlemek için bu işlevi çağırın.
BOOL CanPaste() const;
Dönüş Değeri
Pano, bu zengin düzenleme görünümünün kabul edebildiği bir biçimde veri içeriyorsa sıfır olmayan; aksi takdirde, 0.
CRichEditView::CRichEditView
Nesne oluşturmak CRichEditView
için bu işlevi çağır.
CRichEditView();
CRichEditView::D oPaste
DATAOBJ'deki OLE öğesini bu zengin düzenleme belgesine/görünümüne yapıştırmak için bu işlevi çağırın.
void DoPaste(
COleDataObject& dataobj,
CLIPFORMAT cf,
HMETAFILEPICT hMetaPict);
Parametreler
dataobj
Yapıştıracak verileri içeren COleDataObject.
Cf
İstenen Pano biçimi.
hMetaPict
Yapıştırılacak öğeyi temsil eden meta dosyası.
Açıklamalar
Çerçeve, QueryAcceptData'nın varsayılan uygulamasının bir parçası olarak bu işlevi çağırır.
Bu işlev, Özel Yapıştır işleyicisinin sonuçlarına göre yapıştırma türünü belirler. Cf 0 ise, yeni öğe geçerli simgesel gösterimi kullanır. Cf sıfır değilse ve hMetaPict NULL değilse, yeni öğe gösterimi için hMetaPict kullanır.
CRichEditView::FindText
Belirtilen metni bulmak ve geçerli seçim olarak ayarlamak için bu işlevi çağırın.
BOOL FindText(
LPCTSTR lpszFind,
BOOL bCase = TRUE,
BOOL bWord = TRUE,
BOOL bNext = TRUE);
Parametreler
lpszFind
Aranacak dizeyi içerir.
bCase
Aramanın büyük/küçük harfe duyarlı olup olmadığını gösterir.
bWord
Aramanın sözcüklerin bölümleriyle değil yalnızca tam sözcüklerle eşleşmesi gerekip gerekmediğini gösterir.
bİleri
Aramanın yönünü gösterir. TRUE ise, arama yönü arabelleğin sonuna doğru olur. YANLIŞ ise, arama yönü arabelleğin başına doğru olur.
Dönüş Değeri
lpszFind metni bulunursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Bu işlev, bulma işlemi sırasında bekleme imlecini görüntüler.
Örnek
void CMyRichEditView::OnReplaceAll(LPCTSTR lpszFind, LPCTSTR lpszReplace,
BOOL bCase, BOOL bWord)
{
CWaitCursor wait;
// no selection or different than what we are looking for
if (!FindText(lpszFind, bCase, bWord))
{
OnTextNotFound(lpszFind);
return;
}
GetRichEditCtrl().HideSelection(TRUE, FALSE);
m_nNumReplaced = 0;
do
{
GetRichEditCtrl().ReplaceSel(lpszReplace);
m_nNumReplaced++; // Record the number of replacements
} while (FindTextSimple(lpszFind));
GetRichEditCtrl().HideSelection(FALSE, FALSE);
}
CRichEditView::FindTextSimple
Belirtilen metni bulmak ve geçerli seçim olarak ayarlamak için bu işlevi çağırın.
BOOL FindTextSimple(
LPCTSTR lpszFind,
BOOL bCase = TRUE,
BOOL bWord = TRUE,
BOOL bNext = TRUE);
Parametreler
lpszFind
Aranacak dizeyi içerir.
bCase
Aramanın büyük/küçük harfe duyarlı olup olmadığını gösterir.
bWord
Aramanın sözcüklerin bölümleriyle değil yalnızca tam sözcüklerle eşleşmesi gerekip gerekmediğini gösterir.
bİleri
Aramanın yönünü gösterir. TRUE ise, arama yönü arabelleğin sonuna doğru olur. YANLIŞ ise, arama yönü arabelleğin başına doğru olur.
Dönüş Değeri
lpszFind metni bulunursa sıfır olmayan; aksi takdirde 0.
Örnek
CRichEditView::FindText örneğine bakın.
CRichEditView::GetCharFormatSelection
Geçerli seçimin karakter biçimlendirme özniteliklerini almak için bu işlevi çağırın.
CHARFORMAT2& GetCharFormatSelection();
Dönüş Değeri
Geçerli seçimin karakter biçimlendirme özniteliklerini içeren bir CHARFORMAT2 yapısı.
Açıklamalar
Daha fazla bilgi için windows SDK'sında EM_GETCHARFORMAT iletisine ve CHARFORMAT2 yapısına bakın.
Örnek
void CMyRichEditView::OnCharUnderline()
{
CHARFORMAT2 cf;
cf = GetCharFormatSelection();
if (!(cf.dwMask & CFM_UNDERLINE) || !(cf.dwEffects & CFE_UNDERLINE))
cf.dwEffects = CFE_UNDERLINE;
else
cf.dwEffects = 0;
cf.dwMask = CFM_UNDERLINE;
SetCharFormat(cf);
}
CRichEditView::GetClipboardData
Çerçeve, IRichEditOleCallback::GetClipboardData işleminin bir parçası olarak bu işlevi çağırır.
virtual HRESULT GetClipboardData(
CHARRANGE* lpchrg,
DWORD dwReco,
LPDATAOBJECT lpRichDataObj,
LPDATAOBJECT* lplpdataobj);
Parametreler
lpchrg
lplpdataobj tarafından belirtilen veri nesnesine kopyalanacak karakter aralığını (ve OLE öğeleri) belirten CHARRANGE yapısının işaretçisi.
dwReco
Pano işlemi bayrağı. Bu değerlerden biri olabilir.
Panoya Kopyala'yı RECO_COPY.
Panoya Kes'i RECO_CUT.
RECO_DRAG Sürükleme işlemi (sürükleyip bırakma).
RECO_DROP Bırakma işlemi (sürükleyip bırakma).
Pano'dan Yapıştır'ı RECO_PASTE.
lpRichDataObj
Zengin düzenleme denetiminden (IRichEditOle::GetClipboardData) Pano verilerini içeren bir IDataObject nesnesinin işaretçisi.
lplpdataobj
lpchrg parametresinde belirtilen aralığı temsil eden nesnenin IDataObject
adresini alan işaretçi değişkeninin işaretçisi. Bir hata döndürülürse lplpdataobj değeri yoksayılır.
Dönüş Değeri
İşlemin başarısını bildiren bir HRESULT değeri. HRESULT hakkında daha fazla bilgi için bkz . Windows SDK'sında COM Hata Kodlarının Yapısı.
Açıklamalar
Dönüş değeri başarılı olduğunu gösteriyorsa, IRichEditOleCallback::GetClipboardData
lplpdataobj tarafından erişileni döndürürIDataObject
; aksi takdirde lpRichDataObj tarafından erişilen değeri döndürür. Kendi Pano verilerinizi sağlamak için bu işlevi geçersiz kılın. Bu işlevin varsayılan uygulaması E_NOTIMPL döndürür.
Bu, gelişmiş bir geçersiz kılınabilir.
Daha fazla bilgi için bkz . Windows SDK'sında IRichEditOle::GetClipboardData, IRichEditOleCallback::GetClipboardData ve CHARRANGE ve Bkz . Windows SDK'sında IDataObject .
CRichEditView::GetContextMenu
Çerçeve, IRichEditOleCallback::GetContextMenu işleminin bir parçası olarak bu işlevi çağırır.
virtual HMENU GetContextMenu(
WORD seltyp,
LPOLEOBJECT lpoleobj,
CHARRANGE* lpchrg);
Parametreler
seltyp
Seçim türü. Seçim türü değerleri Açıklamalar bölümünde açıklanmıştır.
lpoleobj
Seçimde bir veya daha fazla OLE öğesi varsa, seçilen ilk OLE nesnesini belirten bir OLEOBJECT
yapı işaretçisi. Seçim öğe içermiyorsa, lpoleobj NULL olur. Yapı, OLEOBJECT
OLE nesnesi v tablosuna yönelik bir işaretçi tutar.
lpchrg
Geçerli seçimi içeren CHARRANGE yapısının işaretçisi.
Dönüş Değeri
Bağlam menüsünün tutamacı.
Açıklamalar
Bu işlev, sağ fare düğmesi aşağı işlemenin tipik bir parçasıdır.
Seçim türü aşağıdaki bayrakların herhangi bir bileşimi olabilir:
SEL_EMPTY Geçerli bir seçim olmadığını gösterir.
SEL_TEXT Geçerli seçimin metin içerdiğini gösterir.
SEL_OBJECT Geçerli seçimin en az bir OLE öğesi içerdiğini gösterir.
SEL_MULTICHAR Geçerli seçimin birden fazla metin karakteri içerdiğini gösterir.
SEL_MULTIOBJECT Geçerli seçimin birden fazla OLE nesnesi içerdiğini gösterir.
Varsayılan uygulama NULL döndürür. Bu, gelişmiş bir geçersiz kılınabilir.
Daha fazla bilgi için bkz . Windows SDK'sında IRichEditOleCallback::GetContextMenu ve CHARRANGE .
CRichEditView::GetDocument
Bu görünümle ilişkili işaretçiyi CRichEditDoc
almak için bu işlevi çağırın.
CRichEditDoc* GetDocument() const;
Dönüş Değeri
Nesnenizle ilişkilendirilmiş bir CRichEditDoc nesnesinin CRichEditView
işaretçisi.
CRichEditView::GetInPlaceActiveItem
Bu nesnede şu anda etkin olan OLE öğesini almak için bu CRichEditView
işlevi çağırın.
CRichEditCntrItem* GetInPlaceActiveItem() const;
Dönüş Değeri
Bu zengin düzenleme görünümünde tek, yerinde etkin CRichEditCntrItem nesnesinin işaretçisi; Şu anda yerinde etkin durumda ole öğesi yoksa NULL.
CRichEditView::GetMargins
Yazdırmada kullanılan geçerli kenar boşluklarını almak için bu işlevi çağırın.
CRect GetMargins() const;
Dönüş Değeri
Yazdırmada kullanılan kenar boşlukları, MM_TWIPS cinsinden ölçülür.
CRichEditView::GetPageRect
Yazdırmada kullanılan sayfanın boyutlarını almak için bu işlevi çağırın.
CRect GetPageRect() const;
Dönüş Değeri
Yazdırmada kullanılan sayfanın sınırları, MM_TWIPS olarak ölçülür.
Açıklamalar
Bu değer kağıt boyutuna göre belirlenir.
CRichEditView::GetPaperSize
Geçerli kağıt boyutunu almak için bu işlevi çağırın.
CSize GetPaperSize() const;
Dönüş Değeri
Yazdırmada kullanılan kağıdın boyutu, MM_TWIPS cinsinden ölçülür.
Örnek
void CMyRichEditView::OnPrint(CDC* pDC, CPrintInfo* pInfo)
{
UNREFERENCED_PARAMETER(pInfo);
// Get the current paper size and construct an actual printing
// rectangle by leaving out one half inch margin from each side.
CSize sizePaper = GetPaperSize();
CRect rectMargins(720, 720, sizePaper.cx - 720,
sizePaper.cy - 720);
// Need to set the margins when printing from CRichEditView
SetMargins(rectMargins);
// Set up three rectangular regions spaced an inch apart
CRect rectHeader(0, 0, rectMargins.right, 1440);
CRect rectBody(0, 1440, rectMargins.right, 1440 * 2);
CRect rectFooter(0, 1440 * 2, rectMargins.right, 1440 * 3);
// Format the first 10 characters in the buffer.
int nSavedDC = pDC->SaveDC();
PrintInsideRect(pDC, rectHeader, 0, 10, TRUE); // characters 0-10
pDC->RestoreDC(nSavedDC);
// Format the second 10 characters in the buffer.
nSavedDC = pDC->SaveDC();
PrintInsideRect(pDC, rectBody, 10, 20, TRUE); // characters 10-20
pDC->RestoreDC(nSavedDC);
// Format the third 10 characters in the buffer.
nSavedDC = pDC->SaveDC();
PrintInsideRect(pDC, rectFooter, 20, 30, TRUE); // characters 20-30
pDC->RestoreDC(nSavedDC);
// CRichEditView::OnPrint(pDC, pInfo);
}
CRichEditView::GetParaFormatSelection
Geçerli seçimin paragraf biçimlendirme özniteliklerini almak için bu işlevi çağırın.
PARAFORMAT2& GetParaFormatSelection();
Dönüş Değeri
Geçerli seçimin paragraf biçimlendirme özniteliklerini içeren bir PARAFORMAT2 yapısı.
Açıklamalar
Daha fazla bilgi için bkz . windows SDK'sında EM_GETPARAFORMAT iletisi ve PARAFORMAT2 yapısı.
CRichEditView::GetPrintRect
Sayfa dikdörtgeni içindeki yazdırma alanının sınırlarını almak için bu işlevi çağırın.
CRect GetPrintRect() const;
Dönüş Değeri
Yazdırmada kullanılan görüntü alanının sınırları, MM_TWIPS olarak ölçülür.
Örnek
void CMyRichEditView::OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo)
{
CRect rectPrintPage = GetPrintRect(); // Measured in MM_TWIPS
pInfo->SetMaxPage((m_nDocSizeInInches * 1440) / rectPrintPage.Height());
CRichEditView::OnBeginPrinting(pDC, pInfo);
}
CRichEditView::GetPrintWidth
Yazdırma alanının genişliğini belirlemek için bu işlevi çağırın.
int GetPrintWidth() const;
Dönüş Değeri
MM_TWIPS cinsinden ölçülen yazdırma alanının genişliği.
CRichEditView::GetRichEditCtrl
Nesneyle ilişkilendirilmiş CRichEditCtrl nesnesini almak için bu işlevi çağırınCRichEditView
.
CRichEditCtrl& GetRichEditCtrl() const;
Dönüş Değeri
Bu görünümün CRichEditCtrl
nesnesi.
Örnek
CRichEditView::FindText örneğine bakın.
CRichEditView::GetSelectedItem
Bu nesnede seçili durumdaki OLE öğesini (nesne CRichEditCntrItem
) almak için bu CRichEditView
işlevi çağırın.
CRichEditCntrItem* GetSelectedItem() const;
Dönüş Değeri
Nesnede seçilen CRichEditCntrItem nesnesinin işaretçisiCRichEditView
; Bu görünümde hiçbir öğe seçilmediyse NULL.
CRichEditView::GetTextLength
Bu nesnedeki metnin uzunluğunu almak için bu CRichEditView
işlevi çağırın.
long GetTextLength() const;
Dönüş Değeri
Bu CRichEditView
nesnedeki metnin uzunluğu.
CRichEditView::GetTextLengthEx
Bu nesnedeki metnin uzunluğunu hesaplamak için bu CRichEditView
üye işlevini çağırın.
long GetTextLengthEx(
DWORD dwFlags,
UINT uCodePage = -1) const;
Parametreler
dwFlags
Metin uzunluğunun belirlenmesinde kullanılacak yöntemi belirten değer. Bu üye, Windows SDK'sında açıklanan GETTEXTLENGTHEX'in bayraklar üyesinde listelenen değerlerden biri veya daha fazlası olabilir.
uCodePage
Çeviri için kod sayfası (ANSI Kod Sayfası için CP_ACP, Unicode için 1200).
Dönüş Değeri
Düzenleme denetimindeki karakter veya bayt sayısı. dwFlags içinde uyumsuz bayraklar ayarlandıysa, bu üye işlevi E_INVALIDARG döndürür.
Açıklamalar
GetTextLengthEx
, metnin uzunluğunu belirlemenin ek yollarını sağlar. Zengin Düzenleme 2.0 işlevselliğini destekler. Daha fazla bilgi için bkz . Windows SDK'sında Zengin Düzenleme Denetimleri Hakkında.
CRichEditView::InsertFileAsObject
Belirtilen dosyayı (CRichEditCntrItem nesnesi olarak) zengin düzenleme görünümüne eklemek için bu işlevi çağırın.
void InsertFileAsObject(LPCTSTR lpszFileName);
Parametreler
lpszFileName
Eklenecek dosyanın adını içeren dize.
CRichEditView::InsertItem
Zengin düzenleme görünümüne CRichEditCntrItem nesnesi eklemek için bu işlevi çağır.
HRESULT InsertItem(CRichEditCntrItem* pItem);
Parametreler
pItem
Eklenecek öğe işaretçisi.
Dönüş Değeri
Eklemenin başarısını gösteren HRESULT değeri.
Açıklamalar
HRESULT hakkında daha fazla bilgi için bkz . Windows SDK'sında COM Hata Kodlarının Yapısı.
CRichEditView::IsRichEditFormat
Cf'nin metin, zengin metin veya OLE öğeleri içeren zengin metin olan bir Pano biçimi olup olmadığını belirlemek için bu işlevi çağırabilirsiniz.
static BOOL AFX_CDECL IsRichEditFormat(CLIPFORMAT cf);
Parametreler
Cf
İlgilenen Pano biçimi.
Dönüş Değeri
Cf zengin bir düzenleme veya metin Pano biçimiyse sıfır olmayan.
CRichEditView::IsSelected
Belirtilen OLE öğesinin şu anda bu görünümde seçili olup olmadığını belirlemek için bu işlevi çağırın.
virtual BOOL IsSelected(const CObject* pDocItem) const;
Parametreler
pDocItem
Görünümdeki bir nesnenin işaretçisi.
Dönüş Değeri
Nesne seçiliyse sıfır olmayan; aksi takdirde 0.
Açıklamalar
Türetilmiş görünüm sınıfınızın OLE öğelerinin seçimini işlemek için farklı bir yöntemi varsa bu işlevi geçersiz kılın.
CRichEditView::m_nBulletIndent
Listedeki madde işareti öğelerinin girintisi; varsayılan olarak, 1/2 inç olan 720 birimdir.
int m_nBulletIndent;
CRichEditView::m_nWordWrap
Bu zengin düzenleme görünümü için sözcük kaydırma türünü gösterir.
int m_nWordWrap;
Açıklamalar
Aşağıdaki değerlerden biri:
WrapNone
Otomatik sözcük kaydırma olmadığını gösterir.WrapToWindow
Pencerenin genişliğine göre sözcük kaydırmayı gösterir.WrapToTargetDevice
Hedef cihazın özelliklerine göre sözcük kaydırmayı gösterir.
Örnek
CRichEditView::WrapChanged örneğine bakın.
CRichEditView::OnCharEffect
Geçerli seçimin karakter biçimlendirme efektlerini değiştirmek için bu işlevi çağırın.
void OnCharEffect(
DWORD dwMask,
DWORD dwEffect);
Parametreler
dwMask
Geçerli seçimde değiştirebileceğiniz karakter biçimlendirme efektleri.
dwEffect
geçiş için istenen karakter biçimlendirme efektleri listesi.
Açıklamalar
Bu işleve yapılan her çağrı, geçerli seçim için belirtilen biçimlendirme efektlerini değiştirir.
dwMask ve dwEffect parametreleri ve bunların olası değerleri hakkında daha fazla bilgi için Windows SDK'sında CHARFORMAT'ın ilgili veri üyelerine bakın.
Örnek
void CMyRichEditView::OnItalic()
{
OnCharEffect(CFM_ITALIC, CFE_ITALIC);
}
CRichEditView::OnFindNext
Bul/Değiştir iletişim kutusundan komutları işlerken çerçeve tarafından çağrılır.
virtual void OnFindNext(
LPCTSTR lpszFind,
BOOL bNext,
BOOL bCase,
BOOL bWord);
Parametreler
lpszFind
Bulunacak dize.
bİleri
Arama yönü: TRUE, aşağıyı gösterir; FALSE, yukarı.
bCase
Aramanın büyük/küçük harfe duyarlı olup olmadığını gösterir.
bWord
Aramanın yalnızca sözcüklerin tamamıyla eşleşip eşleşmediğini gösterir.
Açıklamalar
içinde metin bulmak için bu işlevi çağırın CRichEditView
. Türetilmiş görünüm sınıfınızın arama özelliklerini değiştirmek için bu işlevi geçersiz kılın.
CRichEditView::OnInitialUpdate
Görünüm ilk kez belgeye eklendikten sonra, ancak görünüm ilk kez görüntülenmeden önce çerçeve tarafından çağrılır.
virtual void OnInitialUpdate();
Açıklamalar
Bu işlevin varsayılan uygulaması, ipucu bilgisi olmadan CView::OnUpdate üye işlevini çağırır (yani, lHint parametresi için varsayılan 0 değerlerini ve pHint parametresi için NULL değerini kullanır). Belge hakkında bilgi gerektiren tek seferlik başlatmaları gerçekleştirmek için bu işlevi geçersiz kılın. Örneğin, uygulamanızda sabit boyutlu belgeler varsa, belge boyutuna göre bir görünümün kaydırma sınırlarını başlatmak için bu işlevi kullanabilirsiniz. Uygulamanız değişken boyutlu belgeleri destekliyorsa, belge her değiştiğinde kaydırma sınırlarını güncelleştirmek için kullanın OnUpdate
.
Örnek
CRichEditView::m_nWordWrap örneğine bakın.
CRichEditView::OnPasteNativeObject
Eklenmiş bir öğeden yerel verileri yüklemek için bu işlevi kullanın.
virtual BOOL OnPasteNativeObject(LPSTORAGE lpStg);
Parametreler
lpStg
IStorage nesnesinin işaretçisi.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde, 0;
Açıklamalar
Bunu genellikle çevresinde IStorage
bir COleStreamFile oluşturarak yaparsınız. COleStreamFile
bir arşive eklenebilir ve verileri yüklemek için CObject::Serialize çağrılabilir.
Bu, gelişmiş bir geçersiz kılınabilir.
Daha fazla bilgi için bkz . Windows SDK'sında IStorage .
CRichEditView::OnParaAlign
Seçili paragrafların paragraf hizalamasını değiştirmek için bu işlevi çağırın.
void OnParaAlign(WORD wAlign);
Parametreler
wAlign
İstenen paragraf hizalaması. Aşağıdaki değerlerden biri:
PFA_LEFT Paragrafları sol kenar boşluğuyla hizalayın.
PFA_RIGHT Paragrafları sağ kenar boşluğuyla hizalayın.
PFA_CENTER Paragrafları kenar boşlukları arasında ortalama.
Örnek
void CMyRichEditView::OnParaCenter()
{
OnParaAlign(PFA_CENTER);
}
CRichEditView::OnPrinterChanged
Yazıcı değiştiğinde bu zengin düzenleme görünümünün özelliklerini değiştirmek için bu işlevi geçersiz kılın.
virtual void OnPrinterChanged(const CDC& dcPrinter);
Parametreler
dcPrinter
Yeni yazıcı için bir CDC nesnesi.
Açıklamalar
Varsayılan uygulama, kağıt boyutunu çıkış cihazının (yazıcı) fiziksel yüksekliğine ve genişliğine ayarlar. dcPrinter ile ilişkilendirilmiş bir cihaz bağlamı yoksa, varsayılan uygulama kağıt boyutunu 8,5'e 11 inç olarak ayarlar.
CRichEditView::OnReplaceAll
Değiştir iletişim kutusundan Tümünü Değiştir komutları işlenirken çerçeve tarafından çağrılır.
virtual void OnReplaceAll(
LPCTSTR lpszFind,
LPCTSTR lpszReplace,
BOOL bCase,
BOOL bWord);
Parametreler
lpszFind
Değiştirilecek metin.
lpszReplace
Değiştirme metni.
bCase
Aramanın büyük/küçük harfe duyarlı olup olmadığını gösterir.
bWord
Aramanın sözcüklerin tamamını seçmesi gerekip gerekmediğini gösterir.
Açıklamalar
Belirli bir metnin tüm oluşumlarını başka bir dizeyle değiştirmek için bu işlevi çağırın. Bu görünümün arama özelliklerini değiştirmek için bu işlevi geçersiz kılın.
Örnek
CRichEditView::FindText örneğine bakın.
CRichEditView::OnReplaceSel
Değiştir iletişim kutusundan Değiştir komutları işlenirken çerçeve tarafından çağrılır.
virtual void OnReplaceSel(
LPCTSTR lpszFind,
BOOL bNext,
BOOL bCase,
BOOL bWord,
LPCTSTR lpszReplace);
Parametreler
lpszFind
Değiştirilecek metin.
bİleri
Aramanın yönünü gösterir: DOĞRU aşağı; FALSE, yukarı.
bCase
Aramanın büyük/küçük harfe duyarlı olup olmadığını gösterir.
bWord
Aramanın sözcüklerin tamamını seçmesi gerekip gerekmediğini gösterir.
lpszReplace
Değiştirme metni.
Açıklamalar
Belirli bir metnin bir oluşumunu başka bir dizeyle değiştirmek için bu işlevi çağırın. Bu görünümün arama özelliklerini değiştirmek için bu işlevi geçersiz kılın.
CRichEditView::OnTextNotFound
Bir arama başarısız olduğunda çerçeve tarafından çağrılır.
virtual void OnTextNotFound(LPCTSTR lpszFind);
Parametreler
lpszFind
Bulunmayan metin.
Açıklamalar
MessageBeep'ten çıkış bildirimini değiştirmek için bu işlevi geçersiz kılın.
Daha fazla bilgi için bkz . Windows SDK'sında MessageBeep .
Örnek
void CMyRichEditView::OnTextNotFound(LPCTSTR lpszFind)
{
// Replace the beep with a message box
CString str;
str.Format(_T("'%s' was not found."), lpszFind);
AfxMessageBox(str);
}
CRichEditView::OnUpdateCharEffect
Çerçeve, karakter efekti komutları için komut kullanıcı arabirimini güncelleştirmek üzere bu işlevi çağırır.
void OnUpdateCharEffect(
CCmdUI* pCmdUI,
DWORD dwMask,
DWORD dwEffect);
Parametreler
pCmdUI
CCmdUI nesnesinin işaretçisi.
dwMask
Karakter biçimlendirme maskesini gösterir.
dwEffect
Karakter biçimlendirme efektini gösterir.
Açıklamalar
Maske dwMask hangi karakter biçimlendirme özniteliklerinin denetleneceğini belirtir. dwEffect bayrakları, ayar/temizleme için karakter biçimlendirme özniteliklerini listeler.
dwMask ve dwEffect parametreleri ve bunların olası değerleri hakkında daha fazla bilgi için Windows SDK'sında CHARFORMAT'ın ilgili veri üyelerine bakın.
Örnek
void CMyRichEditView::OnUpdateCharItalicUI(CCmdUI* pCmdUI)
{
OnUpdateCharEffect(pCmdUI, CFM_ITALIC, CFE_ITALIC);
}
CRichEditView::OnUpdateParaAlign
Çerçeve, paragraf efekti komutları için komut kullanıcı arabirimini güncelleştirmek üzere bu işlevi çağırır.
void OnUpdateParaAlign(
CCmdUI* pCmdUI,
WORD wAlign);
Parametreler
pCmdUI
CCmdUI nesnesinin işaretçisi.
wAlign
Denetlenecek paragraf hizalaması. Aşağıdaki değerlerden biri:
PFA_LEFT Paragrafları sol kenar boşluğuyla hizalayın.
PFA_RIGHT Paragrafları sağ kenar boşluğuyla hizalayın.
PFA_CENTER Paragrafları kenar boşlukları arasında ortalama.
Örnek
void CMyRichEditView::OnUpdateParaCenterUI(CCmdUI* pCmdUI)
{
OnUpdateParaAlign(pCmdUI, PFA_CENTER);
}
CRichEditView::P rintInsideRect
Zengin düzenleme denetimindeki bir metin aralığını pDC tarafından belirtilen cihaz için rectLayout içine sığacak şekilde biçimlendirmek için bu işlevi çağırın.
long PrintInsideRect(
CDC* pDC,
RECT& rectLayout,
long nIndexStart,
long nIndexStop,
BOOL bOutput);
Parametreler
pDC
Çıkış alanı için bir cihaz bağlamı işaretçisi.
rectLayout
Çıkış alanını tanımlayan RECT veya CRect .
nIndexStart
Biçimlendirilecek ilk karakterin sıfır tabanlı dizini.
nIndexStop
Biçimlendirilecek son karakterin sıfır tabanlı dizini.
bOutput
Metnin işlenip işlenmediğini gösterir. YANLIŞ ise, metin yalnızca ölçülür.
Dönüş Değeri
Çıkış alanına ve bir karaktere uyan son karakterin dizini.
Açıklamalar
Genellikle bu çağrının ardından çıkışı oluşturan CRichEditCtrl::D isplayBand çağrısı gelir.
Örnek
CRichEditView::GetPaperSize örneğine bakın.
CRichEditView::P rintPage
pDC tarafından belirtilen çıkış cihazı için zengin düzenleme denetimindeki bir metin aralığını biçimlendirmek için bu işlevi çağırın.
long PrintPage(
CDC* pDC,
long nIndexStart,
long nIndexStop);
Parametreler
pDC
Sayfa çıkışı için cihaz bağlamı işaretçisi.
nIndexStart
Biçimlendirilecek ilk karakterin sıfır tabanlı dizini.
nIndexStop
Biçimlendirilecek son karakterin sıfır tabanlı dizini.
Dönüş Değeri
Sayfaya sığan son karakterin dizini artı bir karakter.
Açıklamalar
Her sayfanın düzeni GetPageRect ve GetPrintRect tarafından denetlenir. Genellikle bu çağrının ardından çıkışı oluşturan CRichEditCtrl::D isplayBand çağrısı gelir.
Kenar boşluklarının mantıksal sayfaya değil fiziksel sayfaya göre olduğunu unutmayın. Bu nedenle, birçok yazıcının sayfada yazdırılamayan alanları olduğundan, sıfır kenar boşlukları genellikle metni kırpacaktır. Metninizin kırpılmasını önlemek için, yazdırmadan önce SetMargins'i çağırmanız ve makul kenar boşlukları ayarlamanız gerekir.
CRichEditView::QueryAcceptData
Bir nesneyi zengin düzenlemeye yapıştırmak için çerçeve tarafından çağrılır.
virtual HRESULT QueryAcceptData(
LPDATAOBJECT lpdataobj,
CLIPFORMAT* lpcfFormat,
DWORD dwReco,
BOOL bReally,
HGLOBAL hMetaFile);
Parametreler
lpdataobj
Sorgu için IDataObject işaretçisi.
lpcfFormat
Kabul edilebilir veri biçimi işaretçisi.
dwReco
Kullanılmadı.
bReally
Yapıştırma işleminin devam etmesi gerekip gerekmediğini gösterir.
hMetaFile
Öğenin simgesini çizmek için kullanılan meta dosyasının tanıtıcısı.
Dönüş Değeri
İşlemin başarısını bildiren bir HRESULT değeri.
Açıklamalar
Türetilmiş belge sınıfınızdaki com öğelerinin farklı kuruluşlarını işlemek için bu işlevi geçersiz kılın. Bu, gelişmiş bir geçersiz kılınabilir.
HRESULT ve IDataObject
hakkında daha fazla bilgi için Windows SDK'sında sırasıyla COM Hata Kodlarının ve IDataObject'in Yapısı bölümüne bakın.
Örnek
// This code fragment is taken from the Wordpad sample.
HRESULT CMyRichEditView::QueryAcceptData(LPDATAOBJECT lpdataobj,
CLIPFORMAT* lpcfFormat, DWORD dwReco, BOOL bReally, HGLOBAL hMetaFile)
{
if (bReally && *lpcfFormat == 0 && (m_nPasteType == 0))
{
COleDataObject dataobj;
dataobj.Attach(lpdataobj, FALSE);
if (!dataobj.IsDataAvailable(cfRTO)) // native avail, let
// richedit do as it wants
{
if (dataobj.IsDataAvailable(cfEmbeddedObject))
{
if (PasteNative(lpdataobj)) // See WordPad sample for info
// on PasteNative
return S_FALSE;
}
}
}
return CRichEditView::QueryAcceptData(lpdataobj, lpcfFormat, dwReco,
bReally, hMetaFile);
}
CRichEditView::SetCharFormat
Bu nesnedeki yeni metnin karakter biçimlendirme özniteliklerini ayarlamak için bu CRichEditView
işlevi çağırın.
void SetCharFormat(CHARFORMAT2 cf);
Parametreler
Cf
Yeni varsayılan karakter biçimlendirme özniteliklerini içeren CHARFORMAT2 yapısı.
Açıklamalar
Yalnızca cf üyesi tarafından dwMask
belirtilen öznitelikler bu işlev tarafından değiştirilir.
Daha fazla bilgi için bkz . windows SDK'sında EM_SETCHARFORMAT iletisi ve CHARFORMAT2 yapısı.
Örnek
void CMyRichEditView::OnCharUnderline()
{
CHARFORMAT2 cf;
cf = GetCharFormatSelection();
if (!(cf.dwMask & CFM_UNDERLINE) || !(cf.dwEffects & CFE_UNDERLINE))
cf.dwEffects = CFE_UNDERLINE;
else
cf.dwEffects = 0;
cf.dwMask = CFM_UNDERLINE;
SetCharFormat(cf);
}
CRichEditView::SetMargins
Bu zengin düzenleme görünümü için yazdırma kenar boşluklarını ayarlamak için bu işlevi çağırın.
void SetMargins(const CRect& rectMargin);
Parametreler
rectMargin
Yazdırma için MM_TWIPS ölçülen yeni kenar boşluğu değerleri.
Açıklamalar
m_nWordWrap iseWrapToTargetDevice
, yazdırma özelliklerini ayarlamak için bu işlevi kullandıktan sonra WrapChanged çağrısı yapmalısınız.
PrintPage tarafından kullanılan kenar boşluklarının mantıksal sayfaya değil fiziksel sayfaya göre olduğunu unutmayın. Bu nedenle, birçok yazıcının sayfada yazdırılamayan alanları olduğundan, sıfır kenar boşlukları genellikle metni kırpacaktır. Metninizin kırpılmasını önlemek için, yazdırmadan önce uygun yazıcı kenar boşluklarını ayarlamak için komutunu SetMargins
çağırmalısınız.
Örnek
CRichEditView::GetPaperSize örneğine bakın.
CRichEditView::SetPaperSize
Bu zengin düzenleme görünümünü yazdırmak için kağıt boyutunu ayarlamak için bu işlevi çağırın.
void SetPaperSize(CSize sizePaper);
Parametreler
sizePaper
Yazdırma için MM_TWIPS cinsinden ölçülen yeni kağıt boyutu değerleri.
Açıklamalar
m_nWordWrap iseWrapToTargetDevice
, yazdırma özelliklerini ayarlamak için bu işlevi kullandıktan sonra WrapChanged çağrısı yapmalısınız.
Örnek
BOOL CMyRichEditView::OnPreparePrinting(CPrintInfo* pInfo)
{
// Set the printing margins (720 twips = 1/2 inch).
SetMargins(CRect(720, 720, 720, 720));
// Change the paper orientation to landscape mode
// See the example for CWinApp::GetPrinterDeviceDefaults
((CMyWinApp*)AfxGetApp())->SetLandscapeMode();
// Change the paper size in the CRichEditView to
// reflect landscape mode
CSize csPaper = GetPaperSize();
int temp;
temp = csPaper.cx; csPaper.cx = csPaper.cy; csPaper.cy = temp;
SetPaperSize(csPaper);
return DoPreparePrinting(pInfo);
}
CRichEditView::SetParaFormat
Bu nesnedeki geçerli seçimin paragraf biçimlendirme özniteliklerini ayarlamak için bu CRichEditView
işlevi çağırın.
BOOL SetParaFormat(PARAFORMAT2& pf);
Parametreler
Pf
Yeni varsayılan paragraf biçimlendirme özniteliklerini içeren PARAFORMAT2 yapısı.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde, 0.
Açıklamalar
Yalnızca pf üyesi tarafından dwMask
belirtilen öznitelikler bu işlev tarafından değiştirilir.
Daha fazla bilgi için bkz . windows SDK'sında EM_SETPARAFORMAT ileti ve PARAFORMAT2 yapısı.
Örnek
void CMyRichEditView::AddBullets()
{
PARAFORMAT2 pf;
pf.cbSize = sizeof(PARAFORMAT2);
pf.dwMask = PFM_NUMBERING | PFM_OFFSET;
pf.wNumbering = PFN_BULLET;
pf.dxOffset = 10;
VERIFY(SetParaFormat(pf));
}
CRichEditView::TextNotFound
FindText çağrısı başarısız olduktan sonra CRichEditView denetiminin iç arama durumunu sıfırlamak için bu işlevi çağırın.
void TextNotFound(LPCTSTR lpszFind);
Parametreler
lpszFind
Bulunmayan metin dizesini içerir.
Açıklamalar
Denetimin iç arama durumunun düzgün bir şekilde sıfırlanması için bu yöntemin FindText'e başarısız çağrılardan hemen sonra çağrılması önerilir.
lpszFind parametresi, FindText'e sağlanan dizeyle aynı içeriği içermelidir. İç arama durumunu sıfırladıktan sonra, bu yöntem sağlanan arama dizesiyle OnTextNotFound yöntemini çağırır.
Örnek
CRichEditView::FindText örneğine bakın.
CRichEditView::WrapChanged
Yazdırma özellikleri değiştiğinde ( SetMargins veya SetPaperSize) bu işlevi çağırın.
virtual void WrapChanged();
Açıklamalar
Zengin düzenleme görünümünün m_nWordWrap veya yazdırma özelliklerindeki değişikliklere (OnPrinterChanged) yanıt verme biçimini değiştirmek için bu işlevi geçersiz kılın.
Örnek
void CMyRichEditView::OnInitialUpdate()
{
CRichEditView::OnInitialUpdate();
// Turn on the horizontal scroll bar
m_nWordWrap = WrapNone;
WrapChanged();
}
Ayrıca bkz.
MFC Örnek WORDPAD
CCtrlView Sınıfı
Hiyerarşi Grafiği
CRichEditDoc Sınıfı
CRichEditCntrItem Sınıfı