ホーム   フォーラム   FAQ
 
メインメニュー
ログイン
ユーザー名:

パスワード:


パスワード紛失

印刷プレビューの表示について

  • このフォーラムに新しいトピックを立てることはできません
  • このフォーラムではゲスト投稿が禁止されています
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 .2 .3 .4 .5 .6 .7 .8 | 投稿日時 2015-10-19 15:27
kyoike  一人前 居住地: M2C  投稿数: 80
印刷プレビューが指示画面の後ろに隠れてしまいます。
どなたかご教授願えませんでしょうか?

【環境】
Magic:V1Plus1.9g2
OS:Windows7

【内容】
指示画面→印刷バッチ
というごくごく一般的なプログラムです。

進捗を表示する為に、印刷バッチタスクは画面表示を「Yes」にしています。
イベント可は「No」です。
この印刷バッチの画面が表示されている時に、画面をクリックしまくると、
結果としてプレビューが後ろに隠れてしまう時があります。

プレビューが一瞬表示された後に、後ろに隠れるという現象です。
さらに、この現象が一旦発生すると、次回からは必ず後ろに隠れます。
(画面をクリックなどしなくても普通に隠れてしまいます)

また、プレビューが後ろに隠れた状態で、印刷タスクを走らせて
みると、プレビュー画面は前面に表示されます。(正常な動き)

なお、この症状はシステムを一旦落としてからでないと治りません。

不思議な症状ですが、再現性があります。
同現象に陥った方の対策方法など、是非お聞かせ頂きたいです。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2015-10-21 7:59
ISHIJIMA  長老 居住地: 静岡県  投稿数: 1827
SetWindowFocus('Magic 印刷プレビュー')を実行するとどうなりますか?
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2015-10-21 8:55
tkd  常連   投稿数: 48
>>kyoikeさん
ISHIJIMAさんみたいに関数で表に持ってくるか

現象としてRM互換のあるプログラムだと後ろに行くことがあったので
RM互換撤廃もしくは新規作成で解決したことがあります。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2015-10-21 13:42
kyoike  一人前 居住地: M2C  投稿数: 80
SetWindowFocus('Magic 印刷プレビュー')
を実行しても変化なしでした。

また、RM互換も使用していません。

「画面をクリックしまくる」と必ず再現します。
バッチで集計中にある程度の回数をクリックすると、
画面がフリーズ(応答なし)になります。
フリーズしない程度のクリック回数では、正常に出力してくらます。
なので、バッチの実行にある程度時間がかかる処理が対象になります。

非常にわかりにくい説明だと思いますが、
宜しくお願い致します。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2015-10-21 13:49
ISHIJIMA  長老 居住地: 静岡県  投稿数: 1827
解決策ではないですが前面に出てくる画面にSetWindowFocus('Magic 印刷プレビュー')を実行するボタンを作成してその現象の時にそのボタンを押すとプレビュー画面は出てきますか?
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2015-10-22 13:48
kyoike  一人前 居住地: M2C  投稿数: 80
出てきました。

余談ですが、SetWindowFocus('Magic 印刷プレビュー')の戻り値を警告で表示する処理を直後に追加しました。
そしたら、プレビューが裏に隠れたままでした。

プレビューを出力した後に、変数を初期化したり、
完了メッセージを表示したりすると、SetWindowFocus('Magic 印刷プレビュー')が効かない場合がありそうです。

これって、magic自体の仕様なのでは?
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2015-10-22 15:46
MOTOAKI  半人前   投稿数: 31
これは仕様かと思います。
印刷プレビュー表示後、変数にフォーカスが移動します。
これにより、変数を設定したタスクのウィンドウがアクティブになりために、このウィンドウが、印刷プレビュー画面の前面に移動する為かと思います。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2015-10-22 16:48
ISHIJIMA  長老 居住地: 静岡県  投稿数: 1827
メッセージ等最後にSetWindowFocus('Magic 印刷プレビュー')を実行すればよいのではないでしょうか
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2015-10-22 16:48
kyoike  一人前 居住地: M2C  投稿数: 80
仕様であれば仕方がないですね。

ですが、通常時はOKで、「画面をクリックしまくる」とNGというのは、変数がどうこうという理由だけでは説明がつかない気がします。

なんかの複合要因による仕様なのでは?

そもそも、出力中にクリック等の操作をする必要性が無いはずなので、出力中はじっと待つようユーザにお願いしてみます。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2015-10-22 17:02
kyoike  一人前 居住地: M2C  投稿数: 80
メッセージ等最後にSetWindowFocus('Magic 印刷プレビュー')を実行しましたが、ダメでした。

ボタンクリックしてSetWindowFocus('Magic 印刷プレビュー')はOKですが、
出力プログラム直後にSetWindowFocus('Magic 印刷プレビュー')はNGです。

出力プログラムの作り方(特に直後の作り)によって、この症状になっているのかもしれません。

が、ダメなら一貫してダメであって欲しかったなと。。。
フリーズ(応答なし)が絡むと、通常と処理が異なる気がします。


投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2015-10-22 17:06 | 最終変更
ISHIJIMA  長老 居住地: 静岡県  投稿数: 1827
フリーズ(応答なし)はそのままにしておけば問題なく終了しませんか?
あとボタンでOKであればSetWindowFocus('Magic 印刷プレビュー')の後に何か処理が入っていませんか?

SetWindowFocus('Magic 印刷プレビュー')の実行前にDELYA等を入れて少し待たせるとかでしょうか
投票数:0 平均点:0.00

  条件検索へ


Copyright (C) Magic Software Japan K.K. All Rights Reserved.
個人情報保護方針 会員規約