▼ hahahaさん
ども.拙作コンポのご利用ありがとうごさいます.
> plSetPrinter1.LoadFromFile(CuFile);
> のあとに、
> plPrev1.plSetPrinter:= plSetPrinter1;
> を実行すればうまくいくのですが、
> このような仕様なのでしょうか?
これは仕様です.コードを拝見する限り,一つのTplPrevと
TplSetPrinterを使用していますので,plPrevで印刷コードを書く前に
そのplSetPrinterプロパティにセットしないと反映しません.
というのは,plPrevが生成される時に,一番最初のplSetPrinterの
設定を使用します.その後に,plSetPrinterの設定が変更されても
その変更を読み取ってくれません.
多分,plPrev1.plSetPrinter:=plSetPrinter1;
or
plPrev1.plSetPriner.LoadFormFile(CuFile);
でも動作するかも知れません.
この仕様なんですが,複数のplSetPrinerを利用する場合を考えた
ものなんです.もし自動的にplSetPrinterの設定を読み取るように
すると,plSetPrinterが1しかない場合は,という制限をすることに
なるので,それなら,明示的に設定してもらった方がわかりやすい
と考えたものです.
常ににプリンタの設定はファイル(iniファイルも含めて)での読み書だけ
で行うとすれば,仕様の変更は可能だとは思いますが.
(つまり,複数のplSetPrinterの利用は許可しないということです)
ご不便とは思いますが,ご容赦下さい.
|