GridでCenterに表示するには??

解決


理恵  2003-10-23 19:08:33  No: 5348  IP: [192.*.*.*]

以下のような{グリッドの表示を中揃え}のプログラムをつくりました。
procedure TfrmPFM_IN_SLTSCR3.StringGrid1DrawCell(Sender: TObject; ACol,
  ARow: Integer; Rect: TRect; State: TGridDrawState);
var
  String1:String;
  //String2:String;
begin
  With StringGrid1 do
    begin
      String1:=Cells[ACOL,AROW];
      Canvas.FillRect(Rect);
      DrawTextEX(Canvas.Handle,PChar(String1),Length(String1),Rect,DT_CENTER,nil);
    end;
この場合だと、全列中揃えになってしまいます。
一列めは右揃えで、二列目は中揃えにしたいのですが・・・
ご教授おねがいします。

編集    削除
通りすがり  2003-10-23 19:17:39  No: 5349  IP: [192.*.*.*]

AColで区別。

編集    削除
ROM  2003-10-23 20:29:48  No: 5350  IP: [192.*.*.*]

通りすがりさんは、心が広いなあ。

編集    削除
LupinⅢ  URL  2003-10-23 21:16:42  No: 5351  IP: [192.*.*.*]

Case ACol of 
   0:1行目の処理;
   1:2行目の処理;
   2:3行目の処理;
end;
でいいかと思います

編集    削除
理恵  2003-10-24 01:41:45  No: 5352  IP: [192.*.*.*]

ありがとうございます。
大変参考になりました。

編集    削除
理恵  2003-10-24 01:43:07  No: 5353  IP: [192.*.*.*]

わすれてました。

編集    削除