仅允许vb6中的字符串中的某些字符

Ber*_*eer 2 vb6 textbox restrict

我想只制作预定义的字符,以便能够在vb6中的文本框中使用.我怎么能做到这一点?

预定义的字符将是这样的0-9,A, C, M, E除了这些之外的所有其他字符将给msgbox作为错误.它也a,c,m,e可以Ucase()用来解决它.

Ale*_* K. 7

您可以;

private Sub atextbox_KeyPress(keyascii As Integer)
   if InStr(1, "0123456789ACME", Chr$(keyascii)) = 0 Then keyascii  = 0 '//case sensitive
End Sub
Run Code Online (Sandbox Code Playgroud)

要么

if Chr$(keyascii) like "[0-9]" or Chr$(keyascii) like "[ACMEacme]"
Run Code Online (Sandbox Code Playgroud)

或格式化

select case true
    case chr$(keyascii) like "[0-9]"
    case chr$(keyascii) like "[ACMEacme]"
    case else
        keyascii = 0
end select
Run Code Online (Sandbox Code Playgroud)


Dea*_*nna 5

您可以检测使用KeyPress事件输入的每个字符并检查ASCII值.如果将其设置为0,则将忽略印刷机.一定要检查Change活动以抓住粘贴等.

此外,不要使用消息框,因为这会惹恼用户.