MFC编辑框密码切换的问题

2024-12-17 20:40:38
推荐回答(4个)
回答1:

新建一个基于对话框的MFC程序,设置都取默认值。
在对话框上添加一个EditBox(IDC_EDIT1)和一个CheckBox(IDC_CHECK1),
在CheckBox上点右键->Events...,
弹出的对话框左边选“BN_CLICKED”,再点右边的“Add and Edit”,然后“OK”,
在OnCheck1()函数里添加以下代码:

CButton *check = (CButton*)GetDlgItem(IDC_CHECK1);
CEdit *edit = (CEdit*)GetDlgItem(IDC_EDIT1);
if (check->GetCheck()==0)
{
edit->SetPasswordChar(0);
}else
{
edit->SetPasswordChar(_T('*'));
}
edit->RedrawWindow(NULL,NULL);

回答2:

没做过测试,程序中修改编辑框的密码属性是否能达到效果,这个可以试试。
如果不行,提供你一个思路:自定义一个成员变量保存编辑框内容,复选框点击响应函数中,变成密码状态,就str.GetLength()方式,写几个*(其实不是密码状态,设置 密码状态也可以),取消密码状态,str再设置回编辑框就可以了。

回答3:

编辑框控件有一个属性来控制是否是密码形式的,给复选框一个事件让它修改这个编辑框的属性就可以了吧,思路是这样子吧

回答4:

设置编辑框的密码样式即可。