PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
6574 | 99/06/02 17:31:06 | RE(5):PB5.0.03: (解決)EXEで実行するとfocusが移動しない。 By 格の進 |
6571 | 99/06/02 16:38:34 | RE(4):PB5.0.03: modifiedイベントでは入力値の拒否はないようですが? By こてちゅ |
6569 | 99/06/02 16:19:41 | RE(3):PB5.0.03: modifiedイベントでは入力値の拒否はないようですが? By 格の進 |
6568 | 99/06/02 16:12:47 | RE(2):PB5.0.03: EXEで実行するとfocusが移動しない。 By M.M |
6567 | 99/06/02 16:08:20 | RE(1):PB5.0.03: EXEで実行するとfocusが移動しない。 By こてちゅ |
6566 | 99/06/02 15:55:41 | PB5.0.03: EXEで実行するとfocusが移動しない。 By 格の進 |
カテゴリ:スクリプトの記述
日付:1999年06月02日 16:12 発信者:M.M
題名:RE(2):PB5.0.03: EXEで実行するとfocusが移動しない。
格の進さん、こんにちは。
>表題のとおりEXEで実行するとfocusが移動しません。
>
>どういう事かといいますと
>ポップアップのwindowに数値を入れるeditmaskが2個連続して貼って有ります。
>最初のeditmaskの値を変更してfocusを移動するとmodifiedイベントで以下の処理が流れます。
>
>?最初のeditmaskの値を0.5単位で丸める。
>?再計算しますか?とのメッセージを表示してOKならば次のeditmaskの値を変更する。
>
>powerbuilderのrunボタンで実行した場合は?の後、次のeditmaskにfocusがあるので問題無く動きます。
>
>ところがexeから実行すると?の後、なぜか最初のeditmaskにfocusが戻ってしまい、
>?で値を設定し直しているのでまたmodifiedという永久ループに入ってしまいます。
推測モードの発言ですが、?でeditmaskの値を丸めた際にmodifiedイベントが発生して、
最初のeditmaskのmodifiedイベントに処理が戻っていると思われます。
泥縄的対策ですが、?の処理を実行した時にインスタンス変数でフラグを立てておき、
editmaskのmodifiedイベントの最初に、フラグが立っている時はSetFocus関数で強制的に
フォーカスを移動してしまうというのはどうでしょうか?
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows95
DBMS Oracle SQL*Net 2.3
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS Oracle 7.3
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.