最近用VC6.0用的比较少,之前都做过的一些技巧都忘记了,只好翻出以前的代码,扒拉扒拉找些能用的来用下。今天索性开始记录下来,以后用的时候来查找好了。当然实现的方法有很多种,可能有更好的存在:)
1、编辑框
编辑框使用比较简单,定义Value类型,CString型的变量可以获取值,也可以赋值。但有时需要判断编辑框是否为空,如果为空需要将焦点放在该编辑框内,以便用户进行输入,修正错误。当然可以将编辑框定义为Control然后使用。也可以使用Value类型来实现:
CEdit *pEdt = (CEdit*)GetDlgItem(IDC_EDIT_UNIT);
pEdt->SetFocus();
判断空仍然使用CString的IsEmpty()函数即可。
2、修改控件的鼠标形状
很多时候需要将对话框中的某个控件上的鼠标形状修改下,比如我的程序中就需要在Label上时显示为手的形状,然后如果用户点击,则打开一个新的对话框。
首先定义鼠标资源:
#define IDC_CURSOR_HAND MAKEINTRESOURCE(32649)
然后添加对话框的SETCURSOR事件,在OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message) 函数中修改函数指针即可:
if ((pWnd == GetDlgItem(IDC_ILABELX_STORE)) || (pWnd == GetDlgItem(IDC_ILABELX_REJECT))
|| (pWnd == GetDlgItem(IDC_ILABELX_CHECK)))
{
SetCursor(LoadCursor(NULL, IDC_CURSOR_HAND));
return TRUE;
}
其中GetDlgItem()中的参数是需要改变鼠标形状的控件ID,LoadCursor的第二个参数就是前面定义的鼠标指针。