Aracılığıyla paylaş


CEdit Sınıfı

Windows düzenleme denetiminin işlevselliğini sağlar.

Sözdizimi

class CEdit : public CWnd

Üyeler

Ortak Oluşturucular

Veri Akışı Adı Açıklama
CEdit::CEdit Bir CEdit denetim nesnesi oluşturur.

Genel Yöntemler

Veri Akışı Adı Açıklama
CEdit::CanUndo Düzenleme denetimi işleminin geri alınıp alınamayacağını belirler.
CEdit::CharFromPos Belirtilen konuma en yakın karakterin çizgi ve karakter dizinlerini alır.
CEdit::Clear Düzenleme denetimindeki geçerli seçimi (varsa) siler (temizler).
CEdit::Copy Düzenleme denetimindeki geçerli seçimi (varsa) panoya CF_TEXT biçimde kopyalar.
CEdit::Create Windows düzenleme denetimini oluşturur ve nesneye CEdit ekler.
CEdit::Cut Düzenleme denetimindeki geçerli seçimi (varsa) siler (keser) ve silinen metni panoya CF_TEXT biçimde kopyalar.
CEdit::EmptyUndoBuffer Düzenleme denetiminin geri alma bayrağını sıfırlar (temizler).
CEdit::FmtLines Çok satırlı düzenleme denetiminde geçici satır sonu karakterlerinin eklenmesini veya kapatılmasını ayarlar.
CEdit::GetCueBanner Denetim boş olduğunda ve odak olmadığında düzenleme denetiminde metin ipucu veya ipucu olarak görüntülenen metni alır.
CEdit::GetFirstVisibleLine Düzenleme denetiminde en üstteki görünür satırı belirler.
CEdit::GetHandle Şu anda çok satırlı düzenleme denetimi için ayrılmış olan belleğe bir tanıtıcı alır.
CEdit::GetHighlight Geçerli düzenleme denetiminde vurgulanan bir metin aralığındaki başlangıç ve bitiş karakterlerinin dizinlerini alır.
CEdit::GetLimitText Bunun CEdit içerebileceği en fazla metin miktarını alır.
CEdit::GetLine Düzenleme denetiminden metin satırı alır.
CEdit::GetLineCount Çok satırlı düzenleme denetimindeki satır sayısını alır.
CEdit::GetMargins Bunun CEditiçin sol ve sağ kenar boşluklarını alır.
CEdit::GetModify Düzenleme denetiminin içeriğinin değiştirilip değiştirilmediğini belirler.
CEdit::GetPasswordChar Kullanıcı metin girdiğinde düzenleme denetiminde görüntülenen parola karakterini alır.
CEdit::GetRect Düzenleme denetiminin biçimlendirme dikdörtgenini alır.
CEdit::GetSel Düzenleme denetimindeki geçerli seçimin ilk ve son karakter konumlarını alır.
CEdit::HideBalloonTip Geçerli düzenleme denetimiyle ilişkili tüm balon ipucunu gizler.
CEdit::LimitText Kullanıcının düzenleme denetimine girebileceği metnin uzunluğunu sınırlar.
CEdit::LineFromChar Belirtilen karakter dizinini içeren satırın satır numarasını alır.
CEdit::LineIndex Çok satırlı düzenleme denetimindeki bir satırın karakter dizinini alır.
CEdit::LineLength Düzenleme denetimindeki bir satırın uzunluğunu alır.
CEdit::LineScroll Çok satırlı düzenleme denetiminin metnini kaydırıyor.
CEdit::P aste Panodaki verileri geçerli imleç konumundaki düzenleme denetimine ekler. Veriler yalnızca Pano CF_TEXT biçimde veri içeriyorsa eklenir.
CEdit::P osFromChar Belirtilen karakter dizininin sol üst köşesinin koordinatlarını alır.
CEdit::ReplaceSel Düzenleme denetimindeki geçerli seçimi belirtilen metinle değiştirir.
CEdit::SetCueBanner Denetim boş olduğunda ve odak olmadığında düzenleme denetiminde metin ipucu veya ipucu olarak görüntülenen metni ayarlar.
CEdit::SetHandle Tutamacı, çok satırlı düzenleme denetimi tarafından kullanılacak yerel belleğe ayarlar.
CEdit::SetHighlight Geçerli düzenleme denetiminde görüntülenen metin aralığını vurgular.
CEdit::SetLimitText Bunun CEdit içerebileceği en fazla metin miktarını ayarlar.
CEdit::SetMargins Bunun CEditiçin sol ve sağ kenar boşluklarını ayarlar.
CEdit::SetModify Düzenleme denetimi için değişiklik bayrağını ayarlar veya temizler.
CEdit::SetPasswordChar Kullanıcı metin girdiğinde düzenleme denetiminde görüntülenen parola karakterini ayarlar veya kaldırır.
CEdit::SetReadOnly Düzenleme denetiminin salt okunur durumunu ayarlar.
CEdit::SetRect Çok satırlı düzenleme denetiminin biçimlendirme dikdörtgenini ayarlar ve denetimi güncelleştirir.
CEdit::SetRectNP Denetim penceresini yeniden çizmeden çok satırlı düzenleme denetiminin biçimlendirme dikdörtgenini ayarlar.
CEdit::SetSel Düzenleme denetiminde bir karakter aralığı seçer.
CEdit::SetTabStops Sekme duraklarını çok satırlı düzenleme denetiminde ayarlar.
CEdit::ShowBalloonTip Geçerli düzenleme denetimiyle ilişkili bir balon ipucu görüntüler.
CEdit::Undo Son düzenleme denetimi işlemini tersine çevirir.

Açıklamalar

Düzenleme denetimi, kullanıcının metin girebileceği dikdörtgen bir alt penceredir.

Bir iletişim kutusu şablonundan veya doğrudan kodunuz içinde düzenleme denetimi oluşturabilirsiniz. Her iki durumda da önce nesneyi oluşturmak için oluşturucuyu CEdit çağırınCEdit, ardından Create member işlevini çağırarak Windows düzenleme denetimini oluşturun ve nesneye CEdit ekleyin.

İnşaat, sınıfından CEdittüretilen tek adımlı bir işlem olabilir. Türetilmiş sınıf için bir oluşturucu yazın ve oluşturucunun içinden çağrısı Create gerçekleştirin.

CEdit ' den CWndönemli işlevleri devralır. Bir nesneden metin ayarlamak ve almak için, çok satırlı bir CEdit denetim olsa bile düzenleme denetiminin tüm içeriğini ayarlayan veya alan SetWindowText ve GetWindowText üye işlevlerini kullanınCWnd. Çok satırlı denetimdeki metin satırları '\r\n' karakter dizileriyle ayrılır. Ayrıca, düzenleme denetimi çok satırlıysa GetLine, SetSel, GetSel ve ReplaceSel üye işlevlerini çağırarak denetimin CEdit metninin bir bölümünü alın ve ayarlayın.

Düzenleme denetimi tarafından üst öğesine gönderilen Windows bildirim iletilerini işlemek istiyorsanız (genellikle öğesinden CDialogtüretilen bir sınıf), her ileti için üst sınıfa bir ileti eşleme girdisi ve ileti işleyicisi üye işlevi ekleyin.

Her ileti eşleme girdisi aşağıdaki formu alır:

ON_NOTIFICATION( id, memberFxn )

burada id , bildirimi gönderen düzenleme denetiminin alt pencere kimliğini belirtir ve memberFxn bildirimi işlemek için yazdığınız üst üye işlevinin adıdır.

Ebeveynin işlev prototipi aşağıdaki gibidir:

afx_msg void memberFxn ( );

Aşağıda olası ileti eşlemesi girdilerinin listesi ve bunların üst öğeye gönderileceği servis taleplerinin açıklaması yer alır:

  • ON_EN_CHANGE Kullanıcı, düzenleme denetiminde metni değiştirmiş olabilecek bir eylemde bulundu. EN_UPDATE bildirim iletisinden farklı olarak, windows ekranı güncelleştirdikten sonra bu bildirim iletisi gönderilir.

  • ON_EN_ERRSPACE Düzenleme denetimi belirli bir isteği karşılamak için yeterli bellek ayıramaz.

  • ON_EN_HSCROLL Kullanıcı düzenleme denetiminin yatay kaydırma çubuğuna tıklar. Ekran güncelleştirilmeden önce üst pencereye bildirim gönderilir.

  • ON_EN_KILLFOCUS Düzenleme denetimi giriş odağını kaybeder.

  • ON_EN_MAXTEXT Geçerli ekleme, düzenleme denetimi için belirtilen karakter sayısını aştı ve kesildi. Ayrıca, bir düzenleme denetimi ES_AUTOHSCROLL stiline sahip olmadığında ve eklenecek karakter sayısı düzenleme denetiminin genişliğini aştığında da gönderilir. Ayrıca, düzenleme denetimi ES_AUTOVSCROLL stiline sahip olmadığında ve metin eklemesinden kaynaklanan toplam satır sayısı düzenleme denetiminin yüksekliğini aştığında da gönderilir.

  • ON_EN_SETFOCUS Düzenleme denetimi giriş odağını aldığında Gönderilir.

  • ON_EN_UPDATE Düzenleme denetimi değiştirilmiş metni görüntülemek üzere. Denetim metni biçimlendirdikten sonra, ancak gerekirse pencere boyutunun değiştirilebilmesi için metni filtrelemeden önce gönderilir.

  • ON_EN_VSCROLL Kullanıcı düzenleme denetiminin dikey kaydırma çubuğuna tıklar. Ekran güncelleştirilmeden önce üst pencereye bildirim gönderilir.

İletişim kutusunda bir CEdit nesne oluşturursanız, CEdit kullanıcı iletişim kutusunu kapattığında nesne otomatik olarak yok edilir.

İletişim kutusu düzenleyicisini kullanarak bir iletişim kutusu kaynağından nesne oluşturursanız CEdit , CEdit kullanıcı iletişim kutusunu kapattığında nesne otomatik olarak yok edilir.

Pencere içinde bir CEdit nesne oluşturursanız, nesneyi yok etmeniz de gerekebilir. Nesneyi yığında oluşturursanız CEdit , nesne otomatik olarak yok edilir. işlevini kullanarak new yığında nesnesi oluşturursanızCEdit, kullanıcı Windows düzenleme denetimini sonlandırdığında yok etmek için nesne üzerinde çağrısında delete bulunması gerekir. Nesnede CEdit herhangi bir bellek ayırırsanız, ayırmaları atmak için yıkıcıyı geçersiz kılın CEdit .

Düzenleme denetimindeki (ES_READONLY gibi) belirli stilleri değiştirmek için ModifyStyle kullanmak yerine denetime belirli iletiler göndermeniz gerekir. Bkz. Windows SDK'sında Denetim Stillerini Düzenleme.

hakkında CEditdaha fazla bilgi için bkz . Denetimler.

Devralma Hiyerarşisi

CObject

CCmdTarget

CWnd

CEdit

Gereksinimler

Üst bilgi: afxwin.h

CEdit::CanUndo

Son düzenleme işleminin geri alınabileceğini belirlemek için bu işlevi çağırın.

BOOL CanUndo() const;

Dönüş Değeri

Son düzenleme işlemi üye işlevine Undo yapılan bir çağrıyla geri alınabiliyorsa sıfır olmayan; geri alınamazsa 0.

Açıklamalar

Daha fazla bilgi için bkz . Windows SDK'sında EM_CANUNDO .

Örnek

CEdit::Undo örneğine bakın.

CEdit::CEdit

Bir CEdit nesne oluşturur.

CEdit();

Açıklamalar

Oluştur'u kullanarak Windows düzenleme denetimini oluşturun.

Örnek

// Declare a local CEdit object.
CEdit myEdit;

// Declare a dynamic CEdit object.
CEdit *pmyEdit = new CEdit;

CEdit::CharFromPos

Bu denetimde belirtilen noktaya en yakın karakterin sıfır tabanlı çizgi ve karakter dizinlerini almak için bu CEdit işlevi çağırın

int CharFromPos(CPoint pt) const;

Parametreler

Pt
Bu CEdit nesnenin istemci alanındaki bir noktanın koordinatları.

Dönüş Değeri

Düşük sıralı WORD'deki karakter dizini ve yüksek sıralı WORD'deki satır dizini.

Açıklamalar

Not

Bu üye işlevi, Windows 95 ve Windows NT 4.0 ile başlayarak kullanılabilir.

Daha fazla bilgi için bkz . Windows SDK'sında EM_CHARFROMPOS .

Örnek

// CMyEdit inherits from CEdit
void CMyEdit::OnLButtonDown(UINT nFlags, CPoint point)
{
   int n = CharFromPos(point);
   int nLineIndex = HIWORD(n);
   int nCharIndex = LOWORD(n);
   TRACE(_T("nLineIndex = %d, nCharIndex = %d\r\n"), nLineIndex, nCharIndex);

   CEdit::OnLButtonDown(nFlags, point);
}

CEdit::Clear

Düzenleme denetimindeki geçerli seçimi (varsa) silmek (temizlemek) için bu işlevi çağırın.

void Clear();

Açıklamalar

tarafından Clear gerçekleştirilen silme işlemi, Üyeyi Geri Al işlevi çağrılarak geri alınabilir.

Geçerli seçimi silmek ve silinen içeriği Pano'ya yerleştirmek için Üyeyi kes işlevini çağırın.

Daha fazla bilgi için bkz . Windows SDK'sında WM_CLEAR .

Örnek

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

CEdit::Copy

Düzenleme denetimindeki geçerli seçimi (varsa) Pano'ya CF_TEXT biçimde uygulamak için bu işlevi çağırın.

void Copy();

Açıklamalar

Daha fazla bilgi için bkz . Windows SDK'sında WM_COPY .

Örnek

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

CEdit::Create

Windows düzenleme denetimini oluşturur ve nesneye CEdit ekler.

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

Parametreler

dwStyle
Düzenleme denetiminin stilini belirtir. Denetime düzenleme stillerinin herhangi bir bileşimini uygulayın.

Rect
Düzenleme denetiminin boyutunu ve konumunu belirtir. Bir CRect nesne veya RECT yapı olabilir.

pParentWnd
Düzenleme denetiminin üst penceresini belirtir (genellikle bir CDialog). NULL olmamalıdır.

Nıd
Düzenleme denetiminin kimliğini belirtir.

Dönüş Değeri

Başlatma başarılı olursa sıfır olmayan; aksi takdirde 0.

Açıklamalar

İki adımda bir CEdit nesne oluşturursunuz. İlk olarak oluşturucuyu çağırın CEdit ve ardından Windows düzenleme denetimini oluşturan ve nesnesine ekleyen öğesini çağırınCreateCEdit.

YürütürkenCreate, Windows WM_NCCREATE, WM_NCCALCSIZE, WM_CREATE ve WM_GETMINMAXINFO iletilerini düzenleme denetimine gönderir.

Bu iletiler, temel sınıftaki OnNcCreate, OnNcCalcSize, OnCreate ve OnGetMinMaxInfo üye işlevleri CWnd tarafından varsayılan olarak işlenir. Varsayılan ileti işlemeyi genişletmek için öğesinden CEditbir sınıf türetin, yeni sınıfa bir ileti eşlemesi ekleyin ve yukarıdaki ileti işleyicisi üye işlevlerini geçersiz kılın. Örneğin, yeni sınıf için gerekli başlatmayı gerçekleştirmek için öğesini geçersiz kılın OnCreate.

Aşağıdaki pencere stillerini düzenleme denetimine uygulayın.

  • Her Zaman WS_CHILD

  • WS_VISIBLE Genellikle

  • WS_DISABLED Nadiren

  • WS_GROUP Gruplandırma denetimleri

  • WS_TABSTOP Düzenleme denetimini sekme sırasına eklemek için

Örnek

// dynamically create an edit control
CEdit *pEdit = new CEdit;
pEdit->Create(ES_MULTILINE | WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_BORDER,
              CRect(10, 10, 100, 100), this, 1);

CEdit::Cut

Düzenleme denetimindeki geçerli seçimi (varsa) silmek (kesmek) ve silinen metni panoya CF_TEXT biçimde kopyalamak için bu işlevi çağırın.

void Cut();

Açıklamalar

tarafından Cut gerçekleştirilen silme işlemi, Üyeyi Geri Al işlevi çağrılarak geri alınabilir.

Silinen metni Pano'ya yerleştirmeden geçerli seçimi silmek için Üyeyi temizle işlevini çağırın.

Daha fazla bilgi için bkz . Windows SDK'sında WM_CUT .

Örnek

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

CEdit::EmptyUndoBuffer

Düzenleme denetiminin geri alma bayrağını sıfırlamak (temizlemek) için bu işlevi çağırın.

void EmptyUndoBuffer();

Açıklamalar

Düzenleme denetimi artık son işlemi geri alamayacaktır. Düzenleme denetimindeki bir işlem geri alınabildiği her durumda geri alma bayrağı ayarlanır.

SetWindowText veya SetHandleCWnd üye işlevleri çağrıldığında geri alma bayrağı otomatik olarak temizlenir.

Daha fazla bilgi için bkz . Windows SDK'sında EM_EMPTYUNDOBUFFER .

Örnek

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

CEdit::FmtLines

Çok satırlı düzenleme denetiminde geçici satır sonu karakterlerinin eklenmesini veya kapatılmasını ayarlamak için bu işlevi çağırın.

BOOL FmtLines(BOOL bAddEOL);

Parametreler

bAddEOL
Geçici satır sonu karakterlerinin eklenip eklenmeyeceğini belirtir. TRUE değeri karakterleri ekler; YANLIŞ değeri bunları kaldırır.

Dönüş Değeri

Herhangi bir biçimlendirme oluşursa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Yumuşak çizgi sonu, iki satır başı ve sözcük kaydırma nedeniyle bozuk bir satırın sonuna eklenen bir satır beslemeden oluşur. Sabit hat sonu, bir satır başı ve bir hat beslemeden oluşur. Sabit satır sonuyla biten satırlar tarafından FmtLinesetkilenmez.

Windows yalnızca nesne çok satırlı düzenleme denetimiyse CEdit yanıt verir.

FmtLinesyalnızca GetHandle tarafından döndürülen arabelleği ve WM_GETTEXT tarafından döndürülen metni etkiler. Düzenleme denetimindeki metnin görüntülenmesi üzerinde hiçbir etkisi yoktur.

Daha fazla bilgi için bkz . Windows SDK'sında EM_FMTLINES .

Örnek

CString strText;

// Add soft line-break breaks.
m_myEdit.FmtLines(TRUE);

// Dump the text of the edit control.
m_myEdit.GetWindowText(strText);
AFXDUMP(strText);

// Remove soft line-break breaks.
m_myEdit.FmtLines(FALSE);

CEdit::GetCueBanner

Denetim boş olduğunda düzenleme denetiminde metin ipucu veya ipucu olarak görüntülenen metni alır.

BOOL GetCueBanner(
    LPWSTR lpszText,
    int cchText) const;

CString GetCueBanner() const;

Parametreler

lpszText
[out] İşaret metnini içeren bir dize işaretçisi.

cchText
[in] Alınabilecek karakter sayısı. Bu sayı, sonlandırıcı NULL karakterini içerir.

Dönüş Değeri

İlk aşırı yükleme için, yöntem başarılı olursa TRUE; aksi takdirde YANLIŞ.

İkinci aşırı yükleme için, yöntem başarılı olursa ipucu metnini içeren bir CString ; aksi takdirde boş dize ("").

Açıklamalar

Bu yöntem, Windows SDK'sında açıklanan EM_GETCUEBANNER iletisini gönderir. Daha fazla bilgi için Edit_GetCueBannerText makrosna bakın.

CEdit::GetFirstVisibleLine

Düzenleme denetiminde en üstteki görünür satırı belirlemek için bu işlevi çağırın.

int GetFirstVisibleLine() const;

Dönüş Değeri

En üstteki görünür satırın sıfır tabanlı dizini. Tek satırlı düzenleme denetimleri için dönüş değeri 0'dır.

Açıklamalar

Daha fazla bilgi için bkz . Windows SDK'sında EM_GETFIRSTVISIBLELINE .

Örnek

int nFirstVisible = m_myEdit.GetFirstVisibleLine();

// Scroll the edit control so that the first visible line
// is the first line of text.
if (nFirstVisible > 0)
{
   m_myEdit.LineScroll(-nFirstVisible, 0);
}

CEdit::GetHandle

Çok satırlı düzenleme denetimi için ayrılmış olan belleğe tanıtıcı almak için bu işlevi çağırın.

HLOCAL GetHandle() const;

Dönüş Değeri

Düzenleme denetiminin içeriğini tutan arabelleği tanımlayan yerel bellek tanıtıcısı. İletinin tek satırlı düzenleme denetimine gönderilmesi gibi bir hata oluşursa, dönüş değeri 0 olur.

Açıklamalar

Tanıtıcı yerel bir bellek tutamacıdır ve yerel bellek tutamacını parametre olarak alan Yerel Windows bellek işlevlerinden herhangi biri tarafından kullanılabilir.

GetHandle yalnızca çok satırlı düzenleme denetimleri tarafından işlenir.

GetHandle bir iletişim kutusunda yalnızca iletişim kutusu DS_LOCALEDIT stil bayrağı ayarlanmış olarak oluşturulduysa, çok satırlı düzenleme denetimi çağırın. DS_LOCALEDIT stili ayarlanmamışsa sıfır olmayan bir dönüş değeri alırsınız, ancak döndürülen değeri kullanamazsınız.

Not

GetHandle , Windows 95/98 ile çalışmaz. Windows 95/98'de çağırırsanız GetHandle NULL döndürür. GetHandle , Windows NT, sürüm 3.51 ve üzeri altında belgelendiği gibi çalışır.

Daha fazla bilgi için bkz . Windows SDK'sında EM_GETHANDLE .

Örnek

HLOCAL h = m_myEdit.GetHandle();
LPCTSTR lpszText = (LPCTSTR)::LocalLock(h);

// Dump the text of the edit control.
AFXDUMP(lpszText);

::LocalUnlock(h);

CEdit::GetHighlight

Geçerli düzenleme denetiminde vurgulanan bir metin aralığındaki ilk ve son karakterlerin dizinlerini alır.

BOOL GetHighlight(
    int* pichStart,
    int* pichEnd) const;

Parametreler

pichStart
[out] Vurgulanan metin aralığındaki ilk karakterin sıfır tabanlı dizini.

pichEnd
[out] Vurgulanan metin aralığındaki son karakterin sıfır tabanlı dizini.

Dönüş Değeri

Bu yöntem başarılı olursa TRUE; aksi takdirde YANLIŞ.

Açıklamalar

Bu yöntem, Windows SDK'sında açıklanan EM_GETHILITE iletisini gönderir. Hem hem de SetHighlight GetHighlight şu anda yalnızca UNICODE derlemeleri için etkinleştirilmiştir.

CEdit::GetLimitText

Bu nesnenin metin sınırını almak için bu CEdit üye işlevini çağırın.

UINT GetLimitText() const;

Dönüş Değeri

Bu CEdit nesne için TCHAR'lardaki geçerli metin sınırı.

Açıklamalar

Metin sınırı, TCHAR'larda düzenleme denetiminin kabul edebildiği maksimum metin miktarıdır.

Not

Bu üye işlevi, Windows 95 ve Windows NT 4.0 ile başlayarak kullanılabilir.

Daha fazla bilgi için bkz . Windows SDK'sında EM_GETLIMITTEXT .

Örnek

CString strText(_T("I'm an edit control!"));
UINT nLength = strText.GetLength() * sizeof(TCHAR);

// Want the text limit to be at least the size of the new string.
if (m_myEdit.GetLimitText() < nLength)
   m_myEdit.SetLimitText(nLength);

m_myEdit.SetWindowText(strText);

CEdit::GetLine

Düzenleme denetiminden metin satırı almak ve bunu lpszBuffer'a getirmek için bu işlevi çağırın.

int GetLine(
    int nIndex,
    LPTSTR lpszBuffer) const;

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

Parametreler

nIndex
Çok satırlı düzenleme denetiminden alınacak satır numarasını belirtir. Satır numaraları sıfır tabanlıdır; 0 değeri ilk satırı belirtir. Bu parametre tek satırlı düzenleme denetimi tarafından yoksayılır.

lpszBuffer
Satırın bir kopyasını alan arabelleğe işaret eder. Arabelleğin ilk sözcüğü arabelleğe kopyalanacak en fazla TCHAR sayısını belirtmelidir.

nMaxLength
Arabelleğe kopyalanacak en fazla TCHAR karakter sayısını belirtir. GetLine, Windows çağrısı yapmadan önce bu değeri lpszBuffer'ın ilk sözcüğüne yerleştirir.

Dönüş Değeri

Kopyalanan karakter sayısı. nIndex tarafından belirtilen satır numarası düzenleme denetimindeki satır sayısından büyükse, dönüş değeri 0'dır.

Açıklamalar

Kopyalanan satır null sonlandırma karakteri içermiyor.

Daha fazla bilgi için bkz . Windows SDK'sında EM_GETLINE .

Örnek

CEdit::GetLineCount örneğine bakın.

CEdit::GetLineCount

Çok satırlı düzenleme denetimindeki satır sayısını almak için bu işlevi çağırın.

int GetLineCount() const;

Dönüş Değeri

Çok satırlı düzenleme denetimindeki satır sayısını içeren tamsayı. Düzenleme denetimine metin girilmemişse, dönüş değeri 1 olur.

Açıklamalar

GetLineCount yalnızca çok satırlı düzenleme denetimleri tarafından işlenir.

Daha fazla bilgi için bkz . Windows SDK'sında EM_GETLINECOUNT .

Örnek

int i, nLineCount = m_myEdit.GetLineCount();
CString strText, strLine;
// Dump every line of text of the edit control.
for (i = 0; i < nLineCount; i++)
{
   // length of line i:
   int len = m_myEdit.LineLength(m_myEdit.LineIndex(i));
   m_myEdit.GetLine(i, strText.GetBuffer(len), len);
   strText.ReleaseBuffer(len);
   strLine.Format(_T("line %d: '%s'\n"), i, strText);
   AFXDUMP(strLine);
}

CEdit::GetMargins

Bu düzenleme denetiminin sol ve sağ kenar boşluklarını almak için bu üye işlevini çağırın.

DWORD GetMargins() const;

Dönüş Değeri

Düşük sıralı WORD'de sol kenar boşluğunun genişliği ve yüksek sıralı WORD'de sağ kenar boşluğunun genişliği.

Açıklamalar

Kenar boşlukları piksel cinsinden ölçülür.

Not

Bu üye işlevi, Windows 95 ve Windows NT 4.0 ile başlayarak kullanılabilir.

Daha fazla bilgi için bkz . Windows SDK'sında EM_GETMARGINS .

Örnek

CEditView::GetEditCtrl örneğine bakın.

CEdit::GetModify

Düzenleme denetiminin içeriğinin değiştirilip değiştirilmediğini belirlemek için bu işlevi çağırın.

BOOL GetModify() const;

Dönüş Değeri

Düzenleme denetimi içeriği değiştirilmişse sıfır olmayan; 0 değişmeden kaldıysa.

Açıklamalar

Windows, düzenleme denetiminin içeriğinin değiştirilip değiştirilmediğini belirten bir iç bayrak tutar. Düzenleme denetimi ilk oluşturulduğunda bu bayrak temizlenir ve SetModify üye işlevi çağrılarak da temizlenebilir.

Daha fazla bilgi için bkz . Windows SDK'sında EM_GETMODIFY .

Örnek

// Reset the modified state only if my edit has been modified.
if (m_myEdit.GetModify())
   m_myEdit.SetModify(FALSE);

CEdit::GetPasswordChar

Kullanıcı metin girdiğinde düzenleme denetiminde görüntülenen parola karakterini almak için bu işlevi çağırın.

TCHAR GetPasswordChar() const;

Dönüş Değeri

Kullanıcının yazdığı karakter yerine görüntülenecek karakteri belirtir. Hiçbir parola karakteri yoksa dönüş değeri NULL olur.

Açıklamalar

Düzenleme denetimini ES_PASSWORD stiliyle oluşturursanız, denetimi destekleyen DLL varsayılan parola karakterini belirler. Bildirim veya InitCommonControlsEx yöntemi hangi DLL'nin düzenleme denetimini desteklediğini belirler. user32.dll düzenleme denetimini destekliyorsa, varsayılan parola karakteri ASTERISK ('*', U+002A) olur. comctl32.dll sürüm 6 düzenleme denetimini destekliyorsa, varsayılan karakter BLACK CIRCLE ('●', U+25CF) karakteridir. Hangi DLL ve sürümün ortak denetimleri desteklediği hakkında daha fazla bilgi için bkz . Kabuk ve Ortak Denetim Sürümleri.

Bu yöntem, Windows SDK'sında açıklanan EM_GETPASSWORDCHAR iletisini gönderir.

Örnek

// Turn on the password mode.
m_myEdit.SetPasswordChar('*');
ASSERT(m_myEdit.GetStyle() & ES_PASSWORD);
ASSERT(m_myEdit.GetPasswordChar() == '*');

CEdit::GetRect

Düzenleme denetiminin biçimlendirme dikdörtgenini almak için bu işlevi çağırın.

void GetRect(LPRECT lpRect) const;

Parametreler

lpRect
Biçimlendirme dikdörtgenini RECT alan yapıyı gösterir.

Açıklamalar

Biçimlendirme dikdörtgeni, düzenleme denetimi penceresinin boyutundan bağımsız olarak metnin sınırlayıcı dikdörtgenidir.

Çok satırlı düzenleme denetiminin biçimlendirme dikdörtgeni, SetRect ve SetRectNP üye işlevleri tarafından değiştirilebilir.

Daha fazla bilgi için bkz . Windows SDK'sında EM_GETRECT .

Örnek

CEdit::LimitText örneğine bakın.

CEdit::GetSel

Bir düzenleme denetiminde geçerli seçimin (varsa) başlangıç ve bitiş karakter konumlarını almak için dönüş değerini veya parametreleri kullanarak bu işlevi çağırın.

DWORD GetSel() const;

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

Parametreler

nStartChar
Geçerli seçimdeki ilk karakterin konumunu alacak bir tamsayı başvurusu.

nEndChar
Geçerli seçimin sonundan sonra seçilmemiş ilk karakterin konumunu alacak bir tamsayıya başvuru.

Dönüş Değeri

DWORD döndüren sürüm, düşük sıralı sözcükte başlangıç konumunu ve yüksek sıralı sözcükte seçimin sonundan sonra seçilmeyen ilk karakterin konumunu içeren bir değer döndürür.

Açıklamalar

Daha fazla bilgi için bkz . Windows SDK'sında EM_GETSEL .

Örnek

// Set the selection to be all characters after the current selection.
DWORD dwSel = m_myEdit.GetSel();
m_myEdit.SetSel(HIWORD(dwSel), -1);

CEdit::HideBalloonTip

Geçerli düzenleme denetimiyle ilişkili tüm balon ipucunu gizler.

BOOL HideBalloonTip();

Dönüş Değeri

Bu yöntem başarılı olursa TRUE; aksi takdirde YANLIŞ.

Açıklamalar

Bu işlev, Windows SDK'sında açıklanan EM_HIDEBALLOONTIP iletisini gönderir.

CEdit::LimitText

Kullanıcının düzenleme denetimine girebileceği metnin uzunluğunu sınırlamak için bu işlevi çağırın.

void LimitText(int nChars = 0);

Parametreler

nChars
Kullanıcının girebileceği metnin uzunluğunu (TCHAR cinsinden) belirtir. Bu parametre 0 ise, metin uzunluğu UINT_MAX bayt olarak ayarlanır. Bu varsayılan davranıştır.

Açıklamalar

Metin sınırının değiştirilmesi yalnızca kullanıcının girebileceği metni kısıtlar. Zaten düzenleme denetiminde olan herhangi bir metni etkilemez ve içindeki SetWindowText üye işlevi CWndtarafından düzenleme denetimine kopyalanan metnin uzunluğunu etkilemez. Bir uygulama, düzenleme denetimine SetWindowText çağrısında belirtilenden daha fazla metin yerleştirmek için LimitTextişlevini kullanırsa, kullanıcı düzenleme denetimindeki metinlerden herhangi birini silebilir. Ancak, geçerli seçimin silinmesi metnin metin sınırının altına düşmesine neden olmadığı sürece, metin sınırı kullanıcının var olan metni yeni metinle değiştirmesini engeller.

Not

Win32'de (Windows NT ve Windows 95/98), SetLimitText bu işlevin yerini alır.

Daha fazla bilgi için bkz . Windows SDK'sında EM_LIMITTEXT .

Örnek

// 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_myEdit.GetDC();
pDC->GetTextMetrics(&tm);
m_myEdit.ReleaseDC(pDC);

CRect r;
m_myEdit.GetRect(&r);
m_myEdit.LimitText(r.Width() / tm.tmAveCharWidth);

CEdit::LineFromChar

Belirtilen karakter dizinini içeren satırın satır numarasını almak için bu işlevi çağırın.

int LineFromChar(int nIndex = -1) const;

Parametreler

nIndex
Düzenleme denetiminin metninde istenen karakter için sıfır tabanlı dizin değeri veya -1 içerir. nIndex -1 ise, geçerli satırı, yani şapka işaretini içeren çizgiyi belirtir.

Dönüş Değeri

nIndex tarafından belirtilen karakter dizinini içeren satırın sıfır tabanlı satır numarası. nIndex -1 ise, seçimin ilk karakterini içeren satırın sayısı döndürülür. Seçim yoksa, geçerli satır numarası döndürülür.

Açıklamalar

Karakter dizini, düzenleme denetiminin başındaki karakter sayısıdır.

Bu üye işlevi yalnızca birden çok satırlı düzenleme denetimleri tarafından kullanılır.

Daha fazla bilgi için bkz . Windows SDK'sında EM_LINEFROMCHAR .

Örnek

// The index of the char to get information on.
int nIndex = 4;
CString strText;

m_myEdit.GetWindowText(strText);
strText = strText.Mid(nIndex, 1);

// Get the text extent of the character.
CDC *pDC = m_myEdit.GetDC();
CSize sz = pDC->GetTextExtent(strText);
m_myEdit.ReleaseDC(pDC);

CPoint pt = m_myEdit.PosFromChar(nIndex);

// Dump the index, character, line number, and character bounds.
TRACE(_T("nIndex = %d, character = %c, line = %d, bounds = ")
      _T("{%d, %d, %d, %d}\r\n"),
      nIndex, strText[0], m_myEdit.LineFromChar(nIndex),
      pt.x /* left */, pt.y /* top */,
      pt.x + sz.cx /* right */, pt.y + sz.cy /* bottom */);

CEdit::LineIndex

Çok satırlı düzenleme denetimindeki bir satırın karakter dizinini almak için bu işlevi çağırın.

int LineIndex(int nLine = -1) const;

Parametreler

nLine
Düzenleme denetiminin metninde istenen satırın dizin değerini veya -1 değerini içerir. nLine -1 ise, geçerli satırı, yani şapka işaretini içeren çizgiyi belirtir.

Dönüş Değeri

Belirtilen satır numarası düzenleme denetimindeki satır sayısından büyükse nLine veya -1 içinde belirtilen satırın karakter dizini.

Açıklamalar

Karakter dizini, düzenleme denetiminin başından belirtilen satıra kadar olan karakter sayısıdır.

Bu üye işlevi yalnızca çok satırlı düzenleme denetimleri tarafından işlenir.

Daha fazla bilgi için bkz . Windows SDK'sında EM_LINEINDEX .

Örnek

// The string for replacing.
CString strString(_T("Hi, we're the replacements."));
int nBegin, nEnd;

// Replace the second line, if it exists, of the edit control
// with the text strString.
if ((nBegin = m_myEdit.LineIndex(1)) != -1)
{
   nEnd = nBegin + m_myEdit.LineLength(nBegin);
   m_myEdit.SetSel(nBegin, nEnd);
   m_myEdit.ReplaceSel(strString);
}

CEdit::LineLength

Düzenleme denetimindeki bir satırın uzunluğunu alır.

int LineLength(int nLine = -1) const;

Parametreler

nLine
Uzunluğu alınacak satırdaki bir karakterin sıfır tabanlı dizini. Varsayılan değer -1'dir.

Dönüş Değeri

Tek satırlı düzenleme denetimleri için, dönüş değeri düzenleme denetimindeki metnin TCHAR'lardaki uzunluğudur.

Çok satırlı düzenleme denetimleri için, dönüş değeri nLine parametresi tarafından belirtilen satırın TCHAR'lardaki uzunluğudur. ANSI metni için uzunluk, satırdaki bayt sayısıdır; Unicode metni için uzunluk, satırdaki karakter sayısıdır. Uzunluk, satırın sonundaki satır başı karakterini içermez.

nLine parametresi denetimdeki karakter sayısından fazlaysa, dönüş değeri sıfırdır.

nLine parametresi -1 ise, dönüş değeri seçili karakterleri içeren satırlardaki seçilmemiş karakterlerin sayısıdır. Örneğin, seçim bir satırın dördüncü karakterinden sonraki satırın sonundaki sekizinci karaktere kadar uzanıyorsa, dönüş değeri 10 olur. Yani, ilk satırda üç karakter ve sonraki satırda yedi karakter.

TCHAR türü hakkında daha fazla bilgi için Windows Veri Türleri'ndeki tablodaki TCHAR satırına bakın.

Açıklamalar

Bu yöntem, Windows SDK'da açıklanan EM_LINELENGTH iletisi tarafından desteklenir.

Örnek

CEdit::LineIndex örneğine bakın.

CEdit::LineScroll

Çok satırlı düzenleme denetiminin metnini kaydırmak için bu işlevi çağırın.

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

Parametreler

nLines
Dikey olarak kaydıracak satır sayısını belirtir.

nChars
Yatay olarak kaydıracak karakter konumlarının sayısını belirtir. Düzenleme denetimi ES_RIGHT veya ES_CENTER stiline sahipse bu değer yoksayılır.

Açıklamalar

Bu üye işlevi yalnızca çok satırlı düzenleme denetimleriyle işlenir.

Düzenleme denetimi, düzenleme denetimindeki metnin son satırını dikey olarak kaydırmaz. Geçerli satır artı nLines tarafından belirtilen satır sayısı düzenleme denetimindeki toplam satır sayısını aşarsa, düzenleme denetiminin son satırının düzenleme denetimi penceresinin en üstüne kaydırılması için değer ayarlanır.

LineScroll herhangi bir satırın son karakterini yatay olarak kaydırmak için kullanılabilir.

Daha fazla bilgi için bkz . Windows SDK'sında EM_LINESCROLL .

Örnek

CEdit::GetFirstVisibleLine örneğine bakın.

CEdit::P aste

Pano'dan CEdit ekleme noktasına veri eklemek için bu işlevi çağırın.

void Paste();

Açıklamalar

Veriler yalnızca Pano CF_TEXT biçimde veri içeriyorsa eklenir.

Daha fazla bilgi için bkz . Windows SDK'sında WM_PASTE .

Örnek

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

CEdit::P osFromChar

Bu nesne içindeki belirli bir karakterin konumunu (sol üst köşe) almak için bu CEdit işlevi çağırın.

CPoint PosFromChar(UINT nChar) const;

Parametreler

nChar
Belirtilen karakterin sıfır tabanlı dizini.

Dönüş Değeri

nChar tarafından belirtilen karakterin sol üst köşesinin koordinatları.

Açıklamalar

Karakter, sıfır tabanlı dizin değeri verilerek belirtilir. nChar, bu CEdit nesnedeki son karakterin dizininden büyükse, dönüş değeri bu CEdit nesnedeki son karakterin hemen ötesindeki karakter konumunun koordinatlarını belirtir.

Not

Bu üye işlevi, Windows 95 ve Windows NT 4.0 ile başlayarak kullanılabilir.

Daha fazla bilgi için bkz . Windows SDK'sında EM_POSFROMCHAR .

Örnek

CEdit::LineFromChar örneğine bakın.

CEdit::ReplaceSel

Düzenleme denetimindeki geçerli seçimi lpszNewText tarafından belirtilen metinle değiştirmek için bu işlevi çağırın.

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

Parametreler

lpszNewText
Yeni metni içeren null olarak sonlandırılan bir dizeye işaret ediyor.

bCanUndo
Bu işlevin geri alınabileceğini belirtmek için bu parametrenin değerini TRUE olarak ayarlayın. Varsayılan değer YANLIŞ'tır.

Açıklamalar

Düzenleme denetimindeki metnin yalnızca bir bölümünü değiştirir. Metnin tümünü değiştirmek istiyorsanız, CWnd::SetWindowText üye işlevini kullanın.

Geçerli seçim yoksa, yeni metin geçerli imleç konumuna eklenir.

Daha fazla bilgi için bkz . Windows SDK'sında EM_REPLACESEL .

Örnek

CEdit::LineIndex örneğine bakın.

CEdit::SetCueBanner

Denetim boş olduğunda düzenleme denetiminde metin ipucu veya ipucu olarak görüntülenen metni ayarlar.

BOOL SetCueBanner(LPCWSTR lpszText);

BOOL SetCueBanner(
    LPCWSTR lpszText,
    BOOL fDrawWhenFocused = FALSE);

Parametreler

lpszText
[in] Düzenleme denetiminde görüntülenecek ipucu içeren bir dize işaretçisi.

fDrawWhenFocused
[in] YANLIŞ ise, kullanıcı düzenleme denetimine tıkladığında ve denetime odağı verdiğinde ipucu başlığı çizılmaz.

TRUE ise, denetim odağı olduğunda bile ipucu başlığı çizilir. Kullanıcı denetime yazma başladığında ipucu başlığı kaybolur.

Varsayılan değer YANLIŞ'tır.

Dönüş Değeri

Yöntem başarılı olursa TRUE; aksi takdirde YANLIŞ.

Açıklamalar

Bu yöntem, Windows SDK'sında açıklanan EM_SETCUEBANNER iletisini gönderir. Daha fazla bilgi için bkz . Edit_SetCueBannerTextFocused makro.

Örnek

Aşağıdaki örnekte CEdit::SetCueBanner yöntemi gösterilmektedir.

m_cedit.SetCueBanner(_T("First, enter text here..."), TRUE);

CEdit::SetHandle

Tutamacı çok satırlı düzenleme denetimi tarafından kullanılacak yerel belleğe ayarlamak için bu işlevi çağırın.

void SetHandle(HLOCAL hBuffer);

Parametreler

hBuffer
Yerel belleğin tanıtıcısını içerir. Bu tanıtıcı, LMEM_MOVEABLE bayrağı kullanılarak LocalAlloc Windows işlevine yapılan önceki bir çağrı tarafından oluşturulmuş olmalıdır. Belleğin null ile sonlandırılan bir dize içerdiği varsayılır. Böyle bir durum söz konusu değilse, ayrılan belleğin ilk baytının 0 olarak ayarlanması gerekir.

Açıklamalar

Düzenleme denetimi daha sonra bu arabelleği kullanarak kendi arabelleği yerine o anda görüntülenen metni depolar.

Bu üye işlevi yalnızca çok satırlı düzenleme denetimleriyle işlenir.

Bir uygulama yeni bir bellek tanıtıcısı ayarlamadan önce, tanıtıcıyı geçerli bellek arabelleğine almak ve Windows işlevini kullanarak LocalFree bu belleği boşaltmak için GetHandle üye işlevini kullanmalıdır.

SetHandle geri alma arabelleği ( CanUndo üye işlevi 0 döndürür) ve iç değişiklik bayrağını ( GetModify üye işlevi 0 döndürür) temizler. Düzenleme denetimi penceresi yeniden çizilir.

Bu üye işlevini bir iletişim kutusundaki çok satırlı düzenleme denetiminde yalnızca DS_LOCALEDIT stili bayrağı ayarlanmış bir iletişim kutusu oluşturduysanız kullanabilirsiniz.

Not

GetHandle , Windows 95/98 ile çalışmaz. Windows 95/98'de çağırırsanız GetHandle NULL döndürür. GetHandle , Windows NT, sürüm 3.51 ve üzeri altında belgelendiği gibi çalışır.

Daha fazla bilgi için bkz . Windows SDK'sında EM_SETHANDLE, LocalAlloc ve LocalFree .

Örnek

// The string to set in the edit control.
CString strString(_T("George Frideric"));

// Initialize the new local handle.
size_t cbSize = (strString.GetLength() + 1) * sizeof(TCHAR);
HLOCAL h = ::LocalAlloc(LHND, cbSize);
LPTSTR lpszText = (LPTSTR)::LocalLock(h);
_tcsncpy_s(lpszText, cbSize / sizeof(TCHAR), strString, _TRUNCATE);
::LocalUnlock(h);

// Free the current text handle of the edit control.
::LocalFree(m_myEdit.GetHandle());

// Set the new text handle.
m_myEdit.SetHandle(h);

CEdit::SetHighlight

Geçerli düzenleme denetiminde görüntülenen metin aralığını vurgular.

void SetHighlight(
    int ichStart,
    int ichEnd);

Parametreler

ichStart
[in] Vurgulanan metin aralığındaki ilk karakterin sıfır tabanlı dizini.

ichEnd
[in] Vurgulanan metin aralığındaki son karakterin sıfır tabanlı dizini.

Açıklamalar

Bu yöntem, Windows SDK'sında açıklanan EM_SETHILITE iletisini gönderir. Bu yöntem, Windows SDK'sında açıklanan EM_SETHILITE iletisini gönderir. Hem hem GetHighlight de SetHighlight yalnızca UNICODE derlemeleri için etkinleştirilir.

CEdit::SetLimitText

Bu nesnenin metin sınırını ayarlamak için bu CEdit üye işlevini çağırın.

void SetLimitText(UINT nMax);

Parametreler

nMax
Karakter olarak yeni metin sınırı.

Açıklamalar

Metin sınırı, düzenleme denetiminin kabul edebildiği karakter cinsinden en fazla metin miktarıdır.

Metin sınırının değiştirilmesi yalnızca kullanıcının girebileceği metni kısıtlar. Zaten düzenleme denetiminde olan herhangi bir metni etkilemez ve içindeki SetWindowText üye işlevi CWndtarafından düzenleme denetimine kopyalanan metnin uzunluğunu etkilemez. Bir uygulama, düzenleme denetimine SetWindowText çağrısında belirtilenden daha fazla metin yerleştirmek için LimitTextişlevini kullanırsa, kullanıcı düzenleme denetimindeki metinlerden herhangi birini silebilir. Ancak, geçerli seçimin silinmesi metnin metin sınırının altına düşmesine neden olmadığı sürece, metin sınırı kullanıcının var olan metni yeni metinle değiştirmesini engeller.

Bu işlev, Win32'de LimitText'in yerini alır.

Daha fazla bilgi için bkz . Windows SDK'sında EM_SETLIMITTEXT .

Örnek

CEditView::GetEditCtrl örneğine bakın.

CEdit::SetMargins

Bu düzenleme denetiminin sol ve sağ kenar boşluklarını ayarlamak için bu yöntemi çağırın.

void SetMargins(
    UINT nLeft,
    UINT nRight);

Parametreler

nLeft
Yeni sol kenar boşluğunun piksel cinsinden genişliği.

nRight
Yeni sağ kenar boşluğunun piksel cinsinden genişliği.

Açıklamalar

Not

Bu üye işlevi, Windows 95 ve Windows NT 4.0 ile başlayarak kullanılabilir.

Daha fazla bilgi için bkz . Windows SDK'sında EM_SETMARGINS .

Örnek

CEditView::GetEditCtrl örneğine bakın.

CEdit::SetModify

Düzenleme denetiminin değiştirilmiş bayrağını ayarlamak veya temizlemek için bu işlevi çağırın.

void SetModify(BOOL bModified = TRUE);

Parametreler

bModified
DOĞRU değeri, metnin değiştirildiğini, YANLIŞ değeri ise değiştirilmediğini gösterir. Varsayılan olarak, değiştirilen bayrak ayarlanır.

Açıklamalar

Değiştirilen bayrak, düzenleme denetimindeki metnin değiştirilip değiştirilmediğini gösterir. Kullanıcı metni her değiştirdiği zaman otomatik olarak ayarlanır. Değeri GetModify üye işleviyle alınabilir.

Daha fazla bilgi için bkz . Windows SDK'sında EM_SETMODIFY .

Örnek

CEdit::GetModify örneğine bakın.

CEdit::SetPasswordChar

Kullanıcı metin yazdığınızda düzenleme denetiminde görüntülenen parola karakterini ayarlamak veya kaldırmak için bu işlevi çağırın.

void SetPasswordChar(TCHAR ch);

Parametreler

Caner
Kullanıcı tarafından yazılan karakterin yerine görüntülenecek karakteri belirtir. Ch 0 ise, kullanıcı tarafından yazılan gerçek karakterler görüntülenir.

Açıklamalar

Parola karakteri ayarlandığında, kullanıcı tarafından girilen her karakter için bu karakter görüntülenir.

Bu üye işlevinin çok satırlı düzenleme denetimi üzerinde hiçbir etkisi yoktur.

SetPasswordChar Üye işlevi çağrıldığında, CEdit ch tarafından belirtilen karakteri kullanarak tüm görünür karakterleri yeniden çizer.

Düzenleme denetimi ES_PASSWORD stiliyle oluşturulursa, varsayılan parola karakteri yıldız ( *) olarak ayarlanır. Ch 0 olarak ayarlanmış olarak çağrılırsa SetPasswordChar bu stil kaldırılır.

Daha fazla bilgi için bkz . Windows SDK'sında EM_SETPASSWORDCHAR .

Örnek

// Turn off the password mode.
m_myEdit.SetPasswordChar(0);
ASSERT(!(m_myEdit.GetStyle() & ES_PASSWORD));

CEdit::SetReadOnly

Düzenleme denetiminin salt okunur durumunu ayarlamak için bu işlevi çağırır.

BOOL SetReadOnly(BOOL bReadOnly = TRUE);

Parametreler

bReadOnly
Düzenleme denetiminin salt okunur durumunun ayarlanıp ayarlanmayacağını veya kaldırılacağını belirtir. TRUE değeri, durumu salt okunur olarak ayarlar; FALSE değeri, durumu okuma/yazma olarak ayarlar.

Dönüş Değeri

İşlem başarılı olursa sıfır olmayan veya hata oluşursa 0.

Açıklamalar

Geçerli ayar, CWnd::GetStyle dönüş değerinde ES_READONLY bayrağını test ederek bulunabilir.

Daha fazla bilgi için bkz . Windows SDK'sında EM_SETREADONLY .

Örnek

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

CEdit::SetRect

Belirtilen koordinatları kullanarak dikdörtgenin boyutlarını ayarlamak için bu işlevi çağırın.

void SetRect(LPCRECT lpRect);

Parametreler

lpRect
Biçimlendirme dikdörtgeninin RECT yeni boyutlarını belirten yapıya veya CRect nesneye işaret eder.

Açıklamalar

Bu üye yalnızca birden çok satırlı düzenleme denetimleri tarafından işlenir.

Çok satırlı düzenleme denetiminin biçimlendirme dikdörtgenini ayarlamak için kullanın SetRect . Biçimlendirme dikdörtgeni, düzenleme denetimi penceresinin boyutundan bağımsız olarak metnin sınırlayıcı dikdörtgenidir. Düzenleme denetimi ilk oluşturulduğunda, biçimlendirme dikdörtgeni düzenleme denetimi penceresinin istemci alanıyla aynıdır. Bir uygulama, üye işlevini kullanarak SetRect biçimlendirme dikdörtgenini düzenleme denetimi penceresinden daha büyük veya daha küçük yapabilir.

Düzenleme denetiminde kaydırma çubuğu yoksa, biçimlendirme dikdörtgeni pencereden büyük yapılmışsa metin kırpılır, kaydırılmaz. Düzenleme denetimi kenarlık içeriyorsa, biçimlendirme dikdörtgeni kenarlık boyutuna göre küçültür. Üye işlevi tarafından döndürülen dikdörtgeni GetRect ayarlarsanız, dikdörtgeni SetRectöğesine geçirmeden önce kenarlık boyutunu kaldırmanız gerekir.

Çağrıldığında SetRect düzenleme denetiminin metni de yeniden biçimlendirilir ve yeniden dağıtılır.

Daha fazla bilgi için bkz . Windows SDK'sında EM_SETRECT .

Örnek

// Flag indicating whether to redraw the edit control.
bool fRedraw = TRUE;

CRect r;

m_myEdit.GetRect(&r);

// Reduce the formatting rect of the edit control by
// 10 pixels on each side.
if ((r.Width() > 20) && (r.Height() > 20))
{
   r.DeflateRect(10, 10);

   if (fRedraw)
      m_myEdit.SetRect(&r);
   else
      m_myEdit.SetRectNP(&r);
}

CEdit::SetRectNP

Çok satırlı düzenleme denetiminin biçimlendirme dikdörtgenini ayarlamak için bu işlevi çağırın.

void SetRectNP(LPCRECT lpRect);

Parametreler

lpRect
Dikdörtgenin yeni boyutlarını belirten bir RECT yapıya veya CRect nesneye işaret eder.

Açıklamalar

Biçimlendirme dikdörtgeni, düzenleme denetimi penceresinin boyutundan bağımsız olarak metnin sınırlayıcı dikdörtgenidir.

SetRectNP , düzenleme denetimi penceresinin SetRect yeniden çizilmemesi dışında üye işleviyle aynıdır.

Düzenleme denetimi ilk oluşturulduğunda, biçimlendirme dikdörtgeni düzenleme denetimi penceresinin istemci alanıyla aynıdır. Bir uygulama, üye işlevini çağırarak SetRectNP biçimlendirme dikdörtgenini düzenleme denetimi penceresinden daha büyük veya daha küçük yapabilir.

Düzenleme denetiminde kaydırma çubuğu yoksa, biçimlendirme dikdörtgeni pencereden büyük yapılmışsa metin kırpılır, kaydırılmaz.

Bu üye yalnızca birden çok satırlı düzenleme denetimleri tarafından işlenir.

Daha fazla bilgi için bkz . Windows SDK'sında EM_SETRECTNP .

Örnek

CEdit::SetRect örneğine bakın.

CEdit::SetSel

Düzenleme denetiminde bir karakter aralığı seçmek için bu işlevi çağırın.

void SetSel(
    DWORD dwSelection,
    BOOL bNoScroll = FALSE);

void SetSel(
    int nStartChar,
    int nEndChar,
    BOOL bNoScroll = FALSE);

Parametreler

dwSelection
Düşük sıralı sözcükte başlangıç konumunu ve yüksek sıralı sözcükte bitiş konumunu belirtir. Düşük sıralı sözcük 0 ve yüksek sıralı sözcük -1 ise, düzenleme denetimindeki tüm metin seçilir. Düşük sıralı sözcük -1 ise, geçerli seçim kaldırılır.

bNoScroll
Şapka işaretinin görünüme kaydırılıp kaydırılmayacağını gösterir. YANLIŞ ise, şapka işareti görünüme kaydırılır. TRUE ise, şapka işareti görünüme kaydırılmaz.

nStartChar
Başlangıç konumunu belirtir. nStartChar 0 ve nEndChar -1 ise, düzenleme denetimindeki tüm metin seçilir. nStartChar -1 ise, geçerli seçim kaldırılır.

nEndChar
Bitiş konumunu belirtir.

Açıklamalar

Daha fazla bilgi için bkz . Windows SDK'sında EM_SETSEL .

Örnek

CEdit::GetSel örneğine bakın.

CEdit::SetTabStops

Çok satırlı düzenleme denetiminde sekme duraklarını ayarlamak için bu işlevi çağırın.

void SetTabStops();
BOOL SetTabStops(const int& cxEachStop);

BOOL SetTabStops(
    int nTabStops,
    LPINT rgTabStops);

Parametreler

cxEachStop
Sekme duraklarının her cxEachStop iletişim kutusunda ayarlandığını belirtir.

nTabStops
rgTabStops içinde yer alan sekme duraklarının sayısını belirtir. Bu sayı 1'den büyük olmalıdır.

rgTabStops
İletişim birimlerinde sekme duraklarını belirten işaretsiz tamsayılar dizisine işaret eder. İletişim kutusu birimi yatay veya dikey bir uzaklıktır. Yatay bir iletişim kutusu birimi geçerli iletişim kutusu temel genişlik biriminin dörtte birine eşittir ve 1 dikey iletişim kutusu birimi geçerli iletişim kutusu temel yükseklik biriminin sekizde birine eşittir. İletişim kutusu temel birimleri, geçerli sistem yazı tipinin yüksekliğine ve genişliğine göre hesaplanır. GetDialogBaseUnits Windows işlevi geçerli iletişim kutusu temel birimlerini piksel cinsinden döndürür.

Dönüş Değeri

Sekmeler ayarlandıysa sıfır olmayan; aksi takdirde 0.

Açıklamalar

Metin çok satırlı düzenleme denetimine kopyalandığında, metindeki herhangi bir sekme karakteri bir sonraki sekme durağına kadar boşluk oluşturulmasına neden olur.

Sekme duraklarını varsayılan 32 iletişim birimi boyutuna ayarlamak için bu üye işlevinin parametresiz sürümünü çağırın. Sekme duraklarını 32'den farklı bir boyuta ayarlamak için cxEachStop parametresiyle sürümü çağırın. Sekme duraklarını bir boyut dizisine ayarlamak için iki parametreli sürümü kullanın.

Bu üye işlevi yalnızca çok satırlı düzenleme denetimleri tarafından işlenir.

SetTabStops düzenleme penceresini otomatik olarak yeniden çizmez. Düzenleme denetiminde bulunan metnin sekme duraklarını değiştirirseniz, düzenleme penceresini yeniden çizmek için CWnd::InvalidateRect'i çağırın.

Daha fazla bilgi için bkz . Windows SDK'sında EM_SETTABSTOPS ve GetDialogBaseUnits .

Örnek

CEditView::SetTabStops örneğine bakın.

CEdit::ShowBalloonTip

Geçerli düzenleme denetimiyle ilişkili bir balon ipucu görüntüler.

BOOL ShowBalloonTip(PEDITBALLOONTIP pEditBalloonTip);

BOOL ShowBalloonTip(
    LPCWSTR lpszTitle,
    LPCWSTR lpszText,
    INT ttiIcon = TTI_NONE);

Parametreler

pEditBalloonTip
[in] Balon ucunu açıklayan bir EDITBALLOONTIP yapısının işaretçisi.

lpszTitle
[in] Balon ucunun başlığını içeren bir Unicode dizesinin işaretçisi.

lpszText
[in] Balon ipucu metnini içeren unicode dize işaretçisi.

ttiIcon
[in] Balon ucuyla ilişkilendirilecek simge türünü belirten INT . Varsayılan değer TTI_NONE. Daha fazla bilgi için bkzttiIcon. EDITBALLOONTIP yapısının üyesi.

Dönüş Değeri

Bu yöntem başarılı olursa TRUE; aksi takdirde YANLIŞ.

Açıklamalar

Bu işlev, Windows SDK'sında açıklanan EM_SHOWBALLOONTIP iletisini gönderir. Daha fazla bilgi için Edit_ShowBalloonTip makrosna bakın.

Örnek

İlk kod örneği, m_ceditgeçerli düzenleme denetimine erişmek için kullanılan bir değişkeni tanımlar. Bu değişken sonraki örnekte kullanılır.

public:
// Variable to access the edit control.
CEdit m_cedit;

Sonraki kod örneğinde düzenleme denetimi için bir balon ipucu görüntülenir. CEdit::ShowBalloonTip yöntemi bir başlık ve balon ipucu metni belirtir.

m_cedit.ShowBalloonTip(
    _T("CEdit Balloon Tip"), // title
    _T("Here's a tip!"),     // text
    TTI_INFO);

CEdit::Undo

Son düzenleme denetimi işlemini geri almak için bu işlevi çağırın.

BOOL Undo();

Dönüş Değeri

Tek satırlı düzenleme denetimi için dönüş değeri her zaman sıfırdan farklı bir değerdir. Çok satırlı düzenleme denetiminde, geri alma işlemi başarılı olursa dönüş değeri sıfır değildir veya geri alma işlemi başarısız olursa 0 olur.

Açıklamalar

Geri alma işlemi de geri alınabilir. Örneğin, ilk çağrısıyla Undosilinen metni geri yükleyebilirsiniz. Araya bir düzenleme işlemi olmadığı sürece, ikinci bir çağrısıyla Undometni yeniden kaldırabilirsiniz.

Daha fazla bilgi için bkz . Windows SDK'sında EM_UNDO .

Örnek

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

Ayrıca bkz.

MFC Örnek CALCDRIV
MFC Örnek CMNCTRL2
CWnd Sınıfı
Hiyerarşi Grafiği
CWnd Sınıfı
CButton Sınıfı
CComboBox Sınıfı
CListBox Sınıfı
CScrollBar Sınıfı
CStatic Sınıfı
CDialog Sınıfı