くだすれDelphi(超初心者用)その46at TECH
くだすれDelphi(超初心者用)その46 - 暇つぶし2ch751:デフォルトの名無しさん
08/05/22 19:06:30
Delphi5, TStringGrid にデータ表示
1レコード1行の場合OnDrawCellイベントで

if Grid.Row = ARow then
begin
Grid.Canvas.Brush.Color := '紺色';
Grid.Canvas.Font.Color := '白色';
Grid.Canvas.FillRect(Rect);
end
else
begin
Grid.Canvas.Brush.Color := Grid.Color;
Grid.Canvas.Font.Color := Grid.Font.Color;
Grid.Canvas.FillRect(Rect);
end;

として、フォーカスが当たっているように見せています。

1レコード2行の場合はどうすればいいでしょうか?
Grid.Row が2の倍数で ARow = Grid.Row + 1
Grid.Row が2の倍数以外で ARow = Grid.Row - 1 の条件の時にも

背景・前景色を変更したけど、フォーカス色が残ってしまう場合があります。
OnDrawCell内で Grid.Repaint; を実行するとチラつきます。
Grid.Invalidate; だと さらに チラつきっぱなしです。

複数行フォーカスってどうやるんでしょうか?





次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch