[リストへもどる]
一括表示

投稿時間:2002/11/01(Fri) 07:22
投稿者名:CWA
URL :
タイトル:
VB Printer オブジェクト
VB6 SP5 の環境で、PrinterオブジェクトのPrintメソッドを呼び出そうとしても、リストに表示されません。 他のプロパティやメソッドは、あるのですが・・・
Objブラウザーで見ても、やっぱりありません。
どうしたら、いいのでしょうか? 教えてください。

投稿時間:2002/11/01(Fri) 07:40
投稿者名:K.J.K.
Eメール:akiya@koalanet.ne.jp
URL :
タイトル:
Re: VB Printer オブジェクト
Quick BASICの仕様を引きずった一部のメソッドではそういう
ことがあります。PrintやLineメソッドがそれにあたります。

で、
Printer.Print "あえいうえおあおあえいおう"
とかすれば出力されますよね。

投稿時間:2002/11/01(Fri) 08:23
投稿者名:Say
Eメール:
URL :
タイトル:
Re: VB Printer オブジェクト
参考までに…
描画関係のメソッド・プロパティはPrinterオブジェクトとPictureBoxでかなり共通してますので、
Formにプレビュー用PictureBoxを配置し、

Private Sub PrintText(obj As Object, X As Single, Y As Single, strText As String)
    Dim lngTextLen As Long
    obj.ScaleMode = vbPoints
    obj.CurrentX = X + 2
    obj.CurrentY = Y + 2
    obj.Font.Name = "MS ゴシック"
    obj.Font.Size = 12
    lngTextLen = LenB(StrConv(strText, vbFromUnicode)) * 6
    obj.Print strText
    obj.Line (X, Y)-(X + lngTextLen + 4, Y + 12 + 4), vbBlack, B
End Sub

みたいな関数を作っておき、

If mblnPrintFlg = True Then
    '印刷
    Call PrintText(Printer , 10 , 10 , "あいうえお")
Else
    'プレビュー
    Call PrintText(Picture1 , 10 , 10 , "あいうえお")
End If
のように使えば、印刷デザイン時に紙の消費を抑えられます。

投稿時間:2002/11/01(Fri) 11:35
投稿者名:CWA
URL :
タイトル:
ありがとうございます
Printer.Print 文字列 を手打ちで入力したら、無事出来ました。
初心者、本で独学ですので、その通り行かない度につまづいてしまし・・・
助かりました。
Sayさんの御意見も、参考にしてみたいと思います。