過去ログ

                                Page      80
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫   
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ▼UWSCでJWWの表示完了を知る方法は?  マチャプチャレ 15/08/04(火) 13:00
   ┗Re(1):UWSCでJWWの表示完了を知る方法は?  mirror 15/08/04(火) 17:11
      ┗Re(2):UWSCでJWWの表示完了を知る方法は?  マチャプチャレ 15/08/04(火) 20:47
         ┗Re(3):UWSCでJWWの表示完了を知る方法は?  LA 15/08/04(火) 22:31
            ┗Re(4):UWSCでJWWの表示完了を知る方法は?  マチャプチャレ 15/08/05(水) 6:39
               ┗Re(5):UWSCでJWWの表示完了を知る方法は?  マチャプチャレ 15/08/05(水) 12:25

 ───────────────────────────────────────
 ■題名 : UWSCでJWWの表示完了を知る方法は?
 ■名前 : マチャプチャレ
 ■日付 : 15/08/04(火) 13:00
 -------------------------------------------------------------------------
   UWSCとJWWで遊んでいるのですがJWWの画面表示が完了したのを知るのにはどのようにしたら合理的なんでしょうか。ファイルの大きさに左右されず、できるだけ早いタイミングで知ることができたらよいのですが、なかなか上手くできません。

・単なるSLEEPで待つ。
・ウィンドウのタイトルが読み込み中のファイルに変わるのを待つ。
・画面表示の変化がなくなるのを待つ。

この辺を組み合わせて試してみましたがいまひとつの結果です。UWSCとJWWに詳しい方なら良い方法をご存知なのでは?と思いこの場をお借りします。

よろしくお願いします。

 ───────────────────────────────────────  ■題名 : Re(1):UWSCでJWWの表示完了を知る方法は?  ■名前 : mirror  ■日付 : 15/08/04(火) 17:11  -------------------------------------------------------------------------
   ▼マチャプチャレさん:
>この辺を組み合わせて試してみましたがいまひとつの結果です。

結果を求めるなら、何らかの作業をしたいのでしょうが
具体的に何をするのかに依ります
そもそも、画面表示が完了しなくても操作できる時もあります

 ───────────────────────────────────────  ■題名 : Re(2):UWSCでJWWの表示完了を知る方法は?  ■名前 : マチャプチャレ  ■日付 : 15/08/04(火) 20:47  -------------------------------------------------------------------------
   ▼mirrorさん:
画面の表示が完了した時点での画像を保存したいと思っています。

 ───────────────────────────────────────  ■題名 : Re(3):UWSCでJWWの表示完了を知る方法は?  ■名前 : LA  ■日付 : 15/08/04(火) 22:31  -------------------------------------------------------------------------
   ▼マチャプチャレさん:
こんにちは


>>・単なるSLEEPで待つ。
個人的には、これで済ましてしまうケースが多いかな。


>画面の表示が完了した時点での画像を保存したいと思っています。
長めの連続作業をさせるために、
表示倍率を極大にして、線描画そのものをさせない
という手を使ったことがあるんですが、この場合にはつかえませんね。
(もし興味がおありでしたら、 http://hpcgi2.nifty.com/jw_cad/c-board.cgi?cmd=one;no=21638;id=003 を参照してください)

あと、CPUUSERATE() でCPU使用率を調べて... とかも考えた事あるんですが、画面表示にそれほど時間がかからない場合に高負荷時の検出をする前に終了しかねない、i7の様な多コア環境には向かない、といった問題があって、実際にはやっていません。


適当にコマンドを投げて、ステータスバーに反応があったら描画終了
といった方法はどうでしょうか。
例えば、こんな感じです。

id=GETID(" - jw_win")
WHILE COPY(GETSTR(id,1,STR_STATUS),1,4)<>"■■■■"
 CLKITEM(id, "2点間長取得", CLK_ACC)
 SLEEP(0.1)
WEND

FUKIDASI("画面表示完了")
SLEEP(2)

 ───────────────────────────────────────  ■題名 : Re(4):UWSCでJWWの表示完了を知る方法は?  ■名前 : マチャプチャレ  ■日付 : 15/08/05(水) 6:39  -------------------------------------------------------------------------
   ▼LAさん:

おはようございます

連続印刷1.uwsをちょこっと見て来ました。素晴らしいです。いろいろと勉強になりそうなのでじっくり読ませて頂きますね。

>>>・単なるSLEEPで待つ。
>個人的には、これで済ましてしまうケースが多いかな。

シンプルだし想定内のことしかおきないのが良いですよね。

>あと、CPUUSERATE() でCPU使用率を調べて... とかも考えた事あるんですが、

アイデアとしてはありましたがこんな関数もあるんですね。メモメモ・・

>適当にコマンドを投げて、ステータスバーに反応があったら描画終了
>といった方法はどうでしょうか。

おお!気づきませんでした。ということで簡単に試してみましたところ、かなり安定して動作しそうな様子です。少しタイミングがゆっくりなのと、画像に[2点間 長]と写り込む点が惜しいですが、環境も変えてじっくり試してみます。

大変勉強になりました。ありがとうございます。

 ───────────────────────────────────────  ■題名 : Re(5):UWSCでJWWの表示完了を知る方法は?  ■名前 : マチャプチャレ  ■日付 : 15/08/05(水) 12:25  -------------------------------------------------------------------------
   >少しタイミングがゆっくりなのと、画像に[2点間 長]と写り込む点が惜しいですが、環境も変えてじっくり試してみます。

例えに書いていただいたのをそのまま試していた私が間抜けなのですが、使うコマンドを点コマンドに変えてみましたらタイミングも十分に早くなり、画像への写り込みもなくなって期待通りの動作になったようです。

改めてありがとうございました。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━    通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━                                 Page 80