unicode対応させるには?

解決


sora  2006-04-11 19:26:38  No: 20973

現在作っているアプリケーションをunicode対応させたいと思っています。
  入力、表示、比較が出来ればOKです(保存は入りません)。
  そこでどうしてもStringGridを使いたいのですが、CLXではEditは
unicode文字を入力、表示できますが、グリッドでは入力はできても(InplaceEditが対応してるだけでしょうか)表示ができません。
  
  色んなサイトのアプリケーションで使われているTnt unicode Controls
なるものを入れて見ましたが、アラブ語やタイ語は大丈夫なのですが、
韓国語全部と中国語の一部(繁体字?)が入力、表示ともにできません。
韓国語と漢字の一部は毛色が違うのでしょうか?
  
  開発環境はDelphi6 Enterprize  WinXPです。
  Unicode対応に関して何かアドバイスがありましたら、ご教授頂きたいと思います。


sora  2006-04-13 03:53:25  No: 20974

自己レスですが、解決しました。
CLXのStringGridはソースを追うと、Canvas.textrectに突き当たり、
その中で使われているテキストを送るメッセージの引数に
PCharが使われていることが原因と思われます。
*Unicode文字はwidestring型でないと格納できない。

TntUniCodeControlsでハングル文字等が表示できなかったことについて
言語ごとに対応しているフォントがあるようです。
MS UI GOTHICは比較的多くの言語に対応しているようですが、
キリル語などはだめなようです。
windows標準のフォントでなければoffice XPについている 
Arial Unicode MSがほぼ全ての言語に対応しているようです。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加