PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
17784 02/07/18 16:34:43 RE(5):データウィンドウのカラムの値をItemChangedイベント内で変更 By YAMASHITA, Satoru
17782 02/07/18 16:00:33 RE(4):Re:データウィンドウのカラムの値をItemChangedイベント内で変更しても・・・ By geo
17781 02/07/18 15:57:52 RE(3):データウィンドウのカラムの値をItemChangedイベント内で変更 By geo
17779 02/07/18 15:43:35 RE(2):データウィンドウのカラムの値をItemChangedイベント内で変更 By こてちゅ
17778 02/07/18 14:43:40 RE(1):Re:データウィンドウのカラムの値をItemChangedイベント内で変更しても・・・ By obanyan
17777 02/07/18 14:11:33 データウィンドウのカラムの値をItemChangedイベント内で変更してもItemChangedイベントが終わると戻ってし By geo

カテゴリ:PowerBuilderの開発環境
日付:2002年07月18日 14:11 発信者:geo
題名:データウィンドウのカラムの値をItemChangedイベント内で変更してもItemChangedイベントが終わると戻ってし

データウィンドウのItemChangedイベント内で、
入力値のチェックを行い不正値の場合は元の値に戻す、という処理を行いたいのですがうまくいきません。

ソースはこんな感じです。
???????????????????????????
// 変更前のデータを保存
ls_before = This.GetItemString(1, \"column1\")

// 変更を反映
This.AcceptText()

// 変更後のデータを取得
ls_data = This.GetItemString(1, \"column1\")

// データの正誤チェック
li_ret = wf_chkdata(ls_data)

// 不正値の場合
IF li_ret < 0 THEN
    MessageBox(\"エラー\",\"入力値が不正です。\")
    // 変更前のデータに戻す
    This.SetItem(1, \"column1\", ls_before)
    // 変更を反映
    This.AcceptText()
END IF
???????????????????????????
因みに、以下を例とすると、デバッグではItemChangedイベントの一番最後まで\"1\"になっていました。
しかし、ItemChangedイベントが終了すると\"-1\"になってしまいます。
例)
?初期値:\"1\"
?不正値:\"-1\"に変更
?エラー表示し、データを?の状態に戻す

どなたか同様の現象、解決法をご存知の方がいらっしゃいましたら教えてください。

付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

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

Server SoftWare

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

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