Warm tip: This article is reproduced from serverfault.com, please click

delphi-如果无法单击控件,如何“恢复继承”?

(delphi - How do I 'revert to inherited' if control is not clickable?)

发布于 2020-11-28 14:44:38

假定以下情况:

  • FrmBase有一个TPanel名为PnlClient,alignalClient
  • FrmDescendant 继承自 FrmBase
  • FrmDescendant我改变PnlClient财产
  • 在其中FrmDescendant放置另一个控件(例如另一个TPanel命名的控件PnlDescendantPnlClient并将其对齐alClient
    PnlDescendant现在完全覆盖PnlClient
  • 我在上放置了许多其他组件,这些组件PnlDescendant不一定对齐,因此我害怕更改PnlDescendant(例如,设置对齐alNone并调整大小)并失去位置

我该如何执行“还原为继承” PnlClient
主菜单或“结构视图”中控件的弹出菜单中没有任何内容。

当前正在使用Delphi 10.4.1 Sydney

Questioner
Jan Doggen
Viewed
11
Andreas Rejbrand 2020-11-28 23:05:15

对于像我这样的键盘用户来说,这很容易:

  1. PnlDescendant在窗体编辑器中单击以使其成为焦点和选定控件。

  2. Esc选择其父级PnlClient

  3. 键盘上菜单键以显示的上下文菜单PnlClient如果你有便宜的键盘却没有菜单键,请按Shift+ F10

  4. 单击“还原为继承”。(或者,更快:可能是按下菜单项的带下划线的字符I。)

  5. (但是请注意,这将PnlDescendant完全删除。可能你不希望这样做,但这就是它的工作原理。)