名前 題名 ▼ KSCさん > 大変、ご無沙汰しております。 > KSCです。 > > 未だに毎日10時間以上PCと向かい合いDelphiでソフトウェア開発をしています。 > > マスターが照会している「ZColorStringGrid」コンポーネント > > http://mrxray.on.coocan.jp/Delphi/plSamples/051_ZColorStringGridCompo.htm#00 > > のページを以前に見ていて、 > 「へぇ〜こんなコンポーネントがあるんだ〜!!」 > と思っていたのですが、 > > 現在、セル結合を多用するカレンダーグリッドを準備しなければならず > マスターの照会ページを見ながら開発を進めているのですが、 > > 下記の内容で悩んでおります。 > > ・金額数値において、 > 表示の際は、3桁カンマ区切り表示で、 > 編集の際は、3桁カンマ区切りの無い通常の数値で編集をしたい。 > > 普通のTStringGridならOnDrawCellイベントで、 > 数値データをFormatFloatを使用して表示するのですが、 > > procedure TFrm.GridDrawCell(Sender: TObject; ACol, > ARow: Integer; Rect: TRect; State: TGridDrawState); > var > str: string; > begin > if (ARow > 1) and (ACol > 3) and (ACol < Grid.ColCount - 1) then begin > str := Grid.Cells[ ACol, ARow ]; > > if str <> '' then begin > str := FormatFloat(',0', StrToFloat( str )); > > Grid.Canvas.FillRect( Rect ); > Grid.Canvas.TextOut(Rect.Right - Grid.Canvas.TextWidth( str ) - 2, > Rect.Top + ((Rect.Bottom - Rect.Top > - Grid.Canvas.TextHeight( str )) div 2) + 2, > str); > end; > end; > end; > > TStringGrid同様に上記のように書くと、 > 金額数値は、 > 表示時:3桁カンマ区切り > 編集時:通常の数値 > となるのですが、フォント情報がセルの「TCellStyle」のフォントではなく、 > Gridのフォントで描画されてしまいます。(たぶん) > > セルの「TCellStyle」のフォントで描画させるにはどのようにすれば良いでしょうか? > > どなたか知って見える方が居ましたら教えて下さい。 GIF,JPEG,PNG画像ファイル及びLZH,ZIPファイルをアップロードできます.600 x 1200 ピクセルを超える画像は縮小表示されます(画像クリックで拡大表示). (上限122000(120k)バイト) 削除キー Link