【发布时间】:2014-06-19 12:32:09
【问题描述】:
我目前正在做一个非常简单的项目:当我按下一个按钮时,我当前所处的表单就会被打印出来(就像一个打印屏幕)。
我使用 Self.Print 方法;在上述按钮中,一切正常。我的按钮、标签和文本框都被打印出来了。问题是,我尝试打印的表单中有一个 RichEdit,当页面从打印机中出来时,RichEdit 是空白的。
我知道有更好的方法从表单中打印信息,但这是按钮必须工作的当前方式。
我发现一些论坛的主题从 2003 年开始说要么不可能,要么我必须使用 RichEdit.Print 方法,但这意味着打印机打印出 2 页而不是 1 页。
有没有更好的方法打印整个包裹?
【问题讨论】:
-
您可以将表单捕获为图形(如 PNG 或位图)并打印出来。
-
RichEdit 的所有内容是否都显示在屏幕上,或者是否有一些必须滚动到视图中?
-
这取决于应用程序的用户在 RichEdit 中编写的内容,因此可能需要滚动才能看到文本的结尾。
-
如果是这种情况,那么可靠地做到这一点的唯一方法是使用某种报告工具,如 Fast Reports、Rave 或 Report Builder 来生成您需要的格式化输出。
-
那你就倒霉了。 Windows 不会绘制不可见的窗口区域;调用 RichEdit.Print 以专门的方式处理屏幕外内容的绘制。您可能正处于需要实际设计报告而不是仅仅尝试打印屏幕的地步。
标签: delphi delphi-2007