如何设置 IDL,以便用户可以知道参数是“可选”的在VBA中?
在IDL中,我定义一个方法:
[id(1), helpstring("BLAH")] HRESULT SomeMethod([in, optional, defaultvalue(NULL)] IDispatch* para);
当我在VBA中使用这个方法时,屏幕提示只显示:
SomeMethod([para As Object])
我想要的是,有一些指示说这个参数是“可选的”,或者至少说有一个默认参数“无效的”。像这样:
SomeMethod([[optional]para As Object])
或者至少
SomeMethod([para As Object = NULL])
有人可以帮忙吗?谢谢。
In an IDL, I define a method:
[id(1), helpstring("BLAH")] HRESULT SomeMethod([in, optional, defaultvalue(NULL)] IDispatch* para);
When I use this method in VBA, the screen tip only shows:
SomeMethod([para As Object])
What I want is that, there's some indication saying this parameter is "optional", or at least say there is a default parameter "NULL". Like this:
SomeMethod([[optional]para As Object])
or at least
SomeMethod([para As Object = NULL])
Anyone can help? Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
在 VBA 中,可选参数位于括号中。即
MsgBox(prompt[,buttons][,title][,helpfile,context])
buttons、title、helpfile和context都是MsgBox函数的可选参数。
括号指示参数是可选的。 没有其他指标。
作为解决方法,您可以将“Optional_”添加到要显示为可选的变量的开头。例如:
现在您可以在 Intellisense 中看到“Optional_”一词作为变量名称的一部分。
In VBA, optional parameters are in brackets. i.e.
MsgBox(prompt[, buttons] [, title] [, helpfile, context])
buttons, title, helpfile and context are all optional arguments for the MsgBox Function.
The brackets are the indicator that a parameter is optional. There is no other indicator.
As a workaround, you could add "optional_" to the beginning of variables that you want to display as optional. ex:
Now you can see in the Intellisense the word "optional_" as part of the variable name.