参数信息工具提示

IntelliSense 参数信息工具提示用户提供的它们在语言构造的提示有关。

参数信息工具提示的工作原理

当您键入在图像编辑器中时的语句, VSPackage 显示包含语句的定义的小的工具提示窗口中键入。 例如,因此,如果您键入 Microsoft (MFC) 基础类 (mfc) 语句 (例如 pMainFrame ->UpdateWindow) 并按左括号键开始列出参数,方法提示突出显示 UpdateWindow 方法的定义。

参数信息工具提示符语句完成通常结合使用。 对具有参数或其他格式的信息在方法名称或关键字之后的语言都最为有用。

参数信息工具提示的语言服务启动通过命令截获。 若要截获用户字符,语言服务对象必须实现 IOleCommandTarget 接口并将文本视图指向 IOleCommandTarget 实现,通过调用 IVsTextView 接口的 AddCommandFilter 方法。 命令筛选器截获您键入到代码窗口的命令。 当监视命令信息了解显示参数信息传递给用户。 可以为语句完成使用同一个命令筛选器,错误标记,等等。

当您键入语言服务可以提供一些提示的关键字,则语言服务创建一 IVsMethodTipWindow 对象并调用 IVsTextView 接口的 UpdateTipWindow 方法通知 IDE 显示提示。 创建 IVsMethodTipWindow 对象使用 VSLocalCreateInstance 并指定 coclass CLSID_VsMethodTipWindowVsLocalCreateInstance 是在调用该本地注册表的 QueryService 并调用此对象的 CreateInstanceCLSID_VsMethodTipWindow的头文件定义的函数 vsdoc.h。

提供用于提示

若要提供方法提示,请调用 IVsMethodTipWindow 接口的 SetMethodData 方法,并 IVsMethodData 接口的实现。

IVsMethodData 类调用时,其方法按照以下顺序调用:

  • GetContextStream

    返回相关数据的位置和长度在当前文本缓冲区。 这指示 IDE 不会遮盖与工具提示窗口中显示该数据。

  • GetCurMethod

    返回方法号 (从零开始的索引) 要最初显示。 例如,因此,如果返回零,然后单击第一个重载方法时存在。

  • GetOverloadCount

    返回适用于当前上下文重载方法的数量。 如果返回大于 1 的值此方法的,则箭头上方的下的文本视图显示您的。 如果您单击下箭头, IDE 调用 NextMethod 方法。 如果单击箭头, IDE 调用 PrevMethod 方法。

  • GetMethodText

    参数信息工具提示的文本构造在线程内调用 GetMethodTextGetParameterText 方法。

  • GetParameterCount

    该方法返回参数数目显示。

  • GetParameterText

    如果返回对应于您希望显示的重载方法数字,此方法通过对 UpdateView 方法的调用,然后调用。

  • UpdateView

    ,当方法提示显示时,将通知语言服务更新编辑。 在 UpdateView 方法,请调用下列:

    <pTxWin> ->UpdateTipWindow(<pTip>, UTW_CONTENTCHANGED | UTW_CONTEXTCHANGED).
    
  • OnDismiss

    ,在您关闭方法提示窗口时,您会电话到 OnDismiss 方法。