我可以直接在设计时使用自定义控件(例如TEdit后代),而无需设计时间包吗?我不想为该控件创建任何包,因为它只是一个,项目特定的等。
谢谢
答案 0 :(得分:2)
IDE基于软件包,所以不,你不能在没有软件包的情况下在设计时使用控件。
但是你有两个角落切割选项。它们并不完全是您所要求的,但可能看起来有点接近并在短时间内为您节省一些工作(但从长远来看会使维护变得更复杂)。
Delphi附带用户自定义控件包 - 专门用于包含不值得拥有自己包的用户单一控件。
PS。 Uwe Raabe纠正了我,因为自Delphi XE以来,该软件包已不再可用。因此,最接近的选项是IDE中的Component | Install Component...
向导,提供新包的延迟创建...换句话说,在使用Delphi 2010及更低版本时,只有选项#1。
如果您的TEdit
在设计时与VCL的TEdit没有太大差异,您可以在设计时使用库存TEdit
,并且只在运行时替换您的自定义后代。我对How to efficiently let a `ParentFont = False` child control to use same font name as parent?
TButton
示例)
醇>
答案 1 :(得分:2)
没有。 UI控件必须位于包中才能在设计时使用。但是,UI控件可以在运行时实例化,而不是在包中。