Delphi 7与Delphi 2010间TVirtualStringTree兼容性问题,参数列表差异如何解决?

2026-04-10 16:292阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计253个文字,预计阅读时间需要2分钟。

Delphi 7与Delphi 2010间TVirtualStringTree兼容性问题,参数列表差异如何解决?

我已经创建了一个包含TVirtualStringTree的表格,该表格在Delphi 7和Delphi 2010中均有效。我注意到,当我在两个平台之间移动时,在树事件上得到的消息参数列表不同。字符串类型正在改变。

Delphi 7与Delphi 2010间TVirtualStringTree兼容性问题,参数列表差异如何解决?

我已经创建了一个包含TVirtualStringTree的表单,该表单在Delphi 7和Delphi 2010中有效.我注意到,当我在两个平台之间移动时,我在树事件上得到消息’…参数列表不同..’和字符串类型正在改变TWIDEString(D7)和字符串(D2010).我发现用来抑制此错误的唯一技巧是使用编译器指令,如下所示:

{$IFDEF TargetDelphi7} procedure VirtualStringTree1GetText(Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; TextType: TVSTTextType; var CellText: WideString); {$ELSE} procedure VirtualStringTree1GetText(Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; TextType: TVSTTextType; var CellText: string); {$ENDIF}

并在事件实施的地方重复这一点.我错过了一个简单的解决方案?
谢谢.

最简单的解决方案是为D7和D2010维护单独的源和组件文件夹.它最终会节省时间和麻烦.
标签:TVirtualStr

本文共计253个文字,预计阅读时间需要2分钟。

Delphi 7与Delphi 2010间TVirtualStringTree兼容性问题,参数列表差异如何解决?

我已经创建了一个包含TVirtualStringTree的表格,该表格在Delphi 7和Delphi 2010中均有效。我注意到,当我在两个平台之间移动时,在树事件上得到的消息参数列表不同。字符串类型正在改变。

Delphi 7与Delphi 2010间TVirtualStringTree兼容性问题,参数列表差异如何解决?

我已经创建了一个包含TVirtualStringTree的表单,该表单在Delphi 7和Delphi 2010中有效.我注意到,当我在两个平台之间移动时,我在树事件上得到消息’…参数列表不同..’和字符串类型正在改变TWIDEString(D7)和字符串(D2010).我发现用来抑制此错误的唯一技巧是使用编译器指令,如下所示:

{$IFDEF TargetDelphi7} procedure VirtualStringTree1GetText(Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; TextType: TVSTTextType; var CellText: WideString); {$ELSE} procedure VirtualStringTree1GetText(Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; TextType: TVSTTextType; var CellText: string); {$ENDIF}

并在事件实施的地方重复这一点.我错过了一个简单的解决方案?
谢谢.

最简单的解决方案是为D7和D2010维护单独的源和组件文件夹.它最终会节省时间和麻烦.
标签:TVirtualStr