我呼叫了getline()來獲取內容,是單行編輯框。執行到getline就出錯了。網上試了好多方法。改各種型別的緩沖區。我發現在執行getline時,CEdit物件沒有初始化。整個物件的成員變數都是空的。然后就是彈出除錯失敗的提示框。還有,為什么CString和第二個引數型別不符合都可以過?
uj5u.com熱心網友回復:
在 DDX_... 那個函式里面加了變數 CEW 到控制元件的映射沒有?uj5u.com熱心網友回復:
DDX_Control(pDX, IDC_EDIT1, CEW);uj5u.com熱心網友回復:
getwindowtext試試看uj5u.com熱心網友回復:
添加了
uj5u.com熱心網友回復:
我想用MFC的,我發現呼叫任意一個CEdit的函式都出現同樣的錯誤。
uj5u.com熱心網友回復:
寫上去了
uj5u.com熱心網友回復:
int GetEditLine(CEdit &m_Edit, int iTargetLine, CString &szLineVal)
{
int iRet = 0;
szLineVal.Empty();
if(m_Edit.m_hWnd && m_Edit.GetLineCount() > iTargetLine)
{
int iLen = m_Edit.LineLength(iTargetLine) + 1;
iRet = m_Edit.GetLine(iTargetLine, szLineVal.GetBuffer(iLen), iLen);
szLineVal.ReleaseBuffer();
}
TRACE(_T("Edit line %d = \"%s\"\n"), iTargetLine, (LPCTSTR)szLineVal);
return iRet;
}
uj5u.com熱心網友回復:
DDX_Control(pDX, IDC_EDIT1, CEW);uj5u.com熱心網友回復:
前面幾樓已經說得很明白, 就是你的CEdit控制元件可能沒有關聯CEdit變數.還有GetLine出錯, 也可能是索引越界
uj5u.com熱心網友回復:
“是單行編輯框”nIndex
Specifies the line number to retrieve from a multiple-line edit control. Line numbers are zero-based; a value of 0 specifies the first line. This parameter is ignored by a single-line edit control.
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/111025.html
標籤:基礎類
