`

看你知道不知道之-别惹我Msgbox的Title

阅读更多
在VB6中,MsgBox是比较讨厌的,我在整理代码的时候,通常要检查每个MsgBox的Title是否正确,因为不同的程序员有不同的习惯,有些人也愿意省略,到底有没有办法达到Msgbox中Title的统一呢?

答:当然有办法了,一种是在VB6的工程里边设置好工程的名称,然后所有的Msgbox全部全部省略Title,这样Msgbox的显示就统一了,但是这种太不爽了,在Title里边显示的控制太不灵活,而且如果有些人使用了自定义的Title也,这种方式就没有办法了。

另外一种方式是采用一个常量,然后让所有的人在Title里边引用这个常量,这种方式好像解决了问题,但是如果别人没有使用这个常量呢?也不好办呀。

到底有没有好的办法呢?呵呵,VB6里边可以这样解决。

在模块里边定义一个Msgbox函数,这个函数就会覆盖系统提供的Msgbox了,问题也就解决了,很简单的。

代码如下:
'封装MsgBox,保证提示的一致性
Public Function MsgBox(Prompt As String, Optional Button As VbMsgBoxStyle, Optional Title As String = ""As VbMsgBoxResult
    
MsgBox = VBA.MsgBox(Prompt, Button, "提示")
End Function

这样这个Msgbox就接管系统的Msgbox了,当让通过这种方式可以覆盖很多系统函数,达到所有程序员用法的统一,如果有好的编程约束更好了,如果没有也不用头疼,管你怎么写,最后通过函数统一了就好。

呵呵,我用这个函数还要处理一下prompt里边的标点符号,我希望所有人的prompt都是英文半角的,但是还是有一些是中文的标点符号,通过这个我就可以修改这些头疼的东西了。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics