StringGridで特定のカラムのラインを表示するには

解決


クッキー  2004-03-01 03:17:38  No: 7429  IP: [192.*.*.*]

StringGridで上下、左右のセルをつなぎたいのですが、オプションでラインの表示をFalseにして、特定のセルを描画するときに、ラインを表示させたいと考えています。
何かよい方法があれば教えてください。

編集    削除
HOta  2004-03-01 06:22:32  No: 7430  IP: [192.*.*.*]

OnDrowCellイベントで表示するときに、自前で2つのセル分のTRectをTCanvasに描けばいかがでしょうか?

編集    削除
クッキー  2004-03-02 05:39:36  No: 7431  IP: [192.*.*.*]

with stringGrid1.Canvas do
   begin
     Pen.Color := clBlack;
     if ((ACol= 6) or (ACol= 7)) and ((ARow = 1)or(ARow = 2))  then
        Polyline([Point(Rect.Left -1,Rect.Top),Point(Rect.Left -1,Rect.Bottom)]);
と書いてみました
いったん、選択するとグリッドが消えてしまいます。
なにかよい方法はありませんか

編集    削除
ぐり子  2004-03-02 06:51:59  No: 7432  IP: [192.*.*.*]

with stringGrid1.Canvas do
  begin
     if state=[gdFocused] then DrawFocusRect(Rect);
     Pen.Color := clBlack;
     if ((ACol= 6) or (ACol= 7)) and ((ARow = 1)or(ARow = 2))  then
        Polyline([Point(Rect.Left ,Rect.Top),Point(Rect.Left ,Rect.Bottom)]);
  end;

編集    削除
クッキー  2004-03-03 03:55:13  No: 7433  IP: [192.*.*.*]

どうもありがとうございます
うまく描けました

編集    削除