全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2586
推到 Plurk!
推到 Facebook!

QReport要如何依列列印

尚未結案
han76816
一般會員


發表:10
回覆:9
積分:3
註冊:2010-03-08

發送簡訊給我
#1 引用回覆 回覆 發表時間:2010-09-23 15:54:06 IP:122.146.xxx.xxx 訂閱
是這樣的,現在QReport列印的方式是這樣

01 04
02 05
03 06

有去爬了一下文,上面似乎是預設的樣式
那有辦法變成以下的列印方式嗎?

01 02
03 04
05 06

請各位QReport的高手幫幫忙了~thanks!!
smallfox
高階會員


發表:2
回覆:113
積分:128
註冊:2003-02-19

發送簡訊給我
#2 引用回覆 回覆 發表時間:2010-09-30 01:51:43 IP:203.73.xxx.xxx 訂閱
下列程式給你參考 ....


unit Std_PkgLabel1;

interface
uses Windows, SysUtils, Messages, Classes, Graphics, Controls,
StdCtrls, ExtCtrls, Forms, QuickRpt, QRCtrls, DB, ADODB;

type
TqrStd_PkgLabel1 = class(TQuickRep)
DetailBand1: TQRBand;
qlTourNo1: TQRLabel;
qlTourNo2: TQRLabel;
qlTourNo3: TQRLabel;
qlName1: TQRLabel;
qlName2: TQRLabel;
qlName3: TQRLabel;
qlEName1: TQRLabel;
qlEName2: TQRLabel;
qlEName3: TQRLabel;
qmAdd1: TQRRichText;
qmAdd2: TQRRichText;
qmAdd3: TQRRichText;
procedure QuickRepBeforePrint(Sender: TCustomQuickRep;
var PrintReport: Boolean);
procedure QuickRepNeedData(Sender: TObject; var MoreData: Boolean);
private
aTourNo, aName, aEName: array[1..3] of TQRLabel;
aAddre: array[1..3] of TQRRichText;
public

end;
var
qrStd_PkgLabel1: TqrStd_PkgLabel1;

implementation
uses DM_Unit3, Pub_Proc, Pub_Func, Pub_Init;
{$R *.DFM}
// -------------------------------------------------------------------------- //
procedure TqrStd_PkgLabel1.QuickRepBeforePrint(Sender: TCustomQuickRep; var PrintReport: Boolean);
begin
aTourNo[1]:=qlTourNo1;
aTourNo[2]:=qlTourNo2;
aTourNo[3]:=qlTourNo3;
aName [1]:=qlName1;
aName [2]:=qlName2;
aName [3]:=qlName3;
aEName [1]:=qlEName1;
aEName [2]:=qlEName2;
aEName [3]:=qlEName3;
aAddre [1]:=qmAdd1;
aAddre [2]:=qmAdd2;
aAddre [3]:=qmAdd3;
//
DM3.qyCustomer.First;
end;

procedure TqrStd_PkgLabel1.QuickRepNeedData(Sender: TObject; var MoreData: Boolean);
var i: Integer;
begin
MoreData:=(not DM3.qyCustomer.Eof);
for i:=Low(aName) to High(aName) do begin
if (not DM3.qyCustomer.Eof) then
begin
if (DM3.qyCustomer.FieldByName(DM3.mCmpName).AsString<>'') then
begin
aTourNo[i].Caption:=DM3.mTour_No;
aName [i].Caption:=DM3.qyCustomer.FieldByName(DM3.mCmpName).AsString;
aEName [i].Caption:=DM3.qyCustomer.FieldByName(DM3.mMan1).AsString
DM3.qyCustomer.FieldByName(DM3.mMan2).AsString;
aAddre [i].Lines.Text:=DM3.qyCustomer.FieldByName(DM3.mAddress).AsString;
//
if (not aTourNo[i].Enabled) then aTourNo[i].Enabled:=True;
if (not aName [i].Enabled) then aName [i].Enabled:=True;
if (not aEName [i].Enabled) then aEName [i].Enabled:=True;
if (not aAddre [i].Enabled) then aAddre [i].Enabled:=True;
end
else
begin
aTourNo[i].Caption:='';
aName [i].Caption:='';
aEName [i].Caption:='';
aAddre [i].Lines.Clear;
end;
DM3.qyCustomer.Next;
end
else
begin
aTourNo[i].Enabled:=False;
aName [i].Enabled:=False;
aEName [i].Enabled:=False;
aAddre [i].Enabled:=False;
end;
end;
end;

end.
系統時間:2024-04-27 12:34:05
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!