5,930
社区成员
发帖
与我相关
我的任务
分享


TfrxPictureView(frxReport1.FindObject('memo1')).Height:=TfrxMemoView(TfrxPictureView(frxReport1.FindObject('memo1'))).CalcHeight;
frxReport1.ShowReport();
因为我memo1是固定的内容,这样是可行的。如果是动态的数据可能不应该这样,你可以试试方式二
方式二:
在报表编辑里,找到memo1,填写控件对应的AfterData代码如下:
procedure Memo1OnAfterData(Sender: TfrxComponent);
begin
memo1.height:= memo1.CalcHeight;
end;
原则就是在给Picture1指定TOP前,给memo1的高度修改为CalcHeight就可以了。
看不懂帮顶
程序里输入41和42,章子显示的位置间距太大,想在它们之间显示是不行的,总不能输入41.5

这样的设计,预览出来是一样的效果。
以右下角定位。
3、Footer1的AfterCalcHeight事件内写以下代码:
procedure Footer1OnAfterCalcHeight(Sender: TfrxComponent);
begin
footer1.height:=memo1.height;
end;
这样,当重新设计一下footer1的高度为memo1的高度。然后图片因为是以右下角定位的,也会自动改变位置的。
我的设计:
预览效果: