0

我有带有一些控件的 TTabControl(Delphi XE7 Firemonkey 应用程序)。一切正常,制表符也是。现在我需要用 CheckBox 为一个面板着色。将 TRectangle 添加到此面板并将 CheckBox 的父级设置为此 TRectangle。界面看起来不错,但现在这个 CheckBox 不在 taborder 列表中,也没有收到 tabstop 命令。

如何解决这个问题?

如何重现:添加到表单 TRectangle,添加 3 个 CheckBox,使用 Structure 面板将一个 CheckBox3 移动到 TRectangle(将 TRectangle 设置为 CheckBox3 的父级)。运行此应用程序并尝试使用 Tab 键导航。您无法导航到 CheckBox3!

4

1 回答 1

2

您要么必须手动设置TabOrder为某个(合理的)值,因为它没有TShape发布并因此设置为-1(与绘制在.TabStop = FalseTCheckBoxTRectangleTRectangleTRectangle

另一种选择是根本不使用TRectangle并更改样式TPanel:右键单击设计器中的面板并选择Edit Custom Style...。然后选择为您新创建的样式(类似panel1style: TRectangle)并根据需要更改Fill属性。点击Apply and Close,你就完成了。通过使用样式,您可以为任何起初看起来很简单的控件创建复杂的外观。有关详细信息,请参阅http://docwiki.embarcadero.com/RADStudio/XE7/en/Customizing_FireMonkey_Applications_with_Styles和相关主题。

于 2014-11-19T08:17:42.973 回答