投稿時間:2004/02/24(Tue) 14:11 投稿者名:くろき
Eメール:
URL :
タイトル:フレキシブルグリッドのmouserowについて
はじめまして、くろと申します。 vbは超初心者です。よろしくお願いいたします。
さて質問内容ですが、vbにて作成されているアプリケーションに不具合があって 調べているのですが、デバッグした段階でどうしても分からないことがありましたので 質問いたします。
まず、現象としては、あるフォームにフレキシブルグリッドで、データを表示していて、 画面上に20件まで表示出来る状態で、それ以上のデータがある場合には、 スクロールさせれば残りのデータも見れるようなフォームで、マウスのクリックにより 任意のデータにチェックできるものなのですが、 その際に、mouserowにてマウスポインタの位置を取り込んでいるのですが、ある一定の 条件下で妙な状態になってしまいます。 それは、画面に表示できているデータのうち一番下に表示されているものをクリックしたときに mouserowの値が+1されているのです。 初期表示状態だと20件表示しているので、20件目をクリックしたときにmouserowの値が 21として帰ってきてしまいます。1件分スクロールさせた後に20件目のデータをクリック (表示上下から二番目)すると正しく20が帰ってきます。但し、その際に21件目をクリック すると、やはり+1されて22という値が帰ってきてしまいます。 これってなにか根本的におかしいんでしょうか?
自力で調べてみたのですが、分かりませんでした。そもそもフレキシブルグリッドと 言う言葉も調べていく過程で分かったほどの初心者です。 どなたか、原因に心当たりのある方がいらっしゃいましたら救いの手をお願いいたします。
確かに、画面上見ていると、一番下の行を選択したときにスクロールが発生し、一行上に 画面が移動しています。その為なのか、20件目にチェックしようとしても、21件目にチェック されてしまっています。これって回避策はあるのでしょうか? それが原因であるとすれば、一番下のものをクリックしたときにスクロールしてしまうことを 防ぐ方法ってありますでしょうか?
|