使用FastReport的UserDataSet时候,遇到TfrxMemoView内容过多而打印不全的问题
解决方案很简单,就是把Memo所在的Band勾选Stretch就行了。另外还可勾选StartNewPage。
至于UserDataSet本身,猜测就是人为的构造一个类似数据库的集合,大致使用代码如下:
var
MyData: array[.., ..] of String;
MasterNo: Integer; procedure TFormMainForm.ExporterPDF(Sender: TObject);
var
strList : TStringList;
i, No : integer;
list : TStringList;
ttt : IXMLTaskType;
strFilePath : String;
oExportfilter : TfrxCustomExportFilter;
begin
nPath := ;
nFile := ;
nExclu := ;
// 使用数据填充数组,构造一个类似于数据库的内容
for i:= to XMLConfig.Tasks.Count- do
begin
No := i+;
MyData[No][] := ttt.Nom;
MyData[No][] := '中午12点';
MyData[No][] := '晚上9点';
end; SaveDialog1.InitialDir:=GetShellFolders('Personal');
SaveDialog1.Filter := 'PDF file|*.pdf';
SaveDialog1.DefaultExt := 'pdf';
if SaveDialog1.Execute then
begin
strFilePath := SaveDialog1.FileName;
oExportfilter := TfrxCustomExportFilter(frxPDFExport1);
oExportFilter.ShowDialog := False;
oExportFilter.FileName := strFilePath; frxReport1.PrepareReport(True);
frxReport1.Export(oExportFilter);
ShellExecute(Self.Handle, 'open', PChar(strFilePath),'', '',SW_SHOW);
//oExportfilter.Free;
end;
exit; frxReport1.PrepareReport();
frxReport1.ShowPreparedReport();
frxReport1.Print;
frxReport1.ShowReport();
end; procedure TFormMainForm.frxUserDataSet1GetValue(const VarName: String;
var Value: Variant);
begin
if VarName = 'fname' then Value := MyData[MasterNo][]
else if VarName = 'fstarttime' then Value := MyData[MasterNo][]
else if VarName = 'fstoptime' then Value := MyData[MasterNo][]
end; procedure TFormMainForm.frxUserDataSet1First(Sender: TObject);
begin
MasterNo := ;
end; procedure TFormMainForm.frxUserDataSet1Next(Sender: TObject);
begin
Inc(MasterNo);
end; procedure TFormMainForm.frxUserDataSet1Prior(Sender: TObject);
begin
Dec(MasterNo);
end; procedure TFormMainForm.frxUserDataSet1CheckEOF(Sender: TObject;
var Eof: Boolean);
begin
Eof := MasterNo > XMLConfig.Tasks.Count;//High(MyData);
end;
使用FastReport的UserDataSet时候,遇到TfrxMemoView内容过多而打印不全的问题的更多相关文章
- CSS---解决内容过多就会出文本溢出(显示在区域外面,不换行的情况)
当我们设置我的的div,或者其它文本框固定宽度之后,文本内容过多就会出文本溢出(显示在区域外面,不换行的情况). 这时我们可以使用Css中的几个属于来解.有以下的三个属于可以解决问题: 1,word- ...
- 在ASP.NET2.0里打印网页指定的内容(比如打印网页里的一个Table)
原文:在ASP.NET2.0里打印网页指定的内容(比如打印网页里的一个Table) 打印指定内容: <html> <head> <script type= " ...
- JavaScript解决select下拉框中的内容太长显示不全的问题
JavaScript解决select下拉框中的内容太长显示不全的问题 1.说明 有些情况下,select下拉框的内容过长,导致部分看不见: 现在通过鼠标事件,让下拉框中的内容显示完全 2.实现源码 & ...
- css省...和div 内容过多,自动换行
1.shengluohao 就是这个... 加: overflow: hidden;/*超出部分隐藏*/ white-space: nowrap;/*不换行*/ text-overflow:ellip ...
- el-form-item内容过多,及弹窗框宽度属性show-overflow-tooltip设置
内容过多: :show-overflow-tooltip=true 宽度属性设置: .el-tooltip__popper{ max-width:30% }
- 当table中的td内容过多,显示不完全,用省略号表示。
.format{ min-width:100px; max-width:200px; overflow:hidden; white-space:nowrap; text-overflow:ellips ...
- C#打印字符串内容,例如打印Textbox内容
/// <summary> /// 打印txt文档 /// </summary> class PrintTxt { System.Drawing.Printing.PrintD ...
- 优雅的重载toString方法,打印对象内容而不是打印内存地址的方法
如果直接在日志或者System.out.println中打印java对象,会打印这个对象的内存地址,而不是具体内容. 为了便于调试,一般的做法有2种: 1.重写toStrong方法 2.将对象传入JS ...
- div设置滚动条内容任然显示不全
<div style="overflow:scroll;height:100%"></div> 注意:高度需设置为100%,不然内容显示不全
随机推荐
- Android SDK 下载速度慢解决方法
Mac 本搞Android开发,遇到Android SDK 下载速度慢,解决方法大概有两种.第一,FQ.这种方法比较彻底,但是要想有稳定的效果还的要花大价钱.第二,有些高人直接给了SDK中各软件的下载 ...
- 虚拟ip配置
虚 拟IP地址(VIP) 是一个不与特定计算机或一个计算机中的网络接口卡(NIC)相连的IP地址.数据包被发送到这个VIP地址,但是所有的数据还是经过真实的网络接口. VIPs大部分用于连接冗余:一个 ...
- 【转】彻底解决INSTALL_FAILED_UPDATE_INCOMPATIBLE的安装错误
原文网址:http://bbs.9ria.com/thread-245162-1-1.html 利用adb shell进入系统,进入/data/app或者/data/data,删除跟你安装的apk同样 ...
- 数字积分法DDA(DDA(Digital Differential Analyzer)
数字积分法DDA(DDA(Digital Differential Analyzer) 数字积分法又称数字微分分析法DDA(Digital differential Analyzer),是在数字 ...
- Html5/Css3 向下兼容placeholder
Css3下input标签的placeholder属性在IE10以下是不兼容的,页面加入这段JS脚本后,能够兼容IE6+ //@charset "utf-8"; /** * jque ...
- Codeforces Round #272 (Div. 1) Problem C. Dreamoon and Strings
C. Dreamoon and Strings time limit per test 1 second memory limit per test 256 megabytes input stand ...
- iOS7状态栏字体颜色修改
iOS7中,默认的状态栏字体颜色是黑色的,如何修改为其它颜色呢? 1.在项目的*info.plist中增加 View controller-based status bar appearance 属性 ...
- wpf新增记录时用多线程的问题
多线程虽然可以增加用户操作体验,但是有时候会出现意想不到的错误. 如果采用分布式,数据库在另外服务器上,当网络出现问题,或者数据库繁忙,那么新增数据就会等待,这时候用户如果以为没有操作,而多次点击新增 ...
- (转)Android创建桌面快捷方式两种方法
[IT168技术]Android在桌面上生成快捷方式有两种情况,一种是直接在桌面直接生成;一种是长按桌面,在弹出的快捷菜单中生成. 谈谈在桌面上直接生成.个人觉得这个比较爽快,既然都是快捷方式了干嘛还 ...
- sqlite创建数据库问题
1.<Sqlite权威指南>上说是这么创建数据库的: sqlite3 test.db 但是我写了这条语句之后出现了下面的情况(注:安装Sqlite过程见 ...) 我的sqlite3放在 ...