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 (記載なし)

PowerSpaceの運営は、パワーフューチャー株式会社が行っております。
Copyright © 2013 Power Future Co., Ltd.