请问用QuickReport做报表的时候,折行后我的网格竖线不够长的问题。

lihongxing2002 2003-10-08 05:30:41
我用QuickReport,TQRichEdit做折行打印的时候,在遇到折行的时候,我的一条记录高度就变得很高了,这个时候我的报表在列与列之间的竖线就变得不够长了(其中竖线我是用的QRShape控件画出来的),请问我的问题怎么解决呢?
...全文
42 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
lihongxing2002 2003-11-25
  • 打赏
  • 举报
回复
这么长时间都解决不了,无奈。谢谢大家关心:)
bcbsoft 2003-11-22
  • 打赏
  • 举报
回复
DetailBand中的竖线在设计时可以高度可以搞长一些! 记录的高度小,会被下一条盖掉的;高度大则正好,试几次调到一个合适的高度。
lihongxing2002 2003-10-22
  • 打赏
  • 举报
回复
好,不错嘛,又是一个思路。不过好像复杂了一点。
但是我的问题还没解决呢?有谁能关心一下我吗?
lihongxing2002 2003-10-22
  • 打赏
  • 举报
回复
问题还没解决呢?
cgrg 2003-10-16
  • 打赏
  • 举报
回复
关于QRDBText多行的:
{
const PrintWide = 10; // 假设你留有20个半角字符位置供打印。
int Len = Value.Length();
//介绍一个函数AnsiString::WideCharBufSize() ------
//这个函数度量把AnsiString转换为WideString所需的长度,WideString中汉字和英文
//字母的长度均为2个字节。而这个长度的的度量单位是双字节。所以无论英文字母与
//汉字均占一个长度单位。另外这个值会比你的可数值多一。
//例如对于字符串“RDSDH的代码是1234",Length() = 17, WideCharBufSize() = 14;
//如果从“代”和“码”两字中间分开,则长度分别为L1=9, L2=8, W1=8, W2=7;
//这里有L = L1 + L2, W = W1 + W2 - 1;
//如果从“码”字中间分开,则长度别为L1 = 10, L2 = 7, W1 = 9, W2 = 7;
//这里有L = L1 + L2, W <> W1 + W2 - 1;
//在WideString函数计算时,全角汉字被中分后将计数两次,中分前只计数一次,
//因些,可以利用这个差异设计算判断当汉字是否被中分。
AnsiString StrNew = "";
AnsiString StrL = ""; //截后左段字符
AnsiString StrR = ""; //截后右段字符
while(Len > 0)
{
StrL = Value.SubString(1, PrintWide);
StrR = Value.SubString(PrintWide + 1, Len - PrintWide);
int W = Value.WideCharBufSize();
int WL = StrL.WideCharBufSize();
int WR = StrR.WideCharBufSize();
if(W != WL + WR - 1)
{ //汉字给中分了,重新截取。
StrL = Value.SubString(1, PrintWide - 1 );
StrR = Value.SubString(PrintWide, Len - PrintWide + 1);
}
StrNew += StrL;
Value = StrR;
Len = Value.Length();
if(Len > 0 ) StrNew += "\r";
}
Value = StrNew;
}

我也是遇到列间竖线多行调整的问题。
上述代码能解决折行问题。
如果大家解决了竖线问题请通知我。
chen944127@hotmail.com
lihongxing2002 2003-10-15
  • 打赏
  • 举报
回复
to 0delphi(小焦) :
有分给吗?
奥爸 2003-10-15
  • 打赏
  • 举报
回复
to lihongxing2002(潇洒)
我问的是用TQRichEdit怎么样实现折行打印,该怎么设置属性,我设置了dataset,datafield 怎么预览时报表看不到数据,应该怎么设置
lihongxing2002 2003-10-12
  • 打赏
  • 举报
回复
to 0delphi(小焦):
你挺有意思啊。是我在发贴问问题耶。咱俩是不是该换换呢?
你用QRDBText设一下dataset,datafield属性就可以了。
lihongxing2002 2003-10-12
  • 打赏
  • 举报
回复
to 52vc(方旭) :
你说的方法只能解决DetailBand两边边框的问题,这个我本来也会,我说的问题不是这个,而是列与列之间的竖线。我做的报表是有网格的。
52vc 2003-10-12
  • 打赏
  • 举报
回复
detail 的属情frame设置 left=true right=true
奥爸 2003-10-11
  • 打赏
  • 举报
回复
请问用TQRichEdit怎么能打印多个记录
我试了一下怎么预览为空呀?
需要都设置什么属性吗
我设置了dataset ,datafile
lihongxing2002 2003-10-09
  • 打赏
  • 举报
回复
怎么没有人回答我呢?高手快来帮帮我啊

13,826

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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