TDBNavigator与主题启用异常行为

时间:2009-12-23 04:24:52

标签: delphi delphi-2007

我最近在使用Delphi 2007中的第三方导航器组件时遇到了一些异常行为,即在将“Flat”属性设置为True时,按钮不会保持平坦状态,因为它们应该启用Themes但是在取消选中后启用了我的项目文件中的主题,并重新编译我的程序。这显然似乎并不正确,因为我尝试的另一个第三方导航器组件相应地执行了'Flat'设置为True和Themes Enabled。然后我尝试使用Delphi的TDBNavigator,再次遇到与第一个第三方Navigator组件相同的问题。在网上研究这个问题时,除了以前的Delphi版本之外,Delphi 2007支持主题应用程序,而不是必须添加另一个组件来支持WinXP主题。考虑到所有这些,我希望其他人可能在使用平面属性设置为true的主题应用程序中使用TDBNavigator或其他第三方Navigator组件时遇到类似问题。有关此事的任何意见或建议表示赞赏。

2 个答案:

答案 0 :(得分:1)

主题支持已添加到Delphi 2007,但不适用于100%的VCL(网格,例如,没有主题支持)。我怀疑你在TDBNavigator上遇到的问题。

就你的“第三方导航器”问题而言,由于你没有说明你正在使用哪种“第三方导航器”控件,所以不可能给你任何建议。在不知道具体组件名称的情况下,您没有向我们提供任何信息以用于尝试提供帮助。

Delphi 2010提供全面的主题支持,包括网格。我没有测试过DBNavigator,因为自Delphi 2以来我没有使用过它。但请注意,Delphi 2009/2010引入了旧代码的其他问题,因为从Delphi 2009开始,VCL是基于Unicode的。一些使用字符串并假设Char大小为1字节的代码可能是个问题。

答案 1 :(得分:1)

TDBNavigator上的解决方法,TSpeedButton bug

http://blog.issamsoft.com/index.php?q=en/node/37