Delphi、MDI 与多文档界面的选​​项卡

2023-11-24

我正在开发一个多文档应用程序。目前它使用 MDI,这对我(作为开发人员)以及我相信的用户来说都非常方便。然而有一个“反对”——我还没有找到解决办法quickly load many到目前为止,子窗口(每次创建窗口并最大化以填充父窗口区域时,都会有一个调整大小的“动画”,这需要花费大量时间),因此我正在考虑切换回选项卡式界面(这需要更多工作时,我需要将表单“嵌入”到页面中,因为有许多“种类”可用的表单,一些用于编辑文本文档,一些用于其他对象)...

那么,您有何看法?我应该使用 MDI 还是选项卡式界面?


为了避免新 MDI 子窗口的调整大小动画(从而延迟),请在创建子窗口之前向父 TForm 的 ClientHandle 属性发送 WM_SETREDRAW 消息,然后在完成后再次发送该消息,即:

Self.Perform(WM_SETREDRAW, False, 0);
... create child windows as needed ...
Self.Perform(WM_SETREDRAW, True, 0);
Windows.InvalidateRect(Self.ClientHandle, nil, True);
Windows.UpdateWindow(Self.ClientHandle);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Delphi、MDI 与多文档界面的选​​项卡 的相关文章

随机推荐

  • 带有 Angularjs 的 jQuery ui 日期选择器

    我想将 jQuery UI 日期选择器与 AngularJS 一起使用 我有一个示例 但我的代码不起作用 Sample http www abequar net jquery ui datepicker with angularjs My
  • 将目录添加到现有 .zip 文件

    首先 我想说 我已经尝试寻找解决方案 但我还没有找到不需要解压缩 添加文件夹然后再次压缩的解决方案 我没有使用任何第三方库 如果可能的话 我想使用 system io compression 来执行此操作 如果不可能 我将使用 dotnet
  • KeyDown 事件不适用于 PrintScreen 键

    我正在使用 C windows 应用程序 我正在检查用户按下键盘的哪个键 我已经检查了所有键 但在 printScreen 的情况下它不起作用 private void comboBox1 KeyDown object sender Key
  • 为什么要将 Java 接口方法声明为抽象方法?

    今天我使用了 Eclipse 的 拉接口 重构功能来创建基于现有类的接口 该对话框提供了将新接口的所有新方法创建为 抽象 方法的功能 这样做有什么好处呢 我认为允许将接口方法声明为抽象这一事实是该语言的一个多余且无害的功能 并未受到特别鼓励
  • UINavigationItem提示问题

    我在 UINavigationItem 上遇到提示问题 但无法解决 我有一个主视图控制器和一个详细视图控制器 当我从主控推送到详细信息时 详细信息视图控制器上会显示提示 但是 当我弹回到主视图控制器时 视图不会调整大小 并且窗口会显示出来
  • 如何更改 Sql Server 2005 中 UDT 的基本类型?

    我的类型为 varchar 50 类型的 x 如何将其更改为 varchar 100 看来我不能啊 你不能 你能做的是 使用 OBJECT DEFINITION 编写包含该类型的所有对象的脚本 放下它们 重新创建具有新长度的类型 重新创建对
  • 在 v21 中设置 AppCompatButton 的样式,使其没有阴影且角半径为零

    我在 XML 布局中定义了一个 AppCompatButton 并为其设置了一个主题 如下所示 android theme style CustomAccentOverlay 我已经设置 android stateListAnimator
  • 为什么“新”运算符使用 -= 来分离事件处理程序?

    为什么我必须使用以下内容来分离事件 object myEvent new MyEvent EventHandler 我有些恼怒new操作员正在工作 有人可以解释一下吗 Update 我已经知道我不必使用 new 运算符来分离事件 但它仍然是
  • 用于自然语言处理的 Java 或 Python [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 我想知道哪种编程语言更适合自然语言处理 Java or Python 我发现了很多有关它的问题和答案 但我仍然迷失于选择使用哪一个 我想知道 Java 使用哪个 NLP 库 因为有很多库
  • 如何将 .net 错误消息语言更改为英语

    我使用的是VS2012 net 4 5和Win7专业版 Win7 是土耳其语 现在我收到土耳其语的错误消息 在Win7专业版中无法安装 卸载语言包 是否可以在不重新安装 VS 或 net pack 的情况下更改错误消息语言 这对我有用 开始
  • 通过连接键来展平地图

    给定一个仅包含关键字键的嵌套映射 例如 foo bar 1 baz 2 3 qux quux 4 corge 5 我该如何实施flatten map以便 flatten map foo bar 1 baz 2 3 qux quux 4 co
  • 如何在java中格式化持续时间? (例如格式 H:MM:SS)

    我想使用 H MM SS 等模式来格式化持续时间 以秒为单位 java 中当前的实用程序旨在格式化时间而不是持续时间 如果您不想拖入库 则可以使用格式化程序或相关快捷方式自行完成 例如 给定整数秒数 s String format d 02
  • sizeof 运算符在预处理器 #if 指令中起作用吗?

    我们可以使用sizeof运算符在 if宏 如果是 怎么办 如果没有 为什么 是否sizeof预处理器中的操作员工作 if指令 No the sizeof 运算符在 C 预处理器条件指令中不起作用 例如 if and elif 原因是 C 预
  • 模拟 Guid.NewGuid()

    假设我有以下实体 public class User public int Id get set public string Username get set public Guid UserGuid get set public Guid
  • Laravel 5,查看::分享

    我正在尝试做一个view share current user Auth User 但在 laravel 5 中我找不到在哪里执行此操作 在 L4 中你可以在 baseController 中执行此操作 但那个不再存在 格兰特 格伦 我正在
  • 隐藏表格滚动条

    经过一些研究 我发现我必须设置表格的 tbody display block overflow auto 启用 html 表格上的滚动 是否有可能隐藏每个现代浏览器 Chrome Safari Firefox 上的通用滚动条 我尝试了一些解
  • python请求http响应500(可以在浏览器中访问站点)

    我试图找出我在这里做错了什么 但我总是迷失方向 在 python 2 7 中 我运行以下代码 gt gt gt import requests gt gt gt req requests request GET https www zoma
  • Wix(VS 安装程序)- 缺少编辑器工具栏

    我的电脑上安装了 Wix 3 10 扩展至 Visual Studio 2015 我创建了一个基于 Wix 的安装项目 可以运行 在安装项目中 通常会有一些图标 安装工具 文件系统 注册表 UI 服装操作 但它们目前缺失 您可以在任何 Wi
  • 如何从 Firefox 插件执行 Windows 命令?

    如何使用 Firefox 插件执行 Windows 命令并显示其输出 例如 ping www stackoverfow com 我只是想通过执行打包在一起的二进制文件 或 可执行文件或运行 Windows 命令来探索更多 Firefox 插
  • Delphi、MDI 与多文档界面的选​​项卡

    我正在开发一个多文档应用程序 目前它使用 MDI 这对我 作为开发人员 以及我相信的用户来说都非常方便 然而有一个 反对 我还没有找到解决办法quickly load many到目前为止 子窗口 每次创建窗口并最大化以填充父窗口区域时 都会