2006/11/11 (土) 16:19:29 宮 |
いつもお世話になります。環境はWindowsXP Delphi6Personalです。
plPrinterコンポーネントに取り組んでから一週間が過ぎました。
http://homepage2.nifty.com/Mr_XRAY/Delphi/plSamples/index.htm
のRichEdit用のデモプログラムを参考にしながら、一応できあがったのですが
(1)どうしても「設定を保存して再起動した次回にも有効にする」ことができません。
自作・#95;イアログで設定したマージンと印刷方向を保持したいのですが。アプリを終了するとリセットされます。
(2)デモプロの05_RegManagerで RegManager1.IniFileName:=AIniPath;が未定義になります。
RegMngが見つかりません。、標準でしょうか。
よろしくお願いいたします。
コードの概要は下記の通りです。(関連しそうな箇所の参考まで)
procedure TForm1.FormCreate(Sender: TObject);で
DefaultFile:=plSetPrinter1.Name+'Default.plv';
RepFile :=plSetPrinter1.Name+'.plv';
plSetPrinter1.SaveToFile(DefaultFile);
plSetPrinter1.LoadFromFile(RepFile);
procedure TForm1.plPrinterSetUpClick(Sender: TObject);で(ほとんど使わない。いきなりプレビュー印刷します)
if plSetPrinter1.ShowSetupDialog then begin
plSetPrinter1.SaveToFile(RepFile);
end;
procedure TForm1.btnPreviewClick(Sender: TObject);で、余白と印刷方向だけセットできる・#95;イアログを自作
begin
plPrev1.Title:='RichEdit印刷テスト';
PrnInfoFile:=ExtractFilePath(Application.ExeName)+'PrinterInfo1.plv';
plPrev1.plSetPrinter.LoadFromFile(PrnInfoFile);
<−−−−−−自作・#95;イアログを表示する前に印刷方向をセットする
if Form1.plSetPrinter1.Orientation=poPortrait then formMarginSet.RadioGroup1.ItemIndex:=0;
<−−−−−ここで自作の・#95;イアログを表示
if formMarginSet.ShowModal <> mrOK then exit;
{・#95;イアログ内ののOnShowで EditUp.Text :=IntToStr(plPrev1.TopMargin);で代入}
・・・・・・#95;イアログを出てきたら
if formMarginSet.RadioGroup1.ItemIndex=0 then plSetPrinter1.SetOrientation(poPortrait);
Form1.plSetPrinter1.SaveToFile(RepFile);<−−−??
<−−−−−−−−−− RichEditPrintはそのまま
RichEditPrint(plPrev1. LeftMargin *10 , //10倍している
2159 - plPrev1.RightMargin *10,
plPrev1.TopMargin *10,
2794 - plPrev1.BottomMargin *10,
plPrev1.RichEdit1);
plSetPrinter1.SaveToFile(RepFile);<−−−−−???更新したつもり
plPrev1.ShowModal;
end;
|
|