我想了解HasMorePages的PrintPageEventArgs属性是什么,为什么要使用它,它是如何工作的。
MSDN库并没有真正有一个很好的解释。 所有他们说的是,如果你把它设置为true,PrintPage事件再次调用。 那是意味着对自身的事件循环没有留下或离开,并再次调用本身还是依赖于你再次打电话给PrintPage事件?
我只是想了解PrintPageEventArgs.hasmorepages财产。 任何提示或帮助将不胜感激。
谢谢,
我想了解HasMorePages的PrintPageEventArgs属性是什么,为什么要使用它,它是如何工作的。
MSDN库并没有真正有一个很好的解释。 所有他们说的是,如果你把它设置为true,PrintPage事件再次调用。 那是意味着对自身的事件循环没有留下或离开,并再次调用本身还是依赖于你再次打电话给PrintPage事件?
我只是想了解PrintPageEventArgs.hasmorepages财产。 任何提示或帮助将不胜感激。
谢谢,
HasMorePages
是一个布尔属性PrintPageEventArgs
您作为事件的参数。 将它设置为True
打印当前页之后,如果有要打印的页数,或False
,如果当前页面是最后一个。
事件总是要求你通过在框架的东西,并且从不应该是由你直接调用。 他们的活动 ,这意味着他们派出告诉你出事了,给你一个机会反应或反应。
如果您将其设置为True
,则PrintPage
事件再次自动调用; 你不要自己调用它。 (这正是MSDN文档这样说:如果你把它设置为true,PrintPage事件再次被调用这并不是说你需要再次调用它 -它说再次调用 。)
ev.HasMorePages := DoYouHaveMorePagesToPrint;
对于事件的VB.NET例子,如何使用ev.HasMorePages
,看到了PrintDocument的MSDN文档 。 有关信息PrintPageEventArgs
,看到这个MSDN页面 ,其中有一个链接到PrintPageEventArgs成员 (包括HasMorePages
)。
这不是一个的PrintDocument的属性,它是PrintPageEventArgs的属性。 其中的一个实例被传递给你的PrintPage事件处理程序。
在PrintController和PrintDocument的类工作严重影响的方式印刷的方法是在Windows系统上实现。 核心实现细节是,它是基于页面的 。 并以每次一个页面打印机驱动程序交易,潜在的WINAPI功能的起始页()。 呈现到打印设备方面的任何一个页面上结束。 随后,尾页()函数WINAPI完成的页面,并将其提交到后台打印程序。
这可能有助于图打印3页的文档,而发出的呼吁:
StartDoc()
PrintDocument.BeginPrint event
StartPage()
PrintDocument.PrintPage event, e.HasMorePages = true
EndPage()
StartPage()
PrintDocument.PrintPage event, e.HasMorePages = true
EndPage()
StartPage()
PrintDocument.PrintPage event, e.HasMorePages = false
EndPage()
PrintDocument.EndPrint event
EndDoc()
它应该是明确的,现在,通过分配e.HasMorePage = true,则让PrintController持续触发PrintPage事件。 它是由你来分页文档,并呈现正确的页面在你的PrintPage事件处理程序的内容。 你需要的BeginPrint事件,比方说,你的内部页面计数器设置为0。