首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

又要发疯啦,小弟我的PRINTER对象居然缺少方法,搞定就散分!

2012-01-22 
又要发疯啦,我的PRINTER对象居然缺少方法,大家来帮忙啊,搞定就散分!!!!!!!!!一开始,偶定义了一个打印机对

又要发疯啦,我的PRINTER对象居然缺少方法,大家来帮忙啊,搞定就散分!!!!!!!!!
一开始,偶定义了一个打印机对象:
DIM   Printer1   AS   Printer
然后就开始使用了:
...
With   Printer1
      .NewDoc         '没记错的话应该是这个开始吧,但是我的VB上居然跳不出着个方法
      .CurrentX   =   ...
      .CurrentY   =   ...       '
      .Print   "... "       '等等,这个方法我也没有记错吧,可还是跳不出来
      .EndDoc                 '可笑的是这个方法却能跳出来
End   With
...

郁闷中...
明天就要做打印功能测试,居然卡在这里了,无语中...


[解决办法]
我的printer.后面有很多东东,哈哈。。。。。。

直接用printer. 就行了

如果不行的话,很有可能你没安装打印机驱动程序,或根本没有打印机???!!!!
[解决办法]
或者不管它,试试输入 .endoc (小写) 看看它会不会自动转成首字大写,如果会应该可以运行,又可能是你的vb设置里面不要自动提示。
[解决办法]
不对吧,我的也没有NewDoc阿
[解决办法]
不要用with printer ......end with
[解决办法]
学习,顶!
[解决办法]
VB里面的printer有时很邪门,没道理可讲。
我的经验是:正如stlyl(stlyl(维生素B))说的,VB的printer有时他就是不能用with,只能老实地采用 printer.方法(或属性)才不会出错。
我的推测是:比方讲 printer.print 与其说是方法调用,还不如说是vb这种语言固定的语句。
再比如讲:你要获得printer的hdc,如果在此之前没有对printer的任何调用的话,那你得不到你想要的,正确的方法是:
printer.print " "
h=printer.hdc
事实就是这样的,没有办法。
[解决办法]
printer.print不出来,但是print会变大写,变蓝吧,那就能用,NewDoc就不能变大写变蓝
[解决办法]
对不要用WITH 直接使用.
测试通过
Printer.CurrentX = 0
Printer.CurrentY = 100
Printer.Print "中国人民解放了. " & Printer.Page '等等,这个方法我也没有记错吧,可还是跳不出来
Printer.NewPage
Printer.CurrentX = 0
Printer.CurrentY = 100
Printer.Print "中国人民解放了. " & Printer.Page '等等,这个方法我也没有记错吧,可还是跳不出来
Printer.EndDoc '可笑的是这个方法却能跳出来

[解决办法]
我支用过PRINT插件,不过还是帮顶一下!
With vp
.Clear
.AbortCaption = "Printing...... "
.MarginLeft = 50
.MarginRight = 50

.StartDoc

.FontSize = 12
.FontBold = True
.Paragraph = Space(50) & "不知道这样行不行! "
.FontBold = False

.EndDoc
End With
[解决办法]
这样好像可以的
Private Sub Command1_Click()
Dim op As Object
Set Printer = Printers(cmbPrinterName.ListIndex)
Set op = Printer

With op
.CurrentX = 0
.CurrentY = 100
.CurrentX = 100
.CurrentY = 500

End With
op.Print "I love you " & Printer.Page
Printer.EndDoc
End Sub

Private Sub Form_Load()
Dim i As Long
For i = 0 To Printers.Count - 1
cmbPrinterName.AddItem Printers(i).DeviceName
If Printers(i).DeviceName = Printer.DeviceName Then cmbPrinterName.ListIndex = i
Next i
End Sub

[解决办法]


N年 不用了VB
顶,
[解决办法]
.Print "... " '等等,这个方法我也没有记错吧,可还是跳不出来
==========================================================
VB内置的对象的,很多不能自动弹出Print方法
比如form,picturebox都不可以,但是可以直接用?代替
[解决办法]
印象中

.newpage

……
.enddoc

是配对使用的
[解决办法]
一开始,偶定义了一个打印机对象:
DIM Printer1 AS Printer '但我不知道你是否给Printer1创建实例,如set Printer1=printer
然后就开始使用了:
...
With Printer1
.NewDoc '好像是newpage
.CurrentX = ...
.CurrentY = ... '
.Print "... " '等等,这个方法我也没有记错吧,可还是跳不出来
.EndDoc '可笑的是这个方法却能跳出来
End With
...
有些虚拟打印机会有一些莫名其妙的问题,如Xchang pdf
你用真实打印机试

热点排行