DBGridのタイトルカラムのLineを1本にするには?

解決


ふゆのにおい  2004-11-16 19:43:24  No: 11780

はじめまして。ふゆのにおいです。

DBGridのoptionで
[dgColLines dgRowLines]
どちらか1つを設定すると、Lineは1本ですが、
両方設定するとタイトルカラムはボタンのようになります。
それが嫌なのです。
ボタンじゃなく、フラットな感じにしたいのです。

[dgRowLines]だけ設定し、下記のようにしました。

procedure TFmKJS401.DBGrid1DrawColumnCell(Sender: TObject;
  const Rect: TRect; DataCol: Integer; Column: TColumn;
  State: TGridDrawState);
begin
  with (Sender as TDBGrid).Canvas do
  begin
    font.Color := clBlack;
    if gdSelected in state then
      Brush.Color := $0095FFFF
    else
      Brush.Color := clWindow;

    FillRect(Rect);
    (Sender as TDBGrid).DefaultDrawColumnCell(Rect,DataCol,Column,State);

    pen.Width := 1;
    pen.Color := clGray;
    MoveTo(rect.left,rect.top-rect.top);
    lineto(rect.left,rect.bottom);

  end;
end;

最後のカラムの縦線が表示されませんでした。
どこがおかしいのかまったくわかりません。

また、ほかにいい方法がありましたら
教えていただきたいです。
よろしくお願い致します。


@っしー  2004-11-16 23:44:19  No: 11781

DBGridのCtl3DプロパティをFalseにするだけではダメなのでしょうか?


ふゆのにおい  2004-11-17 00:00:49  No: 11782

@っしーさんありがとうございます。
Delphi6を使用しています。
コードを書いてもなりませんでした…。


ふゆのにおい  2004-11-17 00:03:01  No: 11783

すいません!!
Delphi5でした!
間違えました!!


ふゆのにおい  2004-11-19 23:10:27  No: 11784

解決しました。
お騒がせしました。
@っしーさんありがとうございました。


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

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






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