代码完成不列出消息处理程序

2023-12-27

When working on an old project in Delphi XE2, the code-completion window that pops up after CTRL-SPACE does not list message handlers like Delphi 7 did:

在上面的屏幕截图中,WM***例程缺失。这是为什么?


use 子句中的单元名称不是完全限定的。包括每个单元的命名空间,然后找到方法声明的必要类型,让代码完成弹出窗口返回所有成员。

例如:

  • procedure WMActivate(var Message: TWMActivate);时不会显示Winapi.Messages.TWMActivate没有找到,
  • procedure CMActivate(var Message: TCMActivate);时不会显示Vcl.Controls.TCMActivate没有找到。

解决方案:

uses
  Winapi.Windows, Winapi.Messages, System.Classes, Vcl.Controls, Vcl.Forms,
  Vcl.Graphics;

具体为什么会这样,我也不敢解释。特别是因为所有其他方法(不是消息处理程序)都会显示,无论相关单元是否完全合格。但这并不重要;当在 Delphi 2009 或更高版本中工作时,您应该习惯使用完全限定的单元名称。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

代码完成不列出消息处理程序 的相关文章

随机推荐

  • 将对象列表从 SignalR 中心发送到 JavaScript 方法

    我正在用 ASP 和 SignalR 编写多人游戏 大富翁 我已经停在包含游戏列表的表格的页面上 我不知道我这样做是否正确 所以 这就是我到目前为止所做的事情 我需要帮助才能继续 我创建了带有空表的 GamesList WebForm 页面
  • Rails 4 - Heroku Sqlite3 错误

    我在 Heruku 方面遇到了一些麻烦 由于以下错误 我无法推送 Gem files will remain installed in tmp build 2jdec30lsc3bu vendor bundle ruby 2 0 0 gem
  • SpriteKit SKScene 缺少触摸已结束

    我注意到 touchesEnded 并不总是在多点触摸时传递到 SKScene 根据移开手指等的速度 我会永久错过一些已结束的触摸 TouchsCancelled 已实现 我添加了一个自定义 UIView 并将其放在屏幕的左侧 没有问题 我
  • google firebase函数教程意外令牌=>

    我已经进行了一些谷歌搜索 但没有找到我的问题的答案 我正在关注 google firebase 函数的教程here https firebase google com docs functions get started authuser
  • 将绘图图保存到 html 文件后,您可以稍后将其重新读取为图吗?

    我想编辑数据 可能会向图表添加更多痕迹 我找到了一种将 html 文件显示为图表的方法 但不对其进行编辑 from IPython display import HTML HTML filename file name html 通常情况下
  • 为什么 getPasswordAuthentication() 没有被调用?

    import java io BufferedReader import java io IOException import java io InputStream import java io InputStreamReader imp
  • Strongloop:用[and]和[or]条件一起过滤数据

    我正在尝试使用 and 和 or 条件过滤数据 我想得到这个 mySql 查询 SELECT FROM data WHERE property1 11 OR property1 13 AND property2 6 我写的其余 api 是这
  • 更改 Jupyter Notebook 中的主题?

    我喜欢黑暗主题 但是 Jupyter笔记本的默认主题是浅色 我找不到更改主题 背景颜色的选项 这是怎么做到的 使用以下命令很容易做到这一点jupyter themes凯尔 杜诺万 Kyle Dunovan 的包装 您也许可以使用以下命令安装
  • 从 SCM 运行声明性 JenkinsFile 时出现“java.lang.NoSuchMethodError:找不到此类 DSL 方法‘管道’”

    我们有一个以声明式风格编写的非常简单的 Jenkinsfile pipeline agent any stages stage Test steps echo hello 当我们直接从 Jenkins v 2 107 0 中的管道作业中运行
  • Perl:正确传递数组供线程处理

    我正在学习如何在 Perl 中进行线程处理 我正在查看示例代码here https stackoverflow com questions 11596493 how to limit the max number of parallel t
  • 带 RecyclerView 的 AlertDialog

    我想创建自定义对话框 其中包含我的应用程序中的某些项目的列表 这是我的适配器代码 上下文上下文 ArrayList 状态列表 public MaritalStatusAdapter Context context ArrayList
  • NUnit 示例代码?

    我想学习如何使用 NUnit 我通过阅读然后使用真实代码来学习最好的方法 在哪里可以找到以示例方式使用 NUnit 的小型 简单的 C 项目 上面有很多很好的例子NUnit 的开发者维基 http nunit com devwiki cgi
  • 使用 scala、junit 时 Powermock 无法模拟静态方法

    我之前曾将 Powermock 与 java 和 junit 一起使用 我已经成功地能够模拟静态方法 如下例所示 PrepareForTest TimeHelper class MainApp class RunWith PowerMock
  • C# 中 get、set 属性的真正目的是什么? [复制]

    这个问题在这里已经有答案了 可能的重复 属性与方法 https stackoverflow com questions 601621 properties vs methods C 公共字段与自动属性 https stackoverflow
  • 为多个域设置 httpS

    我需要为多个域名 xxxx com xxxx net 设置 https 使用单个通用证书 我们购买证书的 CA 要求创建证书签名请求 CSR 但是当我使用 openssl 生成它时 它只要求一个名称 如何为多个域制定一个 CSR 避免使用多
  • Angular2 中的条件验证

    我想对访客和客户注册表使用相同的模板 但验证可能会有所不同 如下所示 让我们假设它是宾客登记表 需要名字
  • Rails 3.0 设计通过回答问题重置密码

    我正在使用带有 Rails 3 的设备 在用户模型中 我为问题和该问题的答案创建了字段 我想知道如何按以下逻辑实现忘记密码 在忘记密码页面上用户输入用户名 在下一步中 应用程序应显示存储在数据库中的问题 用户回答问题 如果答案与数据库中存储
  • 随机访问随机排列[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我想生成一个非常大的伪随机排列 p
  • SQL 查询查找特定 id 具有不同值但应相同的产品

    我需要一个 SQL 查询 它将获取相同 id 具有不同值的产品列表 产品属于表 A 和 Id 值属于表 B 并且两个表都可以通过列名 prod id 连接 我想要的输出 项目清单 product abc 因此 在输出中 我只需要产品 abc
  • 代码完成不列出消息处理程序

    When working on an old project in Delphi XE2 the code completion window that pops up after CTRL SPACE does not list mess