创建错误消息 Delphi 7

2024-03-01

好的,我目前是一名 11 年级的学生,正在学习 IT。我正在尝试完成一项实际作业,但遇到了一些问题,我使用的教科书没有告诉我如何在用户未在 RichEdit 中输入数据时创建错误消息。谁能建议我如何做到这一点?感谢您抽出时间提供帮助。


这是引发通用异常的方式(使用SysUtils.Exception class):

raise Exception.Create('Error Message');

未处理的异常会导致执行路径转入 Delphi RTL 内部的默认异常处理程序,然后该处理程序将显示Exception.Message给用户。

您甚至可以像这样处理自己的异常:

try
  ...
  raise Exception.Create('Error Message');
  ...
except
  on E: Exception do
  begin
    ShowMessage(E.Message);
  end;
end;

但你实际上不会这样做。您引发异常,以便调用您的方法的代码可以处理错误。

如果您想在其他地方(调用者中)处理错误,请引发异常。

要简单地显示系统标准错误对话框,您可以使用MessageDlg:

MessageDlg('Error Message', mtError, [mbOK], 0);

在这种情况下,窗口的标题只是“错误”。如果必须设置标题,请使用CreateMessageDialog:

with CreateMessageDialog('Error Message', mtError, [mbOK], mbOK) do
begin
  try
    Caption := 'Error Caption';
    ShowModal;
  finally
    Release;
  end;
end;

The Exception班级在System.SysUtils. MessageDlg and CreateMessageDialog are in Vcl.Dialogs.

或者使用TApplication.MessageBox() method:

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

创建错误消息 Delphi 7 的相关文章

  • 检测反射 DLL 注入

    在过去的几年中 恶意软件 以及一些渗透测试工具 如 Metasploit 的 meterpreter 负载 已经开始使用反射 DLL 注入 PDF http www harmonysecurity com files HS P005 Ref
  • Apache Flink - “keyBy”中的异常处理

    由于代码错误或缺乏验证 进入 Flink 作业的数据可能会触发异常 我的目标是提供一致的异常处理方式 我们的团队可以在 Flink 作业中使用这种方式 而不会导致生产中出现任何停机 重启策略似乎不适用于此处 因为 简单的重启无法解决问题 我
  • 如何追踪“地址 00000000”的访问违规

    我知道如何创建 map 文件来在错误消息包含实际地址时跟踪访问冲突错误 但是如果错误消息说怎么办 Access violation at address 00000000 Read of address 00000000 我从哪里开始寻找这
  • 当我尝试从列表中删除元素时,如何忽略 ValueError?

    如果我打电话 如何忽略 不在列表中 错误消息a remove x when x不在列表中a 这是我的情况 gt gt gt a range 10 gt gt gt a 0 1 2 3 4 5 6 7 8 9 gt gt gt a remov
  • 如何将数据库查询的行转换为 XML 文件?

    我正在开发一个 Delphi 应用程序 该应用程序需要从一段工作中获取行并将其转换为单个 XML 文件 以便上传到第三方 Web 服务 有没有可用的组件或库可以做到这一点 如果不是 那么构建 DB2XML 转换器的最佳代码方法是什么 我注意
  • 当 Delphi 处于覆盖模式时,如何更改它的光标形状?

    当使用 Delphi 的任何版本时 我有时会碰巧按下插入键并打开覆盖模式 这通常是一个很大的麻烦 并且您进入覆盖模式的唯一指示是编辑器底部的小文本 当使用其他程序 首先想到的是 Notepad 时 当您处于插入模式时 文本光标是 当您处于覆
  • FreePascal x64 上系统单元函数的汇编调用

    我有一些 Delphi 汇编代码 可以在 Win32 Win64 和 OSX 32 上编译并正常工作 XE2 但是 由于我需要它在 Linux 上工作 所以我一直在考虑编译它的 FPC 版本 到目前为止 Win32 64 Linux32 6
  • 我在 android studio 中使用 kotlin 时出现错误

    为什么会出现这个错误 09 12 16 36 31 502 1886 1886 com getloction nourmedhat smartgate getlocation E AndroidRuntime 致命异常 main 进程 co
  • warnings() 在函数内不起作用?如何解决这个问题?

    op lt options warn 0 although doesn t work for any value of warn assign last warning NULL envir baseenv thisDoesntWork l
  • 在Delphi 7中,为什么我可以给const赋值?

    我将一些 Delphi 代码从一个项目复制到另一个项目 发现它在新项目中无法编译 但在旧项目中可以编译 代码看起来像这样 procedure TForm1 CalculateGP const Price money 0 begin Pric
  • Delphi:写入后代类中私有祖先的字段

    我需要修复第三方组件 该组件的类具有私有变量 该变量由其后代主动使用 TThirdPartyComponentBase class private FSomeVar Integer public end TThirdPartyCompone
  • 如何在Delphi中显示Vista风格的气球提示?

    在输入验证时 我使用气球提示而不是消息框 我的问题是 在 Vista 上 它们具有带圆角的旧 XP 样式 而不是较新的矩形外观 我尝试使用 CreateWindowEx 创建它们并且tooltips class32或使用 SendMessa
  • 如何使 StringGrid 的列适合网格的宽度?

    我已经寻找解决方案很长时间了 但没有任何运气 有谁知道一个简单的方法来做到这一点 例如 我想拉伸网格的第二列以适应网格的宽度 Use the ColWidths财产 像这样 with StringGrid1 do ColWidths 1 C
  • 如何在iOS的Delphi程序中使用IPv6协议

    我尝试在我的移动程序中使用 IPv6 协议 我的服务器位于 NAT 后面的 LAN 内 在服务器上我使用IP端口3000 我已经组织了从路由器端口 45500 到服务器端口 3000 的虚拟服务器 端口转发 在服务器上 我运行 ipconf
  • 在 Delphi 或 C++ Builder 中使用 Chromium Edge WebView2 [重复]

    这个问题在这里已经有答案了 既然 Microsoft Chromium Edge 已经最终确定 是否可以在 Delphi 或 C Builder 中使用它 据我了解 它是基于WebView2成分 是否有一个组件 例如TWebView2或者E
  • 如何处理 AJAX 请求中的会话超时

    我相信你们都熟悉使用 AJAX 的投票系统 嗯 看那边 我有类似的东西 当你投票赞成或反对时 它使用 AJAX 从 votes php 请求新值 问题是我正在使用会话来获取用户 ID 因此一个人只能投票一次 如果他们在页面上坐了一个小时然后
  • 使用 NSError 检查错误的正确结构

    我正在编写各种例程 并尽力保持其整洁和重构 我正在创建的方法开始看起来与此代码类似 IBAction buttonPress id sender Create Document Shopping List with this documen
  • 如何使用 window.onerror 捕获所有 javascript 错误? (包括道场)

    这个问题是后续问题javascript 如何在弹出警报中显示脚本错误 https stackoverflow com questions 2604976 javascript how to display script errors in
  • 从其可执行文件的路径获取服务名称

    我有一个可执行文件的路径 它是一个正在运行的服务应用程序 例如 C Program Files x86 Someapp somesvc exe 我想停止并启动它 为此我想我需要获取服务的名称 如下所示 this https stackove
  • 消息 203,级别 16,状态 2,不是有效标识符

    我收到以下错误 消息 203 级别 16 状态 2 过程 getQuestion 第 18 行名称 select top 1 from tlb Question inner join tlb options on tlb options q

随机推荐

  • 在命名空间中前向声明类

    我很惊讶地发现我无法使用范围解析运算符从另一个范围转发声明一个类 即 class someScope someClass 相反 必须按如下方式使用完整声明 namespace class someClass 有人可以解释为什么会这样吗 更新
  • 是否可以(并且安全)使接受套接字成为非阻塞?

    我正在寻找一种方法来打断accept http pubs opengroup org onlinepubs 009695399 functions accept html调用阻塞套接字 使用信号不是一种选择 因为这意味着在库中 我不想弄乱用
  • 什么是“原子”数据类型?

    我遇到过ATOM输入Win32api http msdn microsoft com en us library windows desktop ms649053 28v vs 85 29 aspx并且在 Acrobat API 中还有AS
  • 非法字符串偏移“选项 1”[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 这是我的初
  • Windows / Java 中的反向换行

    有没有办法使用 Java 将几行写入 Windows 中的系统控制台 然后删除或修改它们 我可以使用以下命令多次在同一行上写入 r回车符 CYGWIN 命令less 文本查看器 管理它 尽管它不是Java 所以我怀疑这是可能的 我试过了 u
  • .NET 中预抖动程序集的优点和缺点是什么?

    NET 中预抖动程序集的优点和缺点是什么 我听说预抖动可以提高性能 什么时候应该预抖动 什么时候不应该预抖动 预编译 或预编译将提高性能 启动时 因为您将跳过该步骤 每次应用程序及其库加载时 NET JIT 的原因是 它可以在许多平台和架构
  • 有没有办法禁用 ExtJS 4 中的树视图节点

    我的目的是禁用西部地区树视图的某些节点 下面的代码片段显示了这一点 root expanded true id treeview1 children text Make Copy leaf true id HS1 disabled true
  • 使用构建器模式时,我应该按值还是可变引用获取“self”?

    到目前为止 我在官方 Rust 代码和其他包中看到了两种构建器模式 impl DataBuilder pub fn new gt DataBuilder pub fn arg1 mut self arg1 Arg1Type gt mut B
  • Sphinx automodule:如何引用同一模块中的类?

    我正在尝试使用狮身人面像autodoc http www sphinx doc org en master usage extensions autodoc html扩展 特别是automodule指令自动为我正在开发的 django 应用
  • Vuex:跳过操作并直接从组件提交突变

    在 vue js 应用程序中 使用 vuex 作为状态管理存储 我只需更改 vuex 中属性的值 为此 我可以采用两种方法 派遣action方法 这将进一步提交mutation 最终会改变状态 第二种方法是提交mutation直接来自组件
  • 推荐工作流应用程序的设计模式[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我正在开发一个应用程序 用户可以在其中执行任务 工作流程 每个任务都由要执行的操作队列组成 我希望能够在工作流程启动后获得用户输入 Exampl
  • 使用jsoup登录网站

    On 这个网站 http kortladdning3 chalmerskonferens se 你可以输入你的学生卡号 然后就会显示该卡上还剩多少钱 我想使用JSOUP获取信息 这是我当前的代码 但它不起作用 String url http
  • ASP.NET MVC 2 中的 httppost、httpput 等属性如何工作?

    在 ASP NET MVC 2 中 引入了一些新的操作筛选器属性 作为 ASP NET MVC 1 中属性的 简写 例如 应用HttpPostAttribute与申请做同样的事情 AcceptVerbs HttpVerbs Post 到一个
  • 如何使用正则表达式按空格分割字符串并忽略前导和尾随空格到单词数组中?

    我通常在 JavaScript 中使用以下代码来按空格分割字符串 The quick brown fox jumps over the lazy dog split s The quick brown fox jumps over the
  • AWS Rekognition 检测标签无效图像编码错误

    我正在使用 boto3 调用识别的检测标签方法 该方法将图像 以 Base64 编码字节的形式 作为输入 但是我不断收到 InvalidImageFormatException 并且我不明白为什么 我已阅读文档并查看了一些示例 但我真的不明
  • Intellij 打开文件资源(忽略目标文件夹)

    当我使用 command shift o 命令时 我会收到以下弹出窗口 问题是在 Java EE 应用程序中将会出现目标中的重复项文件夹 有时我开始编辑错误的文件 我不想列出它们 请参阅图片 有没有办法排除文件夹 另外 还有一点 有时 in
  • 如何使用 Python 的 timeit 对代码段进行计时以测试性能?

    我有一个 python 脚本 它可以正常工作 但我需要编写执行时间 我已经用谷歌搜索过我应该使用timeit https docs python org 2 library timeit html但我似乎无法让它发挥作用 我的 Python
  • `a

    我很好奇我是否可以使用这个a
  • Java中修饰符关键字顺序

    每次我用Java编写一个方法时 关键字的数量都多于public void 每次我都会用另一种方式写 有时 static public void 有时 public static void etc 这些关键字的最佳顺序 最佳实践 是什么 ab
  • 创建错误消息 Delphi 7

    好的 我目前是一名 11 年级的学生 正在学习 IT 我正在尝试完成一项实际作业 但遇到了一些问题 我使用的教科书没有告诉我如何在用户未在 RichEdit 中输入数据时创建错误消息 谁能建议我如何做到这一点 感谢您抽出时间提供帮助 这是引