CEdit::LimitText
ユーザーがエディット コントロールに入力されるテキストの長さを制限するには、この関数を呼び出します。
void LimitText(
int nChars = 0
);
パラメーター
- nChars
ユーザーが入力できるテキストの長さ (バイト数) を指定します。このパラメーターが 0 の場合、テキストの長さは UINT_MAX バイトに設定されます。これが既定の動作です。
解説
テキストの境界の restrict を変更してテキストだけユーザー入力できます。さらに、エディット コントロールのテキストには影響しません CWnd、既にの SetWindowText のメンバー関数でエディット コントロールにコピーしたテキストの長さに影響します。LimitTextへの呼び出しで指定された、エディット コントロールにテキストを設定するときにアプリケーションが SetWindowText 関数を使用すると、ユーザーはのエディット コントロール内のテキスト削除できます。ただし、テキストの境界が現在の選択を削除すると、テキストがテキストの境界の下にある場合、ユーザーが新しいテキストで既存のテキストを置換ようにします。
[!メモ]
Win32 では (Windows NT、および Windows 95)、/98 SetLimitText は、この関数を置き換えます。
詳細については、Windows SDKの EM_LIMITTEXT を参照してください。
使用例
// 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);
必要条件
ヘッダー: afxwin.h