如果不需要动态改变就用上面哥们说的方法。
如果要在代码中改变,看看这样行不行:(CEdit * ) ed = (CEdit * )GetDlgItem(IDC_EDIT1);
ed->ModifyStyle(NULL,ES_PASSWORD);

解决方案 »

  1.   

    jason802(小糊涂仙) 我最欣赏你和灰兔那,你们两是初学者的好老师!!!!!
      

  2.   

    更正:(CEdit * ) ed = (CEdit * )GetDlgItem(IDC_EDIT1);
    把最左边那对括号去掉,我一时大意。
      

  3.   

    这回肯定对了,我编译执行过了。CEdit * ed = (CEdit * )GetDlgItem(IDC_EDIT1);ed->SetPasswordChar(TEXT('*')); //打出来的字全部显示* ,你可以换成随便什么其他符号。ed->ModifyStyle(NULL,ES_PASSWORD);
      

  4.   

    m_Static2.SetWindowText(m_ParaDesc[1].cName);
    m_Static2.ShowWindow(SW_SHOW);
    m_Edit2.GetRect(&p_Rect);
     p_Rect.right=p_Rect.left+m_ParaDesc[1].iLength;
    m_Edit2.SetRect(p_Rect);
    iRet=GetWindowLong(m_Edit2,GWL_EXSTYLE);
    CEdit * ed = (CEdit * )GetDlgItem(IDC_EDIT2);
    m_Edit2.ShowWindow(SW_SHOW);
    iRet=ed->ModifyStyle(NULL,ES_PASSWORD);
    iRet=GetWindowLong(m_Edit2,GWL_EXSTYLE);
    对不起,还是不行,没有显示*。
    我是先设置了一个对话框,放置了一些编辑框为不可视属性,
    根据程序需要再设置它,运行平台win2000
      

  5.   

    谢谢了。
    我用VC用了很久了,但是一直只会做简单的界面。
    刚才编译时没有加入ed->SetPasswordChar(TEXT('*')); 
    有空多交流
    :)