数据和图表联合打印? |
尚未結案
|
SUNSEAVE
一般會員 發表:66 回覆:44 積分:22 註冊:2003-09-23 發送簡訊給我 |
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
Hi: 你可以使用 QuickReport 來做,
用 QRChart 來畫出圖形,並用一個 QRSubDetil 來列出資料 QRChart 可以於設計時直接指定,或是由已經設定好之 DBChart Assign 過去
procedure TQueryForm.ButtonPreview1Click(Sender: TObject); VAR I : Word; begin FOR I := 0 TO DBChart1.SeriesList.Count - 1 DO BEGIN QRChart1.Chart.SeriesList.Series[I].Assign(DBChart1.SeriesList.Series[I]); END; QRChart1.Chart.Title.Assign(DBChart1.Title); QRChart1.Chart.TopAxis.Assign(DBChart1.TopAxis); QRChart1.Chart.BottomAxis.Assign(DBChart1.BottomAxis); QRChart1.Chart.LeftAxis.Assign(DBChart1.LeftAxis); QRChart1.Chart.RightAxis.Assign(DBChart1.RightAxis); QRChart1.Chart.DepthAxis.Assign(DBChart1.DepthAxis); QRChart1.Chart.MarginTop := DBChart1.MarginTop; QRChart1.Chart.MarginBottom := DBChart1.MarginBottom; QRChart1.Chart.MarginLeft := DBChart1.MarginLeft; QRChart1.Chart.MarginRight := DBChart1.MarginRight; QuickRep1.Prepare; QuickRep1.Preview; end;-------------------------------- 小弟才疏學淺,若有謬誤請不吝指教 --------------------------------
------
Fishman |
SUNSEAVE
一般會員 發表:66 回覆:44 積分:22 註冊:2003-09-23 發送簡訊給我 |
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
|
SUNSEAVE
一般會員 發表:66 回覆:44 積分:22 註冊:2003-09-23 發送簡訊給我 |
我有多个SERIES,判断显示哪个,请问该怎么写
我的写法:
if DBChart1.Series[0].Active then
QRChart1.Chart.SeriesList.Series[I].Assign(DBChart1.Series[0]);
if DBChart1.Series[1].Active then
QRChart1.Chart.SeriesList.Series[I].Assign(DBChart1.Series[1]);
if DBChart1.Series[2].Active then
QRChart1.Chart.SeriesList.Series[I].Assign(DBChart1.Series[2]);
运行但有问题?
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
Hi: QRChart 上的 Series 數量必須與 QRDBChart 上一樣多,再用
QRChart1.Chart.Assign(DBChart1);
將 DBChart1 的屬性 Assign 給 QRChart1,
DBChart1 上的 Series[??].Active 屬性會一併帶過來 --------------------------------
小弟才疏學淺,若有謬誤請不吝指教
--------------------------------
------
Fishman |
SUNSEAVE
一般會員 發表:66 回覆:44 積分:22 註冊:2003-09-23 發送簡訊給我 |
我在QYCHAR中建立了与DBCHAR中相应的SERIES,并用代码:
if DBChart1.Series[0].Active then
QRChart1.Chart.SeriesList.Series[0].Assign(DBChart1.Series[0]);
if DBChart1.Series[1].Active then
QRChart1.Chart.SeriesList.Series[1].Assign(DBChart1.Series[1]);
连接,我在程序里显示如图:但是在预览却如下图:请问还要写什么代码来设置
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
Hi:
if DBChart1.Series[0].Active then QRChart1.Chart.SeriesList.Series[0].Assign(DBChart1.Series[0]); if DBChart1.Series[1].Active then QRChart1.Chart.SeriesList.Series[1].Assign(DBChart1.Series[1]);只會將 DBChart Series 的屬性 Assign 給 QRChart 的 Series,DBChart 本身屬性並不會一起 Assign 給 QRChart,再者,如果第二次執行,選擇另一個 Series,QRChart 就會出現兩條線了,因此建議你直接用 QRChart1.Chart.Assign(DBChart1); 指令 或是你也可以在 QRChart 終止設立一個 Series,然後用以下程式碼,但是 QRChart 的屬性必須先行設定 if DBChart1.Series[0].Active then QRChart1.Chart.SeriesList.Series[0].Assign(DBChart1.Series[0]); if DBChart1.Series[1].Active then QRChart1.Chart.SeriesList.Series[1].Assign(DBChart1.Series[0]);QRChart 的 Width 與 Height 在設大點,圖會比較好看 -------------------------------- 小弟才疏學淺,若有謬誤請不吝指教 --------------------------------
------
Fishman |
SUNSEAVE
一般會員 發表:66 回覆:44 積分:22 註冊:2003-09-23 發送簡訊給我 |
我使用这个方法连接: if DBChart1.Series[0].Active then
begin
QRChart1.Chart.Assign(DBChart1);
QRChart1.Chart.SeriesList.Series[0].Assign(DBChart1.Series[0]);
end;
if DBChart1.Series[1].Active then
begin
QRChart1.Chart.Assign(DBChart1);
QRChart1.Chart.SeriesList.Series[1].Assign(DBChart1.Series[1]);
end;
出现原图:通过QUICK REPORT 预览出来却是如下图:
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
Hi: SUNSEAVE,抱歉,我剛剛試了一下
QRChart1.Chart.Assign(DBChart1);
並不會將 DBChart1 的 Series 的資料一起 Assign 給 QRChart1 的 Series
因此程式修改如下,無須做 <>> 的判斷
< class="code">
procedure TQueryForm.ButtonPreview1Click(Sender: TObject);
VAR
I : Word;
begin
FOR I := 0 TO DBChart1.SeriesList.Count - 1 DO
BEGIN
QRChart1.Chart.SeriesList.Series[I].Assign(DBChart1.SeriesList.Series[I]);
END;
QRChart1.Chart.Assign(DBChart1);
QuickRep1.Prepare;
QuickRep1.Preview;
end;
你再試試
--------------------------------
小弟才疏學淺,若有謬誤請不吝指教
--------------------------------
------
Fishman |
SUNSEAVE
一般會員 發表:66 回覆:44 積分:22 註冊:2003-09-23 發送簡訊給我 |
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
|
SUNSEAVE
一般會員 發表:66 回覆:44 積分:22 註冊:2003-09-23 發送簡訊給我 |
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
Hi: QRChart 最好不要直接放在 QuickReport 上,會將 Report 的資料蓋掉最好是放在 PageHeader 或 GroupHeader 中 其餘報表運行方式與原 QuickReport 相同,請注意,DataSet 應該是指定你秀出的 Deatil 那一個 DataSet 才對 --------------------------------
小弟才疏學淺,若有謬誤請不吝指教
--------------------------------
------
Fishman |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |