QuickReportのプレビュー画面で「印刷」「印刷設定」ボタンが
無効(Disable)になってしまいます。
困ったことに、印刷データに関係なく無効になったり有効に
なったりしてしまいます。
どなたが原因がわかるかた教えていただけないでしょうか?
よろしくおねがいします。
すべての表示が、終わっていないのではないですか?時間がかかっている。
編集 削除HOta様 ご返答ありがとうございます。
原因はよくわかりませんが、全ての表示が完了
(ステータスバーのパーセンテージが100%)になっても無効のままでした。
不思議なことにデバッグでステップしながらゆっくりと流すと有効になりました。
さらに不思議なことに、かなりスペックの悪いマシンでやると間違いなく
有効になるという現象でした。
恥ずかしながら、初心者なので力ずくで解決してしまいました。
もともとのロジック>>>
(呼出元フォーム)
QuickRepフォーム.Quickrep1.PreviewModal;
修正後のロジック>>>
(呼出元フォーム)
プレビュー完了変数 := False
QuickRepフォーム.Quickrep1.PreviewModal;
while プレビュー完了変数 = False do
sleep(100);
(QuickRepのフォーム)
procedure QuickRepフォーム.ページフッターAfterPrint(Sender: TQRCustomBand;
BandPrinted: Boolean); //ページフッター印刷後イベント
begin
if 総ページ数変数 = QuickRep1.PageNumber then
プレビュー完了変数 := True;
end;
かなり強引ですが、これで回避することができました。
HOta様 ありがとうございました。
HOta様 ご返答ありがとうございます。
原因はよくわかりませんが、全ての表示が完了
(ステータスバーのパーセンテージが100%)になっても無効のままでした。
不思議なことにデバッグでステップしながらゆっくりと流すと有効になりました。
さらに不思議なことに、かなりスペックの悪いマシンでやると間違いなく
有効になるという現象でした。
恥ずかしながら、初心者なので力ずくで解決してしまいました。
もともとのロジック>>>
(呼出元フォーム)
QuickRepフォーム.Quickrep1.PreviewModal;
修正後のロジック>>>
(呼出元フォーム)
プレビュー完了変数 := False
QuickRepフォーム.Quickrep1.PreviewModal;
while プレビュー完了変数 = False do
sleep(100);
(QuickRepのフォーム)
procedure QuickRepフォーム.ページフッターAfterPrint(Sender: TQRCustomBand;
BandPrinted: Boolean); //ページフッター印刷後イベント
begin
if 総ページ数変数 = QuickRep1.PageNumber then
プレビュー完了変数 := True;
end;
かなり強引ですが、これで回避することができました。
HOta様 ありがとうございました。
すみません。変更後のソースは
QuickRepフォーム.Quickrep1.PreviewModal;
ではなく
QuickRepフォーム.Quickrep1.Preview;
です。