請教關於DBChart的使用問題 |
答題得分者是:P.D.
|
eriato
一般會員 ![]() ![]() 發表:2 回覆:1 積分:0 註冊:2009-05-28 發送簡訊給我 |
當座標軸中lable值過長時,就不會顯示出來,如圖所示,X軸的第二項沒有顯示,第四項由於被第三項占了一部分位置也沒與顯示出來,我想要它可以顯示出來,不知道該如何設置DBChart的屬性呢?
我通過修改Chart>Legend>Position和Series>Format>Bar Width這兩者的值,確實可以讓我表中的X軸數值都顯示出來,但這並不是我最想要的解決辦法,我想知道是否有什麼方法讓座標值自動換行從而適應當前列的寬度。我查看了下DBChart的屬性,似乎是沒有看到有關於自動換行的設置,不知道是沒有還是我沒有看到。在網上有搜索過,也沒有找到我需要的答案。所以還請各位熟悉的朋友可以幫忙解答下,謝謝! ![]() 編輯記錄
eriato 重新編輯於 2009-05-30 02:46:48, 註解 無‧
|
P.D.
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
|
eriato
一般會員 ![]() ![]() 發表:2 回覆:1 積分:0 註冊:2009-05-28 發送簡訊給我 |
|
P.D.
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
參考以下程式看有沒有幫助, 這是我在圖片畫完後, 自己加上三組lable 如下圖的做法
[code delphi] procedure TForm_Rep591.DBChart1AfterDraw(Sender: TObject); Procedure DrawVerticalLine(ax,ay: Integer); begin with DBChart1, Canvas do begin Pen.Color:= clGray; Pen.Style:= psSolid; Pen.Mode := pmBlack; //pmXor; Pen.Width:= 1; MoveTo(ax,ChartRect.Top - Height3D); LineTo(ax,ChartRect.Bottom - Height3D); Font.Size:= 7; Font.Name:= '細明體'; Font.Color:= clBlack; if rgDM.Itemindex=0 then TextOut(ax-90,ay 4,SysUt.DayFormat(DM_Rep591.IBQ_D8001FORMDATE.AsString, '/',U_VarDef.cdatedigit)) else TextOut(ax-90,ay 4,copy(SysUt.DayFormat(DM_Rep591.IBQ_D8001FORMDATE.AsString, '/',U_VarDef.cdatedigit),1,U_VarDef.cdatedigit 3)); if cbxP1.Checked then begin Font.Color:= clNavy; TextOut(ax-26,ay 4,'成本:' DM_Rep591.IBQ_D8001GCOST.AsString); end; if cbxP2.Checked then begin Font.Color:= $00004000; TextOut(ax-26,ay 18,'銷售:' DM_Rep591.IBQ_D8001GPRICE.AsString); end; if cbxP3.Checked then begin Font.Color:= clMaroon; TextOut(ax-26,ay 32,'毛利:' DM_Rep591.IBQ_D8001GPROFIT.AsString); end; end; end; var TmpX: Integer; begin with DM_Rep591 do try TmpX:= Series1.CalcXPosValue(Series1.XValue[IBQ_D8001.RecNo-1]); if PtInRect(DBChart1.ChartRect, Point(TmpX-DBChart1.Width3D,Round(DBChart1.Height/2) DBChart1.Height3D)) then DrawVerticalLine(TmpX,0); except end; end; [/code] ![]() |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |