お世話になっております。
「プレビューウィンドウを最大化」と「ウィンドウ内に収まるサイズで表示」という2つの問題は「wrClosePrinterEx関数」で実現できます。
wrClosePrinterEx関数は途中から機能追加という形で追加された関数ですのでモジュールを最新ものに置き換えてからご使用下さい。
なおwrClosePrinterEx関数におきましては機能追加という形でヘルプなどには記載されていないかと思われますので簡略的ではありますが説明させて頂きます。
wrClosePrinterEx関数は、wrClosePrinter関数の機能に加え、追加されたパラメータによりプレビューウィンドウを制御可能にします。
印刷モード(nPrintMode)がWRP_MDPREVIEW(印刷イメージの画面表示)の時のみ有効となります。
第3パラメータまではwrClosePrinterと同様のパラメータを設定して下さい。
第4パラメータからは下記のように指定してください。
第4パラメータ
nxPos プレビューウィンドウの表示位置(X座標)を指定します。
第5パラメータ
nyPos プレビューウィンドウの表示位置(Y座標)を指定します。
第6パラメータ
nxSize プレビューウィンドウのサイズ(X座標)を指定します。
第7パラメータ
nySize プレビューウィンドウのサイズ(Y座標)を指定します。
第8パラメータ
nySize 印刷イメージの表示方式を設定します。
0 :従来通りのイメージを表示します。
0以外の値:イメージの全体を表示します。
戻り値
関数が正常に終了した場合は0以外の値を返します。
それ以外の場合は0を返します。
詳細なエラーコードを取得する場合はwrGetErrorCodeを使用して下さい。
内部定義の値は下記の通りです。
WR_WS_MAXIMIZE = 0x00000001
WR_WS_EXPOS = 0x00000002
WR_WS_EXSIZE = 0x00000004
wrClosePrinterEx関数は以上のような設定となっていますので今回のケースですと
現在使用しているwrClosePrinter関数をwrClosePrinterEx関数に下記のように置き換えて頂ければ問題は解決されると思われます。
wrClosePrinterEx(Hreport, True, False, WR_WS_MAXIMIZE, 0, 0, 0, 0, 1)
以上、宜しくお願い致します。