PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
22409 06/01/18 17:54:14 RE(3):PB6.5: 2回目のItemChangedイベントが流れません。 By たにやん
22408 06/01/18 17:56:02 すみません。間違って2回書き込みしてしまいました。m(_ _)m By たにやん
22407 06/01/17 16:50:53 RE(1):PB6.5: 2回目のItemChangedイベントが流れません。 By pavel
22405 06/01/16 15:25:29 PB6.5: 2回目のItemChangedイベントが流れません。 By たにやん

カテゴリ:データウィンドウ
日付:2006年01月17日 16:50 発信者:pavel
題名:RE(1):PB6.5: 2回目のItemChangedイベントが流れません。


なぜlosefcusでAcceptTextしてるんでしょうか?
もし、コマンドボタン等他のコントロールのイベント処理で
不都合がないためということでしたら、
コマンドボタン押下時の最初の処理として、DWのAcceptTextをする、が
ノーマルなパターンかなという気がするのですが。

たにやんさん、こんにちは。

>こんにちは。
>過去ログは参照しいろいろ試したのですが、どうしても理解できないので教えてください。

>DWの入力チェックを行いたいと思っています。
>ItemChangedイベントにて入力された値をチェックし、
>値が不正な場合はメッセージボックスを表示し、RETURN 1にてフォーカスを移動させない処理を書いて
>います。
>ところがlosefocusイベントにAcceptText()関数を記述すると、ItemChangedイベントが1度しか流れません。
>入力された値をクリアする仕様ではないので
>一度目の入力チェックで不正な値はそのまま→TABキーでカラムフォーカス変更→ItemChanged流れない
>となってしまいます。
>どなたかこれを解決する方法ご存じないでしょうか?
>ちなみに、losefocusイベントのAcceptText()を
>POSTイベントにしたところ、ItemChangedイベントのエラー時に発生させているメッセージボックスが
>無限ループで表示されてしまいました。。

>ItemChangedイベント
>//カラムAが4桁に満たない場合エラーにする。
>IF Len(data) <> 0 AND Len(data) <> 8 THEN
>  //エラーメッセージ表示   
>  messagebox(\"\", \"エラーです。\")
>  RETURN 1
>END IF

>LoseFocusイベント
>This.AcceptText()

>ItemErrorイベント
>//値を受け入れないでメッセージボックスを表示しない
>RETURN 1


付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows 2000
DBMS Oracle Net8
Browser InternetExplorer

Server SoftWare

OS (記載なし)
DBMS (記載なし)
WebServer (記載なし)

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