Delphi 转换TNT码

Delphi 转换TNT码,delphi,components,Delphi,Components,我以前用Delphi7编写过一个应用程序。我对许多对象使用了TNTUnicode组件。现在我想在Delphi XE4中开发它 我的问题是:DelphiXe4不支持TNT代码 那么,有没有办法将ttn对象转换为tobject?TNT组件的唯一目的是将支持Unicode的组件添加到本机不支持Unicode的Delphi版本中。从Delphi2009开始,Delphi对Unicode提供了本机支持 因此,当您移植到支持Unicode的版本(如XE4)时,您不再需要TNT组件。只需将它们从项目中删除,并

我以前用Delphi7编写过一个应用程序。我对许多对象使用了TNTUnicode组件。现在我想在Delphi XE4中开发它

我的问题是:DelphiXe4不支持TNT代码


那么,有没有办法将ttn对象转换为tobject?

TNT组件的唯一目的是将支持Unicode的组件添加到本机不支持Unicode的Delphi版本中。从Delphi2009开始,Delphi对Unicode提供了本机支持

因此,当您移植到支持Unicode的版本(如XE4)时,您不再需要TNT组件。只需将它们从项目中删除,并使用本机组件即可。例如,将
TTntButton
替换为
TButton
,将
TTntEdit
替换为
TEdit
等等


如果您的项目很大,您将需要编写脚本。您可能会选择一种合理的方法,使用您最喜欢的脚本语言,使用基于正则表达式的方法。确保正确使用修订控制系统来支持这项工作。当你的正则表达式改变了一些本不该改变的东西时,它就在那里拯救你

是的,您可以将它们转换为XE4附带的控件

最简单的方法是以文本形式打开所有dfm文件,并将(例如)
TTntEdit
更改为
TEdit
。所有类都有TTnt前缀,因此应该很容易找到它们

然后,在Delphi中打开项目的每个表单

它将警告您控件类型错误,并提供通过更新表单类定义来修复故障

uses
部分移除TNT装置后,很有可能一切正常。只需反复点击F9,Delphi就会准确地将您带到需要删除的部分:)


您可能需要处理其他unicode内容,但这很可能与tnt控件无关。

另一种选择是购买TMS unicode软件包()


这已经为更新的delphi版本更新了TNT控件,并且只是为标准delphi类添加了别名,因此在应用程序中没有性能损失,但可以避免重命名控件

是的,成功了。我欠你一个人情。注意:从使用部分移除TNT装置后。你必须在单位里把TNT换成T。