Aracılığıyla paylaş


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 IDataObjectveriler 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_nWordWrapgö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

CObject

CCmdTarget

CWnd

CView

CCtrlView

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 IStoragebir 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 IDataObjecthakkı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ı