【问题标题】:How can I change the order of ToolButtons in a inheritable form?如何以可继承的形式更改 ToolButtons 的顺序?
【发布时间】:2018-01-11 12:29:03
【问题描述】:

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

有没有办法在设计时使用顺序集?

【问题讨论】:

  • 我手头没有delphi,但是您是否尝试过在设计时移动每个工具按钮,也包括父表单中的工具按钮?也许这可能会迫使设计师在 dfm 文件中写入每个位置
  • 我试图移动每个按钮。无论我在子表单中设置什么位置,父表单中的内容都会在子表单中的内容之前显示。

标签: forms delphi toolbar visual-inheritance


【解决方案1】:

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

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-13
    • 2018-03-01
    • 2016-08-08
    • 1970-01-01
    • 1970-01-01
    • 2017-01-15
    相关资源
    最近更新 更多