乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 15|回复: 0

关于网络打印机的问题

[复制链接]

26

主题

42

帖子

6

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
146
发表于 2007-9-27 09:46:00 | 显示全部楼层 |阅读模式
最近我用VBA设计了一个批打印程序,遇到了一个问题:我使用的是局域网的打印机,其它的设置如打印机选择、打印方向、打印比表等都已经设计好了,并运行正确。但是,我不知道怎样选择网络打印机的纸张。在所有的纸张列表中就只有CAD默认的纸张列表(没有A3和A4),选择不了网络打印机的纸张列表,程序如下,请高手指点一下,怎样选择网络打印机的纸张。
Private Sub cmdCancel_Click()
    End
End Sub
Private Sub cmdDelete_Click()
    '确认列表框包含列表项
    If lstFile.ListCount >= 1 Then
        '如果没有选中的内容,用上一次的列表项。
        If lstFile.ListIndex = -1 Then
            MsgBox "请选择列表中的图形名称!"
            Exit Sub
        End If
        lstFile.RemoveItem (lstFile.ListIndex)
    End If
End Sub
Private Sub cmdOk_Click()
   Dim i As Integer
   Dim ii As Integer
   Dim zz As Integer
   Dim drn As String
   Dim drn1 As String
If lstFile.ListCount = 0 Then
MsgBox "请添加所要操作的图形!"
Exit Sub
End If
If ComboBox1.Text = "" Then
          MsgBox "请添加所要操作的图形!"
          End If
           Select Case (ComboBox1.Text)
           Case Is = "HP-0"
           AAPRINTER = ""
            Case Is = "HP-1"
           AAPRINTER = ""
            Case Is = "HP-3"
           AAPRINTER = ""
            Case Is = "HP-4"
           AAPRINTER = ""
           End Select
drn2 = TextBox2.Text
zz = 1
   For ii = 1 To Len(drn2)
   ii = InStr(zz, drn2, Chr(92))
   If ii = 0 Then Exit For
      zz = ii + 1
   Next ii
   drn = Mid(drn2, zz)
frmMain.hide
For i = 0 To lstFile.ListCount - 1
drn1 = lstFile.List(i)
Application.Documents.Open drn1
ThisDrawing.ActiveLayout.RefreshPlotDeviceInfo
       Dim currentPlot As AcadPlot
    Set currentPlot = ThisDrawing.Plot
      ThisDrawing.ActiveLayout.PlotType = acExtents
        ThisDrawing.ActiveLayout.StandardScale = acScaleToFit
           ThisDrawing.ActiveLayout.StyleSheet = drn
           ThisDrawing.ActiveLayout.PlotRotation = ac90degrees
          ThisDrawing.ActiveLayout.CanonicalMediaName = ComboBox2.Text
          currentPlot.PlotToDevice AAPRINTER
          Application.ActiveDocument.Close False, drn1
Next i
End Sub
Private Sub cmdOpen_Click()
    On Error GoTo errHandle
   
    Dim i As Integer
    Dim Y As Integer
    Dim z As Integer
    Dim FileNames() As String
   
    With comDlg
        .CancelError = True
        .MaxFileSize = 32767
        .Flags = cdlOFNHideReadOnly Or cdlOFNAllowMultiselect Or cdlOFNExplorer Or cdlOFNNoDereferenceLinks
        .DialogTitle = "选择图形文件"
        .filter = "图形文件(*.dwg)|*.dwg|所有文件(*.*)|*.*"
        .FileName = ""
        .ShowOpen
    End With
   
    comDlg.FileName = comDlg.FileName & Chr(0)  '这些文件名是用空字符Chr(0)分隔符,而不是空格分隔符隔开
   
    z = 1
    For i = 1 To Len(comDlg.FileName)
        'InStr函数,返回 Variant (Long),指定一字符串在另一字符串中最先出现的位置。
        '语法 InStr(起点位置, string1, string2)
        i = InStr(z, comDlg.FileName, Chr(0))
        If i = 0 Then Exit For
        ReDim Preserve FileNames(Y)
        'Mid函数,返回 Variant (String),其中包含字符串中指定数量的字符。
        '语法 Mid(string, start[, length])
        FileNames(Y) = Mid(comDlg.FileName, z, i - z)
        z = i + 1
        Y = Y + 1
    Next i
    '向列表框中添加对象
    Dim count As Integer
    count = lstFile.ListCount
    If Y = 1 Then
        lstFile.AddItem FileNames(count), 0
    Else
        For i = 1 To Y - 1
            FileNames(i) = FileNames(0) & "\" & FileNames(i)
            lstFile.AddItem FileNames(i), i - 1 + count
        Next i
    End If
errHandle:
End Sub
Private Sub CommandButton2_Click()
On Error GoTo errHandle
   
    Dim i As Integer
    Dim Y As Integer
    Dim z As Integer
    Dim FileNames() As String
   
    With comDlg
        .CancelError = True
        .MaxFileSize = 32767
        .Flags = cdlOFNHideReadOnly Or cdlOFNAllowMultiselect Or cdlOFNExplorer Or cdlOFNNoDereferenceLinks
        .DialogTitle = "选择CTB文件"
        .filter = "数据文件(*.ctb)|*.ctb|所有文件(*.*)|*.*"
        .FileName = ""
        .ShowOpen
    End With
   TextBox2.Text = comDlg.FileName
errHandle:
End Sub
Private Sub UserForm_Initialize()
    lstFile.Clear
    ComboBox1.AddItem ("HP-0")
    ComboBox1.AddItem ("HP-1")
    ComboBox1.AddItem ("HP-3")
    ComboBox1.AddItem ("HP-4")
    ComboBox2.AddItem ("A3")
    ComboBox2.AddItem ("A4")
      End Sub

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-6 10:12 , Processed in 0.675003 second(s), 54 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表