爱问知识人 爱问教育 医院库

VB程序如何调用打印机打印图片框内容

首页

VB程序如何调用打印机打印图片框内容

在制作程序中不知道怎样实现利用打印机打印图片框里面的内容,各位能帮个忙,支个招吗??

提交回答
好评回答
  • 2018-03-31 11:08:41
      Visual Basic应用程序的几种打印方法
      打印是编制应用程序过程中最复杂的事情之一,不同的打印机提供了各种不同的功能。编写能充分利用打印机性能的子程序与编写应用程序的其它部分一样都很困难。庆幸的微软的Windows平台使打印工作变得相对容易了。
         最近,笔者编制出一套综合试题库管理系统,完成试题的编辑、自动组卷及打印试卷等工作,在编程时,也碰到了打印问题,笔者找到了几种打印方法,现将它们整理出来,以飧读者,希望能给您的工作提供一点方便。   一、采用Visual Basic提供简单的打印函数PrintForm方法   应用程序窗体的PrintForm方法时,Visual Basic把窗体的位图送到当前打印机。
      该方法的优点在于它几乎不需要任何编程,但也有很大缺陷。最为突出的是当低分辨率图形在高分辨率打印机上打印时,其结果令人无法满意,会产生锯齿。下面代码将在打印机上打印窗体。 Private Sub Command1_Click() '用PrintForm打印 Me。
      PrintForm '打印窗体的可见区域 End Sub   二、用Printer对象   用Printer对象可以进行高分辨率输出,但要想产生复杂的打印输出,编程较为繁琐。Printer对象代表系统确省的打印机。Printer对象支持许多由窗体和图形框所支持的属性和方法,三种对象都有画线和画方框。
      应用程序可用以下列代码在Printer对象上画出一平方英寸的方框。它离左上角二英寸。注意:打印机以twips来测量距离。每英寸有1440个twips。 Printer。Line(2*1440,2*1440)-Step(1440,1440), ,B   打印机、从窗体和图形框都有Circle、PaintPicture、Print、Pset、TextHeight、TextWidth方法。
      使用这些方法,应用程序可以为打印机生成高分辨率输出。   打印文本直接用Print方法,见下列代码: Printer。Print “Hello,China ComputerWorld!” ‘打印字符串   Printer对象还有一些窗体和图形框都没有方法:   ·NewPage告诉打印机,程序对当前输出页的发送已经结束。
      Printer对象应开始新的一页。   ·EndDoc告诉Visual Basic,程序创建文档结束。VISUAL BASIC应将它发送到物理打印机上打印。   ·KillDoc取消当前打印作业。应用程序应该终止由EndDoc和KillDoc所设定的每个打印作业。
         ·Zoom属性用于定义打印输出的缩放因子。   ·Copies属性用于定义打印的副本数目。     三、采用直接将数据传送打印机的方法进行打印输出   该方法也不太实用。有两种方法将数据送往打印机。第一种是用Print # 方法,就象将数据写入一个文件一样写数据。
      另一种方法写端口,但不是送文本,而是送特定的PCL语言,PCL表示打印控制语言(Print Control Language)。它是一种特殊语言,用转义代码来控制打印机的具体动作。因为此方法太繁琐,本文不做太多介绍,见谅。   四、使用RichTextBox控件的SelPrint方法   如果你在编程时用到了RichTextBox控制,那么你可以使用该控件的SelPrint 方法来打印,使用非常简单。
      下面一段代码即用RichTextBox控件的SelPrint 方法来完成打印。 Private Sub Command3_Click() 'SelPrint方法 CommonDialog1。Flags = cdlPDReturnDC + cdlPDNoPageNums If RTF1。
      SelLength = 0 Then 'RTF1为窗体的RichTextBox控制 CommonDialog1。Flags = CommonDialog1。Flags + cdlPDAllPages Else CommonDialog1。
      Flags = CommonDialog1。Flags + cdlPDSelection End If CommonDialog1。CancelError = True On Error Resume Next CommonDialog1。
      ShowPrinter If Err。Number = cdlCancel Then Exit Sub If Err。Number 0 Then Beep MsgBox "Error printing file。 " & vbCrLf + Err。
      Description, vbOKOnly + vbExclamation, "Printing Error!" Exit Sub End If Printer。Print "" RTF1。SelPrint CommonDialog1。
      hDC ' 打印RTF1控件的可见区域 End Sub 更多客访问 。

    C***

    2018-03-31 11:08:41

类似问题

换一换

相关推荐

正在加载...
最新资料 推荐信息 热点推荐
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200

热点检索

  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
返回
顶部
帮助 意见
反馈

确定举报此问题

举报原因(必选):