没有合适的资源?快使用搜索试试~ 我知道了~
qreport打印缩小.pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 145 浏览量
2022-10-30
07:37:03
上传
评论
收藏 85KB PDF 举报
温馨提示
试读
3页
。。。
资源推荐
资源详情
资源评论
新建工程,在 Form1 窗体上添加一个 ToolBar 控件,并在其上添加以下按钮:“打印”、
“打印设置”、
“上一页” 、“下一页”、“放大”、“缩小”和“关闭”。 在 Form1 窗体上添加
一个 Panel 控件,对齐方式设为 alBottom,再在此 Panel 控件上添加一个 ProgressBar 控件
(对齐方式设为 alLeft)和一个 Panel 控件(Name 为 Panel2,对齐方式设为
alRight,BevelOuter 设为 bvLowered),这两个控件分别用来显示报表装载进度和其他提示信
息。在 Form1 窗体上添加一个 QRPreview 控件,对齐方式设为 alClient。
再新建一个窗体,设其 Name 为 Form2, 在该窗体上添加 TQuickRep 控件,设其 Name
为 QuickRep1,其 PrinterSetting 中的 Units 属性设为 mm(以毫米为计量单位),然后建
立报表。
编程实现
1.在 Form2 上选择 QuickRep1,在其事件中选择 OnPreview,输入以下代码:
Form1->QRPreview1->QRPrinter=Form2->QuickRep1->QRPrinter;
2.在 Form1 的头文件中找到对象 TForm1 的定义,在其中添加以下的代码:
int OldPaperSize;
int OldOrientation;
int OldTop;
int OldBottom;
int OldLeft;
int OldRight;
void RefreshPanel();
3.选择 Form1 的 Activate 事件,输入以下代码:
//初始化
OldPaperSize=Form2->QuickRep1->Page->PaperSize;
OldOrientation=Form2->QuickRep1->Page->Orientation+1;
OldLeft=Form2->QuickRep1->Page->LeftMargin*100;
OldRight=Form2->QuickRep1->Page->
RightMargin*100;
OldTop=Form2->QuickRep1->Page->Top
Margin*100;
OldBottom=Form2->QuickRep1->Page->
BottomMargin*100;
Form2->QuickRep1->Prepare();
RefreshPanel();
Form2->QuickRep1->Preview();
4.在 Form1 中添加更新提示代码:
void TForm1::RefreshPanel()
{ //更新提示信息
Panel2->Caption=“第”+IntToStr(Form1->QRPreview1->PageNumber)+“页”
+“共” + IntToStr(Form2->QuickRep1->PageNumber)+“页”;
}
5.从 Form1 中选择 QRPreview1,在其事件中选择 OnProgressUpdate,输入以下代
码:
//显示报表装载进度
ProgressBar1->Position=Progress;
RefreshPanel();
6.打印:
Form2->QuickRep1->Print();
7.打印设置:
DEVMODE *pDev;
LPPAGESETUPDLG mylp=new PAGESETUPDLG;
资源评论
G11176593
- 粉丝: 6643
- 资源: 3万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功