关于Ansi版Delphi剪切板中文乱码的问题

来源:互联网 发布:php接口和实现类 编辑:程序博客网 时间:2024/05/02 15:06

Ansi版Delphi的剪贴板也是用Ansi字符串实现的,Clipboard.AsText是用CF_TEXT方式,设置和获取的都是AnsiString类型,处理中文时就是乱码,直接改Clipbrd单元当然不是好办法,嗯,可以在TClipboard上继承一个新类来实现:


  TUnicodeClipboard = class(TClipboard)  private    function GetAsUnicodeText: WideString;    procedure SetAsUnicodeText(const Value: WideString);  public    property AsUnicodeText: WideString read GetAsUnicodeText write SetAsUnicodeText;  end;

使用时:

var s: string;begin  s := TUnicodeClipboard(Clipboard).AsUnicodeText;end;


0 0