如何停靠在 Delphi 7 IDE 中打开的 windows?

How to dock opened windows in Delphi 7 IDE?

如何停靠在Delphi 7 IDE中打开windows? IDE 打开时仅显示顶部工具栏,屏幕的其余部分显示 IDE 后面的应用程序。我有两个监视器,windows 可以浮动在任何其他 window 之上,如果我打开两个实例,我不知道 window 属于哪个实例,这很烦人。我希望所有 windows 都包含在 IDE 中,并像 Visual Studio 那样停靠。我阅读了有关在拖动时按 ctrl 键的信息。无论是否检查 "Auto drag docking" 设置,我都看不出有什么区别。要么它不起作用,要么我不知道如何使用该功能。

有时当我最大化 window,而不是在 IDE 内部最大化时,它会在整个屏幕上最大化。

你不能。停靠表单设计器直到 D2005 才在 Delphi 中引入(当时,人们抱怨失去了早期版本中的浮动设计器,因此他们将其作为可选配置重新添加)。

在 D7 和更早版本中,IDE 的主要 window 主要由菜单和工具栏以及嵌入式组件面板组成。 Object Inspector 和 Form Designer 是完全独立的 windows,当时大多数其他可用 windows 也是如此。

为了获得 Visual Studio 风格的外观和对接 window 支持,您至少需要升级到 D2005。

在Delphi7中有3个主要的window组在IDE中:

  • IDE 工具和组件面板
  • 表单设计器
  • 其他一切(包括代码编辑器)

IDE 工具和组件 window(横跨屏幕顶部的主要 IDE window在默认配置中)。存在于极好的隔离中。没有任何东西可以对接它,它也不会与其他任何东西对接。

Form Designers 也是孤立存在的。这种安排有一定的逻辑性,因为表单在屏幕上的位置可以构成表单本身 "design" 的一部分。通过使 Form Design 表面成为自由浮动的 window,然后 window 的位置变成了直接和视觉操纵的设计 属性。

然而,好的应用程序设计并不依赖于如此绝对和精确的表单定位,尤其是在多显示器情况下会导致其自身出现问题,因此这种方法逐渐变得不那么重要,因此嵌入式表单设计方法更合适。

然而,具有讽刺意味的是,100% 嵌入式方法意味着您不能再在一台显示器上轻松地处理表单设计,同时让代码在一秒钟内可见(至少在不扩展整个整体嵌入式的情况下是这样 IDE 跨越两者)。

可停靠与整体

Delphi 7 想法不可停靠的想法与事实相去甚远。当人们这么说时,他们真正的意思是它有一个浮动表单设计器,而不是停靠 windows 的整体块。相反,它采用了更灵活的方法。

除了 IDE 工具 window 和表单设计器之外,所有剩余的 windows 都可以并且可以或多或少地以您希望的任何组合停靠,尽管有时由于 IDE 处理拖放和停靠界面的方式,精确实现您希望的布局很困难,这可能导致许多尝试按照您想要的方式获得东西的尝试受挫。

有时它可以帮助关闭自动停靠功能。

启用 Auto Dock(默认 iirc),当您将 window 拖动到可以停靠的位置附近时,您会看到一个焦点矩形显示window 如果在那个时候被释放(掉落),将会停靠在那里。如果您不想停靠 window 而只想移动它,您可以按住 ctrl 键来抑制停靠行为。

关闭 Auto Dock 后,此行为会逆转。也就是说,四处移动 windows 始终只是 - 移动 windows。如果您希望拖动和停靠 window,在拖动时按住 ctrl 键将为您提供预览矩形和放置时停靠的行为。

多种布局

但是,一旦您 windows 按照您希望的方式排列,您就可以保存该排列并为该布局添加标签。不同的布局不仅可以改变布局,还可以改变所涉及的windows。

"Code" 布局很常见,消息视图项目管理器 等都停靠在代码编辑器,因为它们对于处理代码很有用,而 对象检查器 与结构视图对接(例如),因为它们在使用表单设计师.

然后在一个单独的布局中,通常称为 "Debug",这些 windows 不太相关,将被隐藏(即不可见),取而代之的是 Stack Window局部变量观察变量输出Window,全部与代码编辑器对接。

下面是我如何配置 Delphi 7 IDE 布局,例如:

请注意,代码编辑器在此屏幕截图中显得局促,因为我缩小了内容以最小化图像大小以发布到 Whosebug。在我的 Mac 上,此布局很好地填充了我的 2560x1440 显示器,为代码等提供了大量 space。:)

多个实例

None 这有助于您同时在显示器上显示两个 IDE 实例的情况。在这种情况下,你能做的最好的事情就是设计一个停靠布局,让尽可能多的 IDE windows 保持在一起,以尽量减少混淆的机会。

但是,对于自由浮动的 Form Designers,这种方法显然行不通,在这种情况下,您所能做的就是密切关注哪个 [=当您聚焦特定的 Form Designer.

时,107=] 会激活