如何以可继承的形式更改ToolButtons的顺序?

时间:2018-01-11 12:29:04

标签: forms delphi toolbar visual-inheritance

我有两种形式。第一个有TToolBar和两个TToolButton。第二个继承第一个,还有三个TToolButton。 我在设计时更改了按钮的顺序,将第二个表单的三个按钮放在第一个表单的按钮之前。当应用程序运行时,第二个表单的按钮出现在第一个表单的按钮之后。

有没有办法在设计时使用订单?

1 个答案:

答案 0 :(得分:5)

不,没有办法覆盖从祖先表单继承的按钮的位置。 TToolBar上的按钮包含在简单TList中,并按创建顺序添加。它们按照它们出现在.dfm文件中的顺序创建,并且在继承表单时,始终首先创建并添加祖先的控件。

即使您在设计时重新排序按钮,保存表单,然后关闭并重新打开它,布局将只保留对后代表单工具栏按钮的排序更改,其中祖先按钮重新出现在再次开始。

这是TToolBar类本身的限制。您可以选择编写自定义工具栏或以编程方式管理按钮排列。