PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
6858 99/06/19 15:39:52 PB6.5: Sort関数でRowFocusChangedイベントが起動される! By Taka

カテゴリ:PowerBuilderの不具合?
日付:1999年06月19日 15:39 発信者:Taka
題名:PB6.5: Sort関数でRowFocusChangedイベントが起動される!

Takaです。

題名の件、V5.0.04までは無かった現象でしたが、V6.5でこのような動きに変わっています。
これにより、前バージョンで作成したアプリに不具合が生じてしまいました。

グリッド等で作った、いわゆる「一覧選択型」データウィンドウのRowFocusChangedイベント
において、よく
 SelectRow( 0, FALSE )
 SelectRow( CurrentRow, TRUE )
とかやるケースって多いですよね。
こうやって反転表示させた行は、Sort関数を実行しても変わることはありませんでした。

ところがV6.5では、Sort関数実行後に反転行が変わっているではありませんか!
調査してみると、Sort関数によってRowFocusChangedイベントが発生していました。
(しかも引数CurrentRowには、意図しない値が入ってくる)

とりあえず応急処置として、Boolean型のインスタンス変数 i_Sorting を用意しておき、
Sort関数の直前でTRUE に、直後にFALSEに戻します。
RowFocusChangedの中では、i_SortingがTRUEなら何もしない、と修正することで、
今回の問題は回避できました。

皆さんのところでは、このような問題は表面化していませんか?
疑わしいと思った方は、一度テストしたほうが良いと思います。

P.S. メーカーの方へ:
毎度のことだけど、勝手にアルゴリズム変えないでほしいです。
こういった「つまらない問題」に、開発者は振り回されっぱなしなんですから。あーもう。


付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows NT 4.0
DBMS Oracle SQL*Net 2.3
Browser (記載なし)

Server SoftWare

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

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