我刚刚创建了一个新的VCL应用程序,并按以下顺序在表单上放置了以下控件:
控件按照我将它们添加到表单的顺序显示在TForm类中。当我将TForm类与DFM进行比较时,控件的顺序不同。
类别:
type
TForm5 = class(TForm)
MainMenu1: TMainMenu;
ToolBar1: TToolBar;
StatusBar1: TStatusBar;
private
{ Private declarations }
public
{ Public declarations }
end;
DFM(为了说明目的而移除了属性)
object Form5: TForm5
object ToolBar1: TToolBar
end
object StatusBar1: TStatusBar
end
object MainMenu1: TMainMenu
end
end
我想在类定义中对控件进行排序,以便它们与DFM文件匹配。 IDE中是否有选项可以执行此操作?
答案 0 :(得分:1)
正如对问题的评论中所指出的那样,标准IDE中没有这样的机制,任何此类机制(或结果)的效用都是可疑的,并且是最好的。
但是如果你绝对必须在这个领域有某种秩序/组织,并且不希望手动安排这些声明,那么我会根据需要定期使用GExperts“排序源代码行”编辑器工具来维护你想要的订单/分组。
选择您要排序的声明,并根据偏好进行升序或降序排序。
只要您一直命名所有组件,只要您按照组件命名约定中包含的排序顺序强制执行,就可以为您提供所需的任何“分组”。例如所有菜单项开始“ mi ... ”,所有文件菜单项,然后以“ miFile ... ”等开始。
但是,您可以根据自己的名字来确定最终的订单。例如,一组假设的文件菜单项最终将显示为:
miFileExit
miFileNew
miFileOpen
miFilePrint
miFileSave
miFileSeparator1
miFileSeparator2
几乎可以肯定不它们在菜单中出现的顺序。但是为什么这很重要并不清楚,作为一种促进声明位置的方法,alpha排序最有可能对那些没有持久表单组件声明顺序副本的人有用。