小弟的一个关于dephi中打印的问题,请教!300分重谢

tlovexyj 2001-11-20 11:07:20
打印基本的表格式报表。
如果在query中检索出7条记录,而每次打印,页面只允许有5条记录,不足则自动补空行,超过则转到下一页打印。
...全文
223 23 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
tlovexyj 2001-11-22
  • 打赏
  • 举报
回复
up~
tlovexyj 2001-11-22
  • 打赏
  • 举报
回复
提一提
janb 2001-11-21
  • 打赏
  • 举报
回复
很简单,你可以放置一个QRSubDetail,将其dataset值设为你要打印的query,调整其宽度为每页的五分之一,然后在QRSubDetail里面放置你要打印的内容即可。
cobi 2001-11-21
  • 打赏
  • 举报
回复
你要自己控制换页吗?
tlovexyj 2001-11-21
  • 打赏
  • 举报
回复
我是用的quickrep
如果要自己控制,请问如何做到?
tlovexyj 2001-11-21
  • 打赏
  • 举报
回复
is it F1Book?
cobi 2001-11-21
  • 打赏
  • 举报
回复
我试了一下cbtianbo(三飞)的方法,好象不太行。
或者请cbtianbo(三飞)再详细一点吧
cbtianbo 2001-11-21
  • 打赏
  • 举报
回复
同意楼上fenglin2000(风林2000)的解法
在onneeddata事件中写代码
下面是我以前程式的代码, 不很好各位兄弟别见笑
procedure TFGatheringReceipt10.NeedData(Sender: TObject;
var MoreData: Boolean);
begin
inherited;
nowrow:=nowrow+1;
moredata:=(nowRow<=nowdbgrid.SelectedRows.count)or(nowrow mod 4<>1);
if moredata then
begin
if (nowrow mod 4 =1)and(nowrow<>1) then
QuickRep1.NewColumn;//我记得有一段时间无"and(nowrow<>1)"时
//NewColumn会报错,不知是否因为未安装打印机
if nowRow<=nowdbgrid.selectedrows.count then
Nowquery.gotobookmark(pointer(nowdbgrid.SelectedRows.items[nowRow-1]));
//assign value to all qrlabel
QuickRep1.QRPrinter.Progress:=QuickRep1.QRPrinter.Progress+1;
end
else
QuickRep1.QRPrinter.Progress:=QuickRep1.QRPrinter.Progress+1;

end;
dragonzy 2001-11-21
  • 打赏
  • 举报
回复
什么情况?
用什么打印的?
tankkcc 2001-11-21
  • 打赏
  • 举报
回复
将症状说清楚点,不然看不懂
chenjiong 2001-11-21
  • 打赏
  • 举报
回复
先说说你是用什么打的吧,那样可以对症下药。
fenglin2000 2001-11-21
  • 打赏
  • 举报
回复
同意楼上,如果你用quickrep的话,你可以在onneeddata中写适当的代码控制翻页。
TechnoFantasy 2001-11-21
  • 打赏
  • 举报
回复
你是用什么执行打印的?自己些代码还是利用报表控件?
cobi 2001-11-21
  • 打赏
  • 举报
回复
如果你是用detailband输出你检索得到的记录的话,你要检查一下你的detailband是否高度过大或者报表剩余的空间已经不能再放下7条记录。

或许你检查一下quickrep的forcenewpage这些属性是否变成了true,这样也有影响
xiaoyu 2001-11-21
  • 打赏
  • 举报
回复
是active控件
xiaoyu 2001-11-21
  • 打赏
  • 举报
回复
使用formula one
很爽的
类似excel
tlovexyj 2001-11-21
  • 打赏
  • 举报
回复
up~
tlovexyj 2001-11-21
  • 打赏
  • 举报
回复
小弟笨得很,如何补"空的记录"呢?
winthrow 2001-11-21
  • 打赏
  • 举报
回复
如果用detailband,根据quickrep里的page里的相应设置调整它的高度也可以达到,原理和janb()说的一样
Thinkinger 2001-11-21
  • 打赏
  • 举报
回复
要补空行的话,你就加入空的记录,补到7行!
加载更多回复(3)

5,927

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧