private sub set_print()
Open "LPT1:" For Output As #1
Print #1 开始
Print #1 内容
Print #1 内容
Print #1 内容
Print #1 内容
Print #1 结束
Close #1
end sub
Private Sub Command1_Click()
for i=0 to text1.text '//这个地方的text1是界面输入的数据。
call set_print '//调用上面的过程
next
End Sub
这个我是实现把数据输出道LPT1接口,实现打印,如果打印数量(text1输入的数量)为16以下没有问题超过50就提示错误
Run-tiem error '52'
Bad file name or number
错误
应该怎么解决啊?下面是别人给我的方法,可是还是不行:
fnum = FreeFile
Open "LPT1:" For Output As #fnum
Print #fnum 开始
Print #fnum 内容
Print #fnum 内容
Print #fnum 内容
Print #fnum 内容
Print #fnum 结束
Close #fnum请高手指教
Open "LPT1:" For Output As #1
Print #1 开始
Print #1 内容
Print #1 内容
Print #1 内容
Print #1 内容
Print #1 结束
Close #1
end sub
Private Sub Command1_Click()
for i=0 to text1.text '//这个地方的text1是界面输入的数据。
call set_print '//调用上面的过程
next
End Sub
这个我是实现把数据输出道LPT1接口,实现打印,如果打印数量(text1输入的数量)为16以下没有问题超过50就提示错误
Run-tiem error '52'
Bad file name or number
错误
应该怎么解决啊?下面是别人给我的方法,可是还是不行:
fnum = FreeFile
Open "LPT1:" For Output As #fnum
Print #fnum 开始
Print #fnum 内容
Print #fnum 内容
Print #fnum 内容
Print #fnum 内容
Print #fnum 结束
Close #fnum请高手指教
Dim i As Integer
Open "LPT1" For Output As #1
Print #1, Chr(27); Chr(64) '清除原先的打印设置,即初始化
Print #1, Chr(28) & "@" '设置汉字状态
pnt1
Print #1, Chr(28) & "J" '设置汉字纵向打印
pnt1
Print #1, Chr(28) & "K" '设置汉字横向打印状态
Print #1, Chr(27); "3"; Chr(45) '设置换行量宽度
Print #1, Chr(27); "W"; Chr(1) '设置四倍放大
Print #1, Chr(27); "q"; Chr(3) '设置空心字
pnt1
Print #1, Chr(27); Chr(64) '清除原先的打印设置,即初始化
For i = 3 To 24 Step 3 '执行字符间隔调整
Print #1, Chr(28); "S"; Chr(0); Chr(i)
pnt1
Next
Print #1, Chr(28); "S"; Chr(0); Chr(3)
Print #1, Chr(27); "4"; '设置斜体
Print #1, Chr(27); "q"; Chr(3) '设置空心字
pnt1
'Print #1, Chr(28) & "." '切换回西文状态
Close #1
End SubPrivate Sub Form_Load()
Text1 = ""
Open "LPT1" For Output As #1
Print #1, Chr(27); Chr(64) '清除原先的打印设置,即初始化
Close
End SubPublic Sub pnt1()
Print #1, , "LPT1:" & "带有心脏的中英文打印机"
End Sub
Private Sub Command1_Click()
Open "LPT1 " For Output As #1
For I = 1 To 5
Print #1, Chr(10) '控制换行,同Chr(13)
Next
Print #1, Chr(27); "IA "; "ABCDEFGHIJKL " '正常字体每行80字符 "
Print #1, Chr(14); "ABCDEFGHIJKL " '宽体每行40字符
Print #1, Chr(27); "IA " '恢复正常字体
Print #1, Chr(27); "IA "; "ABCDEFGHIJKL " '正常字体每行80字符 "
Print #1, Chr(27); "IB "; "ABCDEFGHIJKL " '横向扩展每行40字符
Print #1, Chr(27); "IC "; "ABCDEFGHIJKL " '纵向扩展每行80字符
Print #1, Chr(27); "E "; "ABCDEFGHIJKL " '加重黑体
Print #1, Chr(27); "F " '取消加重黑体
Print #1, Chr(27); "IA " '恢复正常字体
Print #1, Chr(27); "4 "; "ABCDEFGHIJKL " '斜体
Print #1, Chr(27); "5 " '取消斜体
Print #1, Chr(27); "0 "; "ABCDEFGHIJKL " '打印每吋6行改8行
Print #1, Chr(27); "1 "; "ABCDEFGHIJKL " '重置行间隔为7/72
Print #1, Chr(27); "2 "; "ABCDEFGHIJKL " '重置行间隔为1/6
Print #1, Chr(27); "IA "; "ABCDEFGHIJKL " '正常字体每行80字符 "
'Print #1, Chr(12) '控制换页
Close #1
End Sub
Option Explicit
Dim i As Long
Private Sub set_print()
Open "LPT1:" For Output As #1
Print #1, "开始"
Print #1, "内容"
Print #1, "内容"
Print #1, "内容"
Print #1, "内容"
Print #1, "内容"
Close #1
End Sub
Private Sub Command1_Click()
Timer1.Enabled = True
End SubPrivate Sub Form_Load()
Timer1.Interval = 1000 '此值需要调整
Timer1.Enabled = False
End SubPrivate Sub Timer1_Timer()
Call set_print '调用set_print过程
i = i + 1
If i >= Val(Text1.Text) Then
Timer1.Enabled = False
End If
End Sub
Call set_print '调用set_print过程
i = i + 1
If i >= Val(Text1.Text) Then
i = 0
Timer1.Enabled = False
End If
End Sub
Dim i As Long
Private Sub set_print()
Open "LPT1" For Output As #1
Print #1, "开始"
Print #1, "内容"
Print #1, "内容"
Print #1, "内容"
Print #1, "内容"
Print #1, "内容"
Close #1
End Sub
Private Sub Command1_Click()
Timer1.Enabled = True
End SubPrivate Sub Form_Load()
Timer1.Interval = 1000 '此值需要调整
Timer1.Enabled = False
End SubPrivate Sub Timer1_Timer()
Call set_print '调用set_print过程
i = i + 1
If i >= Val(Text1.Text) Then
i = 0
Timer1.Enabled = False
End If
End Sub
又:通常条码打印机有相同内容重复打印的命令的,不需要循环,仔细看看接口文档。
a=array("开始","内容1","内容2","内容3".....)
Open "LPT1" For Output As #1
Print #1, join(a,vbcrlf)
Close #1
有人提示 建立一个Generic Text/Only的打印机,用Printer.print方式把字符串打印到这个打印机,剩下的工作有windows来解决。
我不知道怎么来实现
fn=Freefile
Open "LPT1:" For Output As #fn Len=Len(rec)
print#fn,rec
close#fn
End sub
没有看懂您的代码可否麻烦说详细一点。非常感谢。