線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:587
推到 Plurk!
推到 Facebook!

FMX的TStringGrid可否在執行時,動態改變指定Column的字體大小呢?

缺席
riekie
一般會員


發表:7
回覆:5
積分:2
註冊:2002-10-11

發送簡訊給我
#1 引用回覆 回覆 發表時間:2018-03-27 23:20:09 IP:123.110.xxx.xxx 未訂閱
版上的各位前輩好,小弟目前剛接觸FireMonkey,之前都是用VCL元件開發,在VCL的TStringGrid可以透過onDrawCell針對某個Column進行改變顏色或字體,而在FMX的TStringGrid雖然也可以透過OnDrawColumnCell進行指定,但是原本顯示的文字依然還是在上面不會消失,變成文字重疊的狀況,不知是小弟哪個程序有誤,或者不能夠透過此方式來進行重新繪製文字呢??

我的程式碼如下:
procedure TForm2.StringGrid1DrawColumnCell(Sender: TObject;
const Canvas: TCanvas; const Column: TColumn; const Bounds: TRectF;
const Row: Integer; const Value: TValue; const State: TGridDrawStates);
begin
if Row mod 2 = 0 then
begin
Canvas.Fill.Color := TAlphaColorRec.Red ;
Canvas.Font.Size := 16 ;
Canvas.FillText(Bounds,Value.AsString,true,1,[],TTextAlign.Leading,TTextAlign.Center);
end;
end;

顯示重疊的結果(附件)

還請版上前輩們不吝指導一下,感激不盡,謝謝。
riekie
一般會員


發表:7
回覆:5
積分:2
註冊:2002-10-11

發送簡訊給我
#2 引用回覆 回覆 發表時間:2018-03-28 10:15:26 IP:211.22.xxx.xxx 未訂閱
Dear 版上大大們,後來小弟已經解決了,可能一時豬頭,後來用最原始的方式,將原本顯示的內容清除後,重新指定新的字體大小後即可,不好意思,打擾各位了。
系統時間:2024-11-21 21:06:49
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!