|
acedGetString()[ads_getstring()]
int acedGetString(int cronly, const TCHAR *prompt, TCHAR *psz)
acedGetString()函数暂停程序运行以等待用户输入一个字符串,其定义如下:
该函数使result指向用户输入的字符串。参数cronly说明字符串能否包含空格。prompt参数指定acedGetString()函数暂停前显示的字符串。prompt是可选的,如果不需要使用,可放置一个NULL替代字符串的值。result参数必须指向足以容纳字符串的内存区。
acedGetString()函数最多可返回132个字符,所以result所指的字符串长度不能超过133个字符。如果参数cronly的值是真(非零),则字符串可以包含空格,用户必须按Enter键终止字符串的输入。如果参数cronly的值是假(0),则按空格键或Enter键均能终止字符串的输入。
acedGetString()函数返回下列码之一:如果函数调用成功返回RTNORM,如果失败返回RTERROR,如果用户取消(按Esc键)则返回RTCAN。
CString str(_T("")), strTmp(_T(""));
do
{
strPrompt.Format(_T("\n请输入(%%)<%0.2f>:"), dNum);
rc = acedGetString(FALSE, strPrompt, str.GetBufferSetLength(1000));//
if (rc == RTNORM)
{
str.ReleaseBufferSetLength(1000);
if (str == _T(""))
strTmp.Format(_T("%.1f"), 0.00);
else
{
strTmp = str.SpanIncluding(_T("0123456789"));
if (strTmp.IsEmpty())
acutPrintf(_T("\n输入无效,请重新输入数值!"));
}
}
else
return;
} while (strTmp.IsEmpty()); |
|