如何使我的表单始终位于主表单之上?

2024-03-02

如何使我的非模态表单始终位于主表单之上?

我努力了:

procedure TForm3.CreateParams(var Params: TCreateParams);
begin
  inherited CreateParams(Params);
  Params.WndParent := Application.MainForm.Handle;
end;

这似乎工作正常。这是正确的方法吗?


这就是Win32的概念窗口所有权 http://msdn.microsoft.com/en-us/library/windows/desktop/ms632599.aspx#owned_windows。拥有的窗口始终显示在其所有者的顶部。所有者是在对 CreateWindow 的调用中指定的,并且不能修改。

在 VCL 中,您可以通过在 CreateParams 中设置 WndParent 来指定所有者,然后框架将其传递给 CreateWindow。 VCL 会为您完成此操作,但在旧版本中,所有者处理有些不稳定。现代版本更好,并允许通过 PopupMode 和 PopupParent 属性进行更多控制。

因此,您的代码将具有您想要的效果。

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

如何使我的表单始终位于主表单之上? 的相关文章

  • 无法通过Delphi替换Word应用程序中的页脚文本

    我正在尝试替换页脚中的文本 我使用以下代码 通过它我可以替换正常内容 正文 但不能替换页脚 页眉中的内容 myWinWordApp CreateOLEObject Word Application myWinWordApp visible
  • 创建FileStream时如何处理异常

    我有一个这样的函数 我想重构它 function Myfunction sUrl sFile String Boolean var GetData TFileStream begin Result False if the line bel
  • vcl组合框并不总是显示它有焦点

    当我从另一个控件切换到组合框时 它会显示文本周围带有虚线的框 但是当我以编程方式将控件设置为活动状态时 它不会显示相同的焦点指示器 这种行为有解决方法吗 我有德尔福XE6 MCVE unit Unit27 interface uses Wi
  • 如何添加资源并使用它们

    在我的应用程序中 我想添加 2 个图像作为资源 我想使用这些图像 当我在应用程序中单击 是 按钮时 第一张图像将被设置为壁纸 当我在应用程序中单击 否 按钮时 第二张图像将被设置为桌面壁纸 提前致谢 regards 最简单的方法是创建一个文
  • 错误:使用 Microsoft WebService.dll 通过 Delphi7 规范化 XML

    我正在使用 Delphi7 修改旧项目以添加使用证书和签名 经过一番搜索后我发现XML 规范化函数 https learn microsoft com en us previous versions dd815358 v vs 85 但我无
  • 如何从具有管理员权限的应用程序接收键盘输入到非管理员应用程序?

    我编写了一个应用程序 该应用程序具有覆盖类型的窗口 可以通过热键显示和隐藏该窗口 而另一个应用程序具有焦点 所述另一个应用程序是一个以管理员权限运行的 DirectX 游戏 我已经尝试了 3 种可能的解决方案 以便在其他应用程序中按下我的热
  • 使用普通画布/文本输出更新LayeredWindow

    有没有一种方法可以使用画布在表单上绘图 然后使用 updatelayeredwindow 这样表单就不可见 但文本可见 就像只显示文本的半透明表单一样 如果没有 那么有没有办法只用画布 opengl directx 制作某种半透明形式 我想
  • 我可以在“Delphi 2007 for Win32”中使用.NET DLL吗?

    是否可以在 Delphi 2007 for Win32 中使用 NET DLL 我尝试以与 ActiveX 组件相同的方式导入 DLL 但它似乎不起作用 组件菜单 gt 导入组件 gt 导入 NET 程序集 是否可能 如果可以 步骤是什么
  • 如何在Delphi XE中通过名称获取类类型引用?

    我实际上正在尝试使用 Rtti 来实现通用方法调用程序 它应该像这样工作 我将提供类名 方法名和参数 调用者将通过调用此类的指定方法来完成其工作 因此 我需要类引用才能获取其 Rtti 信息并寻找我想要调用的方法 有没有办法在不实现我想要使
  • Indy 的 TIdHTTPProxyServer:如何过滤请求?

    我正在使用 TIdHTTPProxyServer 来实现一个简单的 HTTP 代理 但我现在想阻止一些与某些 URL 匹配的连接 哪个事件和 或组件最适合实现这一目标 Indy 文档并没有太多解释 Thanks 作为基本过滤器 您可以使用
  • 如何在 Delphi REST 中发布内容类型为“multipart/form-data”的数据?

    我正在尝试使用 REST API 发送请求multipart form data作为内容类型 我总是收到 HTTP 1 1 500 Internal Error 作为响应 我尝试向需要的方法发送请求application x www for
  • 开源 Delphi 包可使用哪些项目选项?

    我写了一些 Delphi 代码 想在 GitHub 上分享 所有代码都根据需要包含在运行时和设计时包中 每个项目有许多项目选项需要设置 输出目录 搜索路径 编译选项等 我设法找到了一些适合我的情况的默认选项 但阅读此处的其他问答很明显有多个
  • 有人用CrossKylix进行真正的跨平台开发吗?

    新版本克罗斯凯利克斯 http crosskylix untergrund net 两周前更新过 即使 Kylix 已经停产很久了 但它似乎仍然被一些 Delphi 开发人员使用 有人在 Windows 和 Linux 的跨平台开发中成功使
  • 以编程方式重新启动 Delphi 应用程序

    应该不可能运行我的应用程序的多个实例 因此项目源码包含 CreateMutex nil False PChar ID if GetLastError ERROR ALREADY EXISTS then Halt 现在我想以编程方式重新启动我
  • 当responseText包含有效的Xml时,IXMLHttpRequest.responseXml为空,没有解析错误

    我正在从中获取一些 XML政府网站 http www bankofcanada ca stats assets rates rss noon en all xml http www bankofcanada ca stats assets
  • 石和磅的格式正确吗?

    我有一个图表 用于显示重量 以英石和磅 lbs 为单位 该图表由记录中的数据填充 对于权重 数据类型为 Double 记录数据是在运行时编辑的 我需要知道一种正确格式化输入数据的方法 为了更好地理解 首先看一下这些示例值 它们表示为石和磅
  • TObjectList.Contains 导致 Delphi 2009 中的访问冲突

    在 Delphi 2009 中 到目前为止 我在泛型方面没有遇到大问题 使用 Generics Collections 列表 没有特殊的泛型功能 现在我发现这段代码会在访问的行中导致AVMyList Contains 如果我声明 TMyLi
  • Delphi AES 库 (Rijndael) 使用 KAT Vectors 进行测试

    对于这两个库 Delphi 加密概要 v 5 2 http code google com p delphidec TurboPower 密码箱 v 2 07 http lockbox seanbdurkin id au tiki list
  • 如何从 VCL.Graphics 获取所有已注册的文件格式...但 64 位

    在我的 32 位应用程序中 我使用FindRegisteredPictureFileFormats 单元由 Cosmin Prund 提供 https stackoverflow com a 14677532 505088 gt 如何从图形
  • Delphi IDE导致CPU过热

    我正在使用 Delphi 7 但我已经尝试过 Delphi 2005 2010 版本 在所有这些新版本中 当 Delphi IDE 在屏幕上可见时 我的 CPU 利用率为 50 一个核心为 100 另一个核心为 宽松 当 IDE 最小化时

随机推荐

  • Emacs 使用 Git-Rebase 将缓冲区恢复到奇怪的先前状态

    我在 OS X 上使用 Emacs 23 3 1 我从终端发出 git 命令 而不使用任何 Emacs 的 VC 功能 我将 Emacs 设置为在修改文件时刷新 这是通过我的 emacs 文件中的这些行启用的 custom set vari
  • 使用 javascript 处理文本区域上的 Enter 键

    我在页面上有 5 个文本区域 我希望在第一个文本区域上按 Enter 键时发生特定事件 在其他文本区域上按 Enter 键时发生不同的事件 您能否建议如何实现这一目标
  • 替代

    我正在尝试修复为我编写的旧脚本 我需要它运行而无需 我想从脚本内部运行该函数 而无需像该命令那样的内联代码 抱歉 我不是 JS 专家 但是我该怎么做呢 或者 如果您使用的是 jQuery function Your code here
  • BITS 多域传输文件

    如何在不同域的服务器之间传输文件 i e PS C Users Desktop gt Import Module bitstransfer PS C Users Desktop gt c get credential PS C Users
  • 在R中进行线性回归时,如何有条件地删除因子的NA观察?

    我正在尝试在 R 中建立一个简单的线性回归模型 模型中有三个因子变量 模型是 lm Exercise Econ Job Position 其中 锻炼 是数字因变量 即锻炼的时间量 经济 工作 职位 都是因子变量 经济 是指一个人是否有工作
  • 需要 T SQL 合并示例来帮助理解

    下列 MERGE dbo commissions history AS target USING SELECT amount requestID AS source amount request ON target request sour
  • 如何对齐SpriteBatch.DrawString绘制的文本?

    有没有一种简单的方法可以将文本向右和居中对齐 而不是默认的左对齐 我使用这段代码 Flags public enum Alignment Center 0 Left 1 Right 2 Top 4 Bottom 8 public void
  • C# double 未按预期工作[重复]

    这个问题在这里已经有答案了 我知道双精度数是小数 在下面的程序中 输出是 1 尽管我认为它会重复 1 05 static void Main string args double d 19 18 Console WriteLine d Co
  • 从结构数组中选择 Spark DataFrames 中的特定列

    我有一个 Spark 数据框df具有以下架构 root k integer nullable false v array nullable true element struct containsNull true a integer nu
  • 使用 VS Code 远程 Docker 容器网络挂起 5 秒

    我有 3 个服务 共享同一网络的 webapp app 数据库 db 和 redis rd 随机地 两个服务 数据库和 Redis 的连接都会挂起大约 5 秒 不仅当我运行连接到数据库的网络服务器时 甚至当我浏览网页上的链接时也是如此 有时
  • 如何在 git 中列出版本控制的文件?

    我想列出 git 存储库根目录中的版本控制文件 要在集市中执行相同的操作 您可以运行 bzr ls versioned non recursive 我如何在 git 中执行此操作 如果您准确描述要显示的列表 将会更有帮助 从 bzr 文档猜
  • SQL Server 查询处理器耗尽内部资源

    Query update mytable set mycol null where id in 583048 583049 50000 more Message 查询处理器耗尽了内部资源并且无法 生成查询计划 这是一个罕见的事件 仅预计 极
  • Kinesis lambda DynamoDB

    我正在学习 AWS 服务的一个用例 在浏览完文档后 我想出了一个简单的流程 我想使用 Streams API 和 KPL 将数据提取到 Kinesis 流中 我使用示例 putRecord 方法将数据提取到流中 我正在将此 JSON 摄取到
  • Windows Phone 8 cordova视口高度问题

    我们用 cordova 开发了一个 Windows Phone 8 应用程序 可以正常使用 但是在 windows Phone 8 之后8 0 10328 78释放页脚即可清理 我之前检查过代码 我得到的视口高度为 768 现在为 800
  • 自定义 Android 中的警报对话框

    我想在警报对话框的浅色背景上显示深色文本 但我不知道该怎么做 请帮我 Thanks 您可以在 XML 视图中创建自己的布局 就像创建活动一样
  • 具有相同标签的列的平均值

    我有两个向量 data vector A 1 2 2 1 2 6 2 3 2 3 3 5 label vector B 1 2 1 2 3 NaN 我想取具有相同标签的所有列的平均值 并将它们输出为按标签号排序的矩阵 忽略 NaN 所以 在
  • 从耶拿的文件中删除无效的 N-Quads

    我有一个包含 N Quads 的文件 使用 schema org 词汇表 我想使用 Apache Jena 的命令行工具将其加载到 TDB RDF 存储中 我正在使用的命令是 tdbloader loc
  • iOS 验证得到 Main_iPhone~iphone.storyboardc 未找到

    我正在尝试分发我的 iOS 应用程序 在 xCode 验证期间收到以下错误消息 未找到故事板文件 Main iPhone iphone storyboardc 请确保指定的文件包含在捆绑包中 并在文件名后附加任何所需的设备修饰符 需要一些建
  • 计算数据框中主题标签的频率

    我正在尝试计算数据框 文本 列中主题标签词的频率 index text 1 ello ello ello ello hello ello 2 red green blue black colours 3 Season greetings h
  • 如何使我的表单始终位于主表单之上?

    如何使我的非模态表单始终位于主表单之上 我努力了 procedure TForm3 CreateParams var Params TCreateParams begin inherited CreateParams Params Para