CEdit::LineFromChar
Chame essa função para recuperar número de linha que contém o índice de caractere especificado.
int LineFromChar(
int nIndex = -1
) const;
Parâmetros
- nIndex
Contém o valor de índice baseado em zero para o caractere desejado no texto do controle de edição ou contém – 1.If nIndex é – 1, ele especifica a linha corrente, ou seja, a linha que contém o cursor.
Valor de retorno
O número de linha com base em zero da linha que contém o índice de caractere especificado por nIndex. If nIndex é – 1, o número da linha que contém o primeiro caractere da seleção é retornado. Se não houver nenhuma seleção, será retornado número de linha corrente.
Comentários
Um índice de caractere é o número de caracteres do início do controle de edição.
Esta função de membro é usada somente por controles de edição de várias linhas.
Para obter mais informações, consulte EM_LINEFROMCHAR in the Windows SDK.
Exemplo
// 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 */);
Requisitos
Cabeçalho: afxwin.h