名前 題名 ▼ Andyさん > ▼ Mr.XRAYさん > > コードまで書いていただきありがとうございました。 > プリンターセットの設定をコンボやエディットで変更して > プレビューボタンで変更とした場合うまくいかなかったので > (自分のやり方がまずいかもしれませんが)、又、色々やってまして > 結局、FormPanel2サンプルを参考にし、plSetPrinterとplPrev1をそのつど > 作成し、プリンターセットルーチンに渡すようにしました。 > これでなんとか、変更できるようになりました。 > どうも、アドバイスをありがとうございました。(感謝!) > > > > > > TplPrevのサンプル[EnterForm]ですね. > > これは逐次表示方式ですので,以下の方法できます. > > > > plPrev1のBtnOptionプロパティのboPrinterSetBtnをTrueにします. > > すると,プレビューすると[プリンタ設定]ボタンが表示されます. > > このボタンのクリックイベントを作成します. > > > > procedure TEnterForm.PrinterSetBtnClick(Sender: TObject); > > begin > > //継承元のコードを実行 > > inherited; > > //保存する場合は以下のコードを追加 > > plPrev1.plSetPrinter.SaveToFile('PrinterSetting.plv'); > > end; > > > > これだけです.また上のコードで設定を保存し,プレビューの時にその設定 > > を使用したい場合は,plPrev1のOnFormShowイベント内で読出します. > > > > procedure TEnterForm.plPrev1FormShow(Sender: TObject); > > begin > > plPrev1.Title:='郵便払込取扱票入力画面'; > > > > //現実のアプリではデータベース等からの読出しに相当 > > Edit1.Text:='31500'; > > Edit2.Text:='ボーランドジャパン株式会社'; > > Edit3.Text:='151-8533'; > > Edit4.Text:='東京都渋谷区笹塚1-50-1'; > > Edit5.Text:='笹塚NAビルディング'; > > Edit6.Text:='□□□□ソフト株式会社'; > > Edit7.Text:='□□ □'; > > Edit8.Text:='03-1234-5678'; > > > > //払込用紙の大きさは横180.0mm縦115.0mm > > MyPaperWidth :=1800; > > MyPaperHeight:=1150; > > > > //保存したプリンタの設定を読出す > > plPrev1.plSetPrinter.LoadFromFile('PrinterSetting.plv'); > > //用紙の表示サイズと同じユーザ定義用紙を作成 > > // plPrev1.plSetPrinter.SetUserPaper > > // ('払込用紙',MyPaperWidth,MyPaperHeight); > > > > //表示幅も無効にする > > // plPrev1.ViewWidth :=MyPaperWidth; > > // plPrev1.ViewHeight:=MyPaperHeight; > > > > //描画ルーチン指定 > > plPrev1.ProcName :=DrawTest; > > //入力開始位置にフォーカスをセット > > ActiveControl:=Edit1; > > //このフォームを表示するのでShowModalメソッドは不要 > > end; > > > > また,プレビューフォームにボタン等を配置して設定する場合は,再表示の後, > > 設定後のプリンタのプロパティ値を > > > > plPrev1.Display(表示頁番号); > > plPrev1.plSetPrinter.GetPrinterInfo; //(引数なし) > > > > のようにして,取得してから保存します. GIF,JPEG,PNG画像ファイル及びLZH,ZIPファイルをアップロードできます.600 x 1200 ピクセルを超える画像は縮小表示されます(画像クリックで拡大表示). (上限122000(120k)バイト) 削除キー Link