我爱黑客网首页 设为首页
加入收藏
联系我们
 首 页  技术文章 下载中心 站长学院 交流论坛
 软件:
 文章:        教程:
 推荐: 我爱黑客网论坛
 
 
 
 
   
黑软: Q Q 软件 木马间谍 探嗅监听 溢出攻击 加密解密 漏洞扫描 脚本注入 远程控制 综合利用 聊天工具  
 
技术文章: 爱黑新闻 | 黑客攻防 | 网络技术 | 程序设计 | 系统操作 | 本站动态 | 业界动态 | 安全公告 | 病毒公告 | 八卦黑客
 
 
您当前的位置:我爱黑客 -> 程序设计 -> C++ -> C++视图 -> 文章内容  
栏目导航
· C++综合 · C++通信
· C++视图 · C++图象
· C++系统 · C++多媒体
· C++界面 · C++文件
· C++数据库 · C++网络
热门文章
· 用TreeView浏览目录
· 如何取得Memo的行和列..
· 改变DBGrid的颜色
· 如何在RichEdit中实现..
· 在BCB中实现TRichEdit..
· 通过修改VCL源码实现自..
· 雕虫小计—颜色渐变的..
· 如何快速自动生成并定..
· 打印Memo的文本信息
· CB编程中动态更改自定..
· 直接发送数据到打印机..
· 在C++Builder中自定义..
相关文章

· 在C++Builder利用Ne..
· 在C++Builder中编写..
· 在CB5中使用ADO数据..
· 在C++Builder中使用..
· 如何在C++Builder中..
· 在CB6下基于api函数..
· 在CB程序中控制Wind..
· 在C++ Builder中实现..
· Win9x下隐藏程序不出..
· 在CB中进行DirectX编..
查看更多与在C++Builder中自定义预览窗口相关内容

在C++Builder中自定义预览窗口
作者:幽火  来源:www.5ihack.com  发布时间:2007-1-8 17:29:27  发布人:ghostfire

减小字体 增大字体

  Borland C++ Builder是基于C++语言的可视化编程环境,它提供了可重用组件库和一系列RAD设计工具,使得编程者只需用少量的手工代码就可以创建出高效的Windows应用程序,尤其是复杂的数据库访问应用程序,因此深受软件开发人员的喜爱。

  在开发数据库访问应用程序时,会经常涉及到报表的打印问题。C++ Builder中提供了Quick Report(快速报表)组件供编程人员设计报表。Quick Report是挪威的QuSoft AS公司专门为C++ Builder设计的用于制作报表的一组控件,在C++ Builder中关于Quick Report的帮助文档不是很详细。另外它与C++ Builder的其他控件的风格也不太一致。直接使用Quick Report的报表预览功能总是不能达到令人满意的效果,因此有必要自定义快速报表的预览窗口。

  设置预览窗口

  新建工程,在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();

查看更多与在C++Builder中自定义预览窗口相关内容

[ ] [返回上一页] [打 印] [收 藏]
上一篇文章:
下一篇文章:
      如何获取打印机参数       直接发送数据到打印机
∷相关文章评论∷   (评论内容只代表网友观点,与本站立场无关!) [发表评论]
 
 
 
 
晋ICP备05008232   维护网络安全、传播安全技术才是我们的目标! 
 
关于本站 - 网站帮助 - - 下载声明 - 友情连接 -网站地图