CEdit::LineFromChar
Rufen Sie diese Funktion, um die Zeilennummer der Zeile abzurufen, die den angegebenen Zeichenindex enthält.
int LineFromChar(
int nIndex = -1
) const;
Parameter
- nIndex
Enthält den nullbasierten Indexwert für das gewünschte Zeichen im Text des Bearbeitungssteuerelements oder enthält - 1. Wenn nIndex ist - 1, wird die aktuelle Zeile h. die Zeile, die die Einfügemarke enthält.
Rückgabewert
Die nullbasierte Zeilennummer der Zeile, die den Zeichenindex angegeben durch nIndex enthält. Wenn nIndex ist - 1, die Anzahl der Zeilen, die das erste Zeichen der Auswahl enthält, wird zurückgegeben. Wenn keine Auswahl vorhanden ist, wird die Zahl der aktuellen Zeile zurückgegeben.
Hinweise
Ein Zeichenindex ist die Anzahl der Zeichen am Anfang des Bearbeitungssteuerelements.
Diese Memberfunktion wird nur von mehrzeilige Bearbeitungssteuerelemente verwendet.
Weitere Informationen finden Sie unter EM_LINEFROMCHAR in Windows SDK.
Beispiel
// 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 */);
Anforderungen
Header: afxwin.h