tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板) [ツリー表示へ]   [Home]
一括表示(VB.NET VB2005)
タイトルプリンタ用紙サイズ
記事No6283
投稿日: 2007/09/12(Wed) 08:40
投稿者masami
下記PGはVBで作成したものです。
これをVB.Netに乗せ変えたいのですがPrinterの箇所をどう設定していいのかわかりません。。。
ネット等を調べてやってみたのですが
Printerの箇所を「Drawing.Printing.PrintDocument」にすることしかわかりませんでした。
しかしA3を代入しようとすると「PaperSizeはDrawing.Printing.PrintDocumentのメンバではありません」とエラーになります。
どのように設定したらいいのでしょうか?

Dim dblWidth        As Double
Dim dblHeight       As Double
Dim objPrinter      As Printer

objPrinter.PaperSize = "A3"
Set Printer = objPrinter

dblWidth = Printer.Width
dblHeight = Printer.Height

    :
    :
    :

[ツリー表示へ]
タイトルRe: プリンタ用紙サイズ
記事No6284
投稿日: 2007/09/12(Wed) 09:28
投稿者NANAC
これじゃ駄目だった?

用紙サイズの取得及び設定・印刷部数・印刷方向の設定
http://hanatyan.sakura.ne.jp/dotnet/Prt08.htm

[ツリー表示へ]
タイトルRe^2: プリンタ用紙サイズ
記事No6286
投稿日: 2007/09/12(Wed) 10:11
投稿者masami
> これじゃ駄目だった?
>
> 用紙サイズの取得及び設定・印刷部数・印刷方向の設定
> http://hanatyan.sakura.ne.jp/dotnet/Prt08.htm


レスありがとうございます。
こちらのサイトは参考にさせて頂きました。

画面上のコンボボックスより用紙を設定して
下記のように代入しました。

pPaperSz = PstrPaperSize("A3       297 x 420 mm")

PstrPaperSize("A3       297 x 420 mm")
の用紙サイズを取得したいのですが
その後のFor文できちんと値が取得できていないようです。。。


VB側で行うと
    objPrinter.PaperSize = PstrPaperSize
    Set Printer = objPrinter

    dblWidth = Printer.Width
    dblHeight = Printer.Height

dblWidth = 23810
dblHeight = 16836
と取得されます。

[ツリー表示へ]
タイトルRe^3: プリンタ用紙サイズ
記事No6287
投稿日: 2007/09/12(Wed) 11:35
投稿者masami
すみません…。
勘違いしてたのですが、
取得したプリンターの印刷設定で設定されているデフォルトの用紙向きの縦・横のサイズを取得したいです。

先ほど教えてくれたサイトは自分で向きを設定するということでしたが
サイズ等は取得できるのでしょうか?

[ツリー表示へ]
タイトルRe^4: プリンタ用紙サイズ
記事No6288
投稿日: 2007/09/12(Wed) 12:01
投稿者NANAC
さっきのサイト・・・・ココノサイトナンダガ・・・

http://hanatyan.sakura.ne.jp/dotnet/PrintFle.htm

[ツリー表示へ]
タイトルRe^5: プリンタ用紙サイズ
記事No6289
投稿日: 2007/09/12(Wed) 14:31
投稿者masami
> さっきのサイト・・・・ココノサイトナンダガ・・・
>
> http://hanatyan.sakura.ne.jp/dotnet/PrintFle.htm

度々、すみませんでした。
一応、エラーなくできるようになったのですが用紙向きの縦・横のサイズの取得がイマイチうまくいきません。

VB
objPrinter.PaperSize = PstrPaperSize

.Net
pd.DefaultPageSettings.PaperSize = CType(FrmMain.cmbPaperSize.SelectedItem, System.Drawing.Printing.PaperSize)

VB
Set Printer = objPrinter

???

Set Printer = objPrinter の箇所が必要なのでしょうか?

[ツリー表示へ]