是否可以在CEdit控件的数字输入和字母数字输入模式之间切换?

Ani*_*amy 1 c++ windows mfc input cedit

我有一些单选按钮,决​​定了给CEdit控件的输入类型.按照设计,我的CEdit控件接受数字和字符.

有没有办法在用户点击提供的单选按钮时才将此输入限制为仅限数字?此外,当用户点击另一个选项(即字母数字模式)时,是否可以切换回来?

我设置我的CEdit控件以使用Visual C++的GUI接受字母数字字符(即右键单击控件 - >属性 - >"样式"选项卡 - >选择"数字").

一个用例示例:

  1. 用户开始申请.
  2. 用户点击某个按钮,此对话框与CEdit控件一起考虑显示.
  3. 向用户显示单选按钮,默认情况下选择字母数字按钮(因为这是在设计时设置的默认模式).
  4. 用户点击数字.

此时我想将CEdit控件的输入限制为仅数字.同样,在此之后,如果用户再次单击字母数字单选按钮,我想删除该限制.

Rog*_*and 7

是的,用于CEdit::ModifyStyle()设置或清除ES_NUMBER样式.

所以,要让它只接受数字:

CEdit *pEdit = // get your control here ...
pEdit->ModifyStyle(0, ES_NUMBER);
Run Code Online (Sandbox Code Playgroud)

并恢复接受所有字符:

pEdit->ModifyStyle(ES_NUMBER, 0);
Run Code Online (Sandbox Code Playgroud)