如何从资源中创建带有 ES_PASSWORD CEdit 时显示的默认粗体项目符号( ES_PASSWORD )。

我尝试了什么:

void CDialogMain::OnBnClickedCheckShowPwd()
{
    CEdit* pEdit = (CEdit*)GetDlgItem(IDC_EDIT_PASSWORD);
    if (m_CheckShowPwd.GetState() & BST_CHECKED)
    {
        pEdit->SetPasswordChar(0);
        ASSERT(!(pEdit->GetStyle() & ES_PASSWORD));
    }
    else{
        pEdit->SetPasswordChar(L'*');
        ASSERT((pEdit->GetStyle() & ES_PASSWORD));
    }
    pEdit->Invalidate(FALSE);
}

我想更改 CEdit 控件的 ES_PASSWORD 样式。下面的代码在运行时对其进行了更改,但 CEdit的外观粗体项目符号更改为外观难看的星号

如何找回那些漂亮的粗体项目符号而不是纯星号

最佳答案

要将密码字符设置回项目符号,请使用:

pEdit->SetPasswordChar(9679);

或十六进制:
pEdit->SetPasswordChar(0x25CF);

关于c++ - 取回使用ES_PASSWORD MFC进行CEdit时显示的粗体项目符号,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41350092/

10-09 23:08