如何在VB6 Addin中使用VBIDE以编程方式打印源代码..?

时间:2016-12-26 23:16:28

标签: vb6 vbide

如何以编程方式在VB6 Addin中打印源代码..?我在对象浏览器中找不到VBIDE的打印或预览方法。

我搜索过高和低在谷歌上很低,并且在VBIDE代码模块打印方面缺乏信息。我为PrettyPrint获得了很多热门,但就是这样。缺乏是如此之大,以至于我想知道是否存在一些我完全缺失的基本概念。

我害怕Herb在https://stackoverflow.com/a/41034211/2705042中提到的O'Reilly书的副本,并没有提到源代码的打印。我能看到的唯一方法是将代码导出到文本文件,并通过与VBIDE无关的常用方法打印出来。

我还在http://www.cpearson.com/excel/vbe.aspx检查了Chip Pearson的VBE指南,它几乎与VBIDE相同,甚至没有打印代码的线索,除了我提到的保存到文本文件然后打印的想法

**理想情况下,我想使用现有的VB6文件>打印对话框,添加了一个额外的复选框。我意识到在现有对话框中添加控件是另一个主题,我不反对创建我自己的打印对话框版本。

1 个答案:

答案 0 :(得分:2)

可以使用CommandBarButton代理和SendKeys。

获取Print CommandBarControl的句柄很简单,但是按下按钮会以你的方式抛出一个对话框,所以我们必须使用SendKeys设置选项并提交表单....

您可以使用类似于以下内容的代码:

Dim printCommand As CommandBarControl
Set printCommand = Application.VBE.CommandBars.FindControl(ID:=4)

printCommand.Execute

'Yep, SendKeys, erghhh
Application.SendKeys "P" 'Force the whole project to print
Application.SendKeys "{ENTER}"