PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
15331 01/05/24 12:26:06 RE(4):PB5.0.04: 印刷時の部数指定 By マックス
15330 01/05/24 12:18:28 RE(3):PB5.0.04: 印刷時の部数指定 By マックス
15329 01/05/23 21:29:27 RE(2):PB5.0.04: 印刷時の部数指定 By あすかちゃんの父
15326 01/05/23 20:14:52 RE(1):PB5.0.04: 印刷時の部数指定 By M.M
15322 01/05/23 18:52:14 PB5.0.04: 印刷時の部数指定 By マックス

カテゴリ:印刷処理
日付:2001年05月23日 21:29 発信者:あすかちゃんの父
題名:RE(2):PB5.0.04: 印刷時の部数指定

マックスさん、こんばんは。

>PFCの機能(pfc_Print)を使用して印刷を行おうとすると、
>あるケースにおいて部数の指定が効かない事があります。

>私が調べた範囲ではDLL(pfccom32.dll)で提供されている関数(pfc_printdlg)に問題があり、
>印刷ダイアログでユーザーが指定した値がセットされず、部数が必ず\'1\'になるようです。

厳密にはWindowsのコモンダイアログ(comdlg32.dll)のAPI
のバグです(pfc_printdlgはこのAPIのラッパー関数)。
引数の印刷ページ数が1枚の場合に、部数の戻り値が常に1に
なってしまいます。
私もPFCを使っていまして、対策としてof_PrintDlgを改造し
て、印刷ページ数が1枚の場合は引数を2に修正するようにし
て回避しています。
改造内容は、下記の通りです。尚引数は構造体です。


ll_hwnd = handle (aw_obj)
if ll_hwnd = 0 then
  return -1
end if

// 以下3行追加
if astr_printdlg.l_maxpage = 1 then
  astr_printdlg.l_maxpage = 2
end if

return pfc_printdlg (ll_hwnd, astr_printdlg)


PFCはメッセージルータとか、面白い機能を実装しているので
あちこちいじって使っています。

付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows NT 4.0
DBMS Oracle SQL*Net 8
Browser (記載なし)

Server SoftWare

OS (記載なし)
DBMS Oracle 8.0
WebServer (記載なし)

PowerSpaceの運営は、パワーフューチャー株式会社が行っております。
Copyright © 2013 Power Future Co., Ltd.