tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板 [ツリー表示へ]   [Home]
一括表示(VB6.0)
タイトルフレキシブルグリッドの行選択
記事No15692
投稿日: 2013/06/10(Mon) 02:12
投稿者rasetuu

いつも参考にさせて頂いています。ご教示お願い致します。
VB6.0
Windows7
VS-FlexGrid Pro 8.0J


行ごとに選択できないようにする方法はないでしょうか。(Enabled=Falseみたいに)
たとえば10行目から選択出来ないようにする方法はありませんか。
selchangeイベントやcolchangeイベント、clickイベントを使用して制御していますが、
どうしても一度10行目に行ってから元の選択できる行(9行目とか)に戻るのが見えてしまいます。

カーソルの場合は大丈夫なんですが、マウスクリックの時がうまくいきません。

やってることは10行目以上をクリックされたら、元の行に戻しています。
もっといい方法があったらご意見お聞かせください。

よろしくお願い致します。

[ツリー表示へ]
タイトルRe: フレキシブルグリッドの行選択
記事No15694
投稿日: 2013/06/10(Mon) 20:47
投稿者VBレスキュー(花ちゃん)
私は、VS-FlexGrid Pro 8.0J を持っていないし使った事もないので分かりませんが
MSFlexGrid の MouseMove イベント や MouseCol プロパティ や MouseRow プロパティ の
ようなもの(同等の機能)はありませんか?

あれば、それらを使って実現できませんか?

又、何のためにそのような仕様が必要かは知りませんが、行の高さ 0 にするとかではだめなのですか?

[ツリー表示へ]
タイトルRe^2: フレキシブルグリッドの行選択
記事No15697
投稿日: 2013/06/11(Tue) 09:58
投稿者rasetuu
花ちゃんさん、ご回答ありがとうございます。

現在使用してるイベントで動きは出来てるのですが、
選択できない行から、選択可能な行に、
戻す動きが見えなくする方法があるかなと思って質問しました。
分かりにくくてすいません。

グリッドのクリックイベントに、マウスクリックした時の処理を入れてました。
グリッドのMouseのイベントに、処理を入れてためしてから記述します。


Rowとかで選択された行は取得出来るので、それで直前にあった場所まで戻してます。
そこで、戻るときの動きが見えないようにしたかったのです。

>
> 又、何のためにそのような仕様が必要かは知りませんが、行の高さ 0 にするとかではだめなのですか?

見た目は見えてクリック出来ないようにしたいんです。。
たとえば5行表示して、データが入ってる3行までは選択できて、それ以降は出来ないとか。


グリッド使ったのは今回初めてなので、不明点が色々あるので質問させていただきました。

[ツリー表示へ]
タイトルRe^3: フレキシブルグリッドの行選択
記事No15699
投稿日: 2013/06/13(Thu) 08:38
投稿者VBレスキュー(花ちゃん)
> 現在使用してるイベントで動きは出来てるのですが、
> 選択できない行から、選択可能な行に、
> 戻す動きが見えなくする方法があるかなと思って質問しました。
> 分かりにくくてすいません。

私がお聞きしたいのは、手段の話ではなく目的の方です、主語が抜けていると代替方法等の
提案や違った方法(手段)を提案する事ができません。
質問される場合は、5W1H まではいかなくても相手に理解してもらえるような説明をしないと
伝わりません。
ここのはじめにお読みくださいの中の掲示板ご利用に際しに書いてあるような書き方をされると
レスも付き易いし何度もやりとりする必要もないのですが。
 http://www.hanatyan.sakura.ne.jp/hazimeni.htm#keijiban

> グリッドのクリックイベントに、マウスクリックした時の処理を入れてました。
> グリッドのMouseのイベントに、処理を入れてためしてから記述します。

1.選択できない行といいながらクリックされてからそのクリックイベント内に処理を書いている
  この時フォーカスだけが問題なら、フォーカスを非表示にできたかと(MSFlexGrid ではできる)
    又、編集されては困るのなら、VS-FlexGrid では、セルの編集可/不可の設定ができたかと。
  

2.ご自分でフォーカスを移動させておきながらそれが見えては困る(矛盾している)
  (戻すくらいなら行けないようにすべきでしょう)
  
先の回答でも書きましたが、MouseMove イベント で MouseRow プロパティ でその行上にある場合
をとらえて Mouse の動きを制限するような方法はできないのですか? だめなのですか?

 http://www.hanatyan.sakura.ne.jp/vbhlp/MouseLook.htm
 http://www.hanatyan.sakura.ne.jp/vb6/msflexgrid01.htm

[ツリー表示へ]
タイトルRe^4: フレキシブルグリッドの行選択 お礼
記事No15725
投稿日: 2013/06/28(Fri) 10:21
投稿者rasetuu
rasetuuです。
遅くなりました。花ちゃんさんありがとうございます。
質問の仕方が悪くて失礼致しました。

遅くなりました。
クリックの処理にいれてもEXEファイルを作成したら望みの動きができました。(選択したくない行いってから戻る動きはみえない)

次は質問の仕方もよく考えて書きます。
申し訳ありませんでした。時間の余裕が出来たら提案してくれた方法も考えてみます。

[ツリー表示へ]