如何实现一个打印预览窗口(100分)

  • 主题发起人 主题发起人 http_www_com
  • 开始时间 开始时间
H

http_www_com

Unregistered / Unconfirmed
GUEST, unregistred user!
我做了一个报表设计器,可画线,图,矩形,放上数据集,如何做打印预览(把上面画的东东,如何控制
设计元素的位置)打印出来,我对打印很模糊,希望高手指点,希望从TPanel继承开始设计,给点思路
100分,就这么多了,拜拖了
 
如果要的话,我可以给你一个BAKUBAKU的EASYGRID的控件,里面有PREVIEW的设计源代码

你可以看看。

我的想法是:其实要预览,就是要给用户看打印的效果。因此,说到编程,就是
写一个窗体类,在窗体类里定义要显示的元素,供其他窗体类调用。
至于要从TPANEL继承。我个人觉得,是可行的。我自己写给自己用的一些控件,
也都是用TPANEL。因为,这样容易转成OCX的方式(可能自己比较笨,就会从TPANEL继承)
使用TPANEL还有一点原因,因为TPANEL本身就是从TCustomPanel继承来的。

说了这么多废话,还是看看EASYGRID控件吧。
http://delphi.mychangshu.com/downfile.asp?ID=680&location=EasyGrid-V6.zip
 
谢谢lovefox,我想在主要是感觉从设计器到预览这一步怎么过渡,没什么头绪,对打印的各种
映射,感到有些模糊,请高手能提供一些文章,讲解一下基本原理,急急急急
 
怎么没人跟贴啊,难道问题太简单大家都懒得回答,还请高手们帮帮我,拜托了,
 
说穿了很简单,知识比较烦!
所有的打印,都是将文字、图片、线条等,在Printer的Canvas上面画出来而已,如果要做
打印预览,知识将送往Printer.Canvas的内容,送到指定的其他Canvas上,比如窗体、
TPanel等的Canvas上。只是由于打印机和屏幕的分辨率、每英寸点数、纵横比不同,
作一些转换就可以了。如此如此。千万仔细一些,考虑周全一些。OK!
 
to kthy
感谢kthy , 我知道是在Canvas上画图但从设计器上向画板上过度如何做,那些东东都是
动态产生的,如何才能实现映射,如果单纯向打印机上输出排列的文字,那时很简单的,....
 
后退
顶部