我用QuickReport做了一個報表,報表中有若干個字段,其中有一個字段為PrintNo,現想將PrintNo的不同的編號分開打印並且每頁最多打印五行,其條件為:
1:如果前後兩個PrintNo的值則按PrintNo的不同值分頁打印。
2:相同的PrintNo值,其行數超過5行,從第六行起則打印在下一頁,以此類推。
這樣的代碼是不是要在報表的OnStartPage中寫,如何寫,請指點。謝謝!
1:如果前後兩個PrintNo的值則按PrintNo的不同值分頁打印。
2:相同的PrintNo值,其行數超過5行,從第六行起則打印在下一頁,以此類推。
這樣的代碼是不是要在報表的OnStartPage中寫,如何寫,請指點。謝謝!
解决方案 »
- win7操作word出错,没辙了。。。
- 辞职了,散分....
- 急啊!比如要对几个矢量图形的组合,同时进行拉伸操作,请问各个图形该按什么比例进行拉伸?该比例是算法是什么?
- USB(U盘问题) 第二个问题
- 有什么控件:即是容器类控件又有水平滚动条和垂直滚动条。
- 请问select sum(times) as SumTime,sum(age) as SumAge from TableName中取出的sumtime和sumage放在哪个变量里,谢谢!
- 如何写回车就可以默认确定组件被击中的代码/
- 求函数,计算某年某月某天是一年中的第几天?
- 没有installshied的for delphi5版本的怎么班??到那里可以找到或者下载???
- 还有一个很急的问题,关于解开BPL或DPK为PAS、DCU之类的
- 想用DLL装父窗体,然后在主程序中继承DLL中窗体,这要如何做?大家能不能提供一些方法!??!!
- 请教如何在DELPHI里加矢量图
procedure TfrmPrintInto.SetPaperSize(X, Y: Integer);
var
Device: array[0..255] of char;
Driver: array[0..255] of char;
Port: array[0..255] of char;
hDMode: THandle;
PDMode: PDEVMODE;
begin
Printer.PrinterIndex := Printer.PrinterIndex;
Printer.GetPrinter(Device, Driver, Port, hDMode);
if hDMode <> 0 then
begin
pDMode := GlobalLock(hDMode);
if pDMode <> nil then
begin
if (x = 0) or (y = 0) then
begin
pDMode^.dmFields := pDMode^.dmFields or dm_PaperSize;
pDMode^.dmPaperSize := DMPAPER_FANFOLD_US;
end
else
begin
{Set to custom size}
pDMode^.dmFields := pDMode^.dmFields or
DM_PAPERSIZE or
DM_PAPERWIDTH or
DM_PAPERLENGTH;
pDMode^.dmPaperSize := DMPAPER_USER;
pDMode^.dmPaperWidth := 2710; {SomeValueInTenthsOfAMillimeter};
pDMode^.dmPaperLength :=700; {SomeValueInTenthsOfAMillimeter};
end;
{Set the bin to use}
pDMode^.dmFields := pDMode^.dmFields or DMBIN_MANUAL;
pDMode^.dmDefaultSource := DMBIN_MANUAL; GlobalUnlock(hDMode);
end;
end;
Printer.PrinterIndex := Printer.PrinterIndex;
end;
調用時我用SetPaperSize(2170,1400);
pDMode^.dmPaperLength :=700; {SomeValueInTenthsOfAMillimeter};
應為
pDMode^.dmPaperWidth := x; {SomeValueInTenthsOfAMillimeter};
pDMode^.dmPaperLength :=y; {SomeValueInTenthsOfAMillimeter};