我现在想对ListCtrl中的某一项进行编辑,
而且编辑的时候要对数据检验,只能输入数字和字母。
哪位大虾能帮帮我,不胜感激。
而且编辑的时候要对数据检验,只能输入数字和字母。
哪位大虾能帮帮我,不胜感激。
解决方案 »
- ListCtrl颜色的清除问题?
- 关于OnCtlColor的一段代码,感觉有问题不知道怎么改
- 我要用程序控制鼠标在菜单及对话框中移动并单击,这时不想让用移动鼠标,如何做到?
- 用什么技术可以禁用桌面右键属性里面的桌面设置
- 关于QueryInterface的一个问题,请指教
- 100分时钟控制求解
- 用户用Ctrl+alt+Del将屏幕锁定,怎么得到当前屏幕?
- stdole2.tlb导入时的问题
- 關於ISampleGrabber的問題
- 请教:为什么我的这个工程成了这样!?
- 使用OLEDB provider创建ADO连接字符串的文件的后缀是什么?
- 如何在DLL中创建一个函数,返回一个OBJECT,然后在ASP中调用这个OBJECT
这个控件执行数据检验。但是没能成功,哪位大虾能提供一个方法给我参考?
2、在CListCtrl对象的父类中处理LVN_ENDLABELEDIT消息.例如:
void CDlgSnippet::OnEndlabeleditListFile(NMHDR* pNMHDR, LRESULT* pResult)
{
LV_DISPINFO* pDispInfo = (LV_DISPINFO*)pNMHDR;
// TODO: Add your control notification handler code here
TRACE("%s\n", pDispInfo->item.pszText);
m_ctlFileList.SetItemText(pDispInfo->item.iItem, pDispInfo->item.iSubItem,
pDispInfo->item.pszText);
*pResult = 0;
}
3、对数字和字母的检查
isdigit(char ch)可以判断一个字符是否数字,isalpha(char ch)可以判断一个字符是否字母。
例如:
BOOL bResult = TRUE;
CString csTest;
csTest = _T("bigbigworld");
for (int i = 0; i < csTest.GetLength(); i++)
{
char ch = csTest.GetAt(i);
if (ch < 0)
{// 遇到汉字
bResult = FALSE;
break;
}
else
{
if (!isdigit(ch) && !isalpha(ch))
{
bResult = FALSE;
break;
}
}
}
不过你好象误解我的意思,你的这个方法我也知道,
你是对输入的字符串作检验,是吧?
但是我是想能不能把数据检验的功能做到CMyEdit的控件中去,
就像只能输入数字的Edit一样,当你输入字符时,就没有反应。
可是怎样把编辑控件转换为CMyEdit,这部分我还不知道如何搞定,
哪位高手来出出手?