Delphi : StringGrid使用時にセルの右寄せをすると2重表示などがされる問題

ウィンドウスタイルをカスタムスタイルに変更した場合に2重表示される。標準のWindowsスタイルなら2重表示はされない。

調べたこと

  • 2重表示を回避するには、StringGridのプロパティのDefaultDrawingをfalseに設定して、onDrawCellイベントで自分で描画スタイルを設定する
  • 自分で描画を設定する場合は背景色やフォント色、セレクト色、固定セル色など全て設定する

TStringGridにalignmentプロパティさえあればこんなに悩まなくて済むのに・・・。

これはやはりDBGridを使うことを再検討しなければならないのか。Stringgridはデータベースのデータを表示することを前提にしてはつくられていないのだろう。だから、数値型のフィールドのデータがあれば右寄せに表示するのが当然に思われるようなことができない。振り出しに戻ってしまった。

コメントを残す

メールアドレスが公開されることはありません。