[リストへもどる]   [VBレスキュー(花ちゃん)]
一括表示

投稿時間:2007/02/25(Sun) 19:02
投稿者名:Do_Shirouto
Eメール:
URL :
タイトル:
MSFlexGrid1.MouseRow & .MouseColについて
いつも質問ばかりで申し訳御座いません。
また教えて頂きたいのですが、
下記のコードで実行すると
Text1.Text2.には期待どうりの値が返ってきますが、
その後の処理が 変なので 止めて調べてみた所
どこをクリックしても
MSFlexGrid1.MouseCol=1の値
MSFlexGrid1.MouseRow=9の値が返って来ました
Text1.Text2.は値を調べるためのものです。
目的はTextBoxをクリックしたGrid(セル)に合わせて移動させたいのです 
マウスクリックの位置を調べるには下記コードでは
ダメなのですか
ご教授のほど宜しくお願いいたします
’--------------------------
Private Sub MSFlexGrid1_Click()
Text1.Text = MSFlexGrid1.MouseCol
Text2.Text = MSFlexGrid1.MouseRow
'その後の処理
End Sub

投稿時間:2007/02/25(Sun) 19:41
投稿者名:neptune
Eメール:
URL :
タイトル:
Re: MSFlexGrid1.MouseRow & .MouseColについて
こんにちは

> 目的はTextBoxをクリックしたGrid(セル)に合わせて移動させたいのです 

>いつも質問ばかりで申し訳御座いません。
本当にそう思っているなら、せめて当サイトぐらいは調べるべきでしょう。
花ちゃんさんがせっかく公開してくれているのに。もったいない。

カテゴリ別サンプル一覧
MSFlexGrid関係の中に
セルに直接データーを入力する(エクセルのように)
というそのまま使えるようなソースを公開してくれてますよ。

投稿時間:2007/02/26(Mon) 08:08
投稿者名:Do_Shirouto
Eメール:
URL :
タイトル:
Re^2: MSFlexGrid1.MouseRow & .MouseColについて
> こんにちは
>
> > 目的はTextBoxをクリックしたGrid(セル)に合わせて移動させたいのです 
>
> >いつも質問ばかりで申し訳御座いません。
> 本当にそう思っているなら、せめて当サイトぐらいは調べるべきでしょう。
> 花ちゃんさんがせっかく公開してくれているのに。もったいない。
>
> カテゴリ別サンプル一覧
> MSFlexGrid関係の中に
> セルに直接データーを入力する(エクセルのように)
> というそのまま使えるようなソースを公開してくれてますよ。
neptuneさんご回答有難う御座います
私もここのサイトを見て勉強して私なりに
ソースを作ろうと思ったのです。
また質問が下手で申し訳御座いません
'--------------------------------
Text2.Text = MSFlexGrid1.MouseRow
'--------------------------------
なぜ ここで右辺と左辺の値が
実行時とブレークで調べた時が違うのか
その原因を付き止めたかったのです。

投稿時間:2007/02/26(Mon) 09:12
投稿者名:魔界の仮面弁士
Eメール:
URL :
タイトル:
Re^3: MSFlexGrid1.MouseRow & .MouseColについて
> Text2.Text = MSFlexGrid1.MouseRow
> なぜ ここで右辺と左辺の値が
> 実行時とブレークで調べた時が違うのか

MouseRow プロパティは、「イベント実行時の座標」ではなく、
「今現在の座標」を元にした結果を返しますが、その点は大丈夫ですか?

投稿時間:2007/02/26(Mon) 09:41
投稿者名:ダンボ
Eメール:
URL :
タイトル:
Re^4: MSFlexGrid1.MouseRow & .MouseColについて
Do_Shiroutoさん、この件は私も悩みました。

MouseRow プロパティ、MouseCol プロパティは常に変わっています。
ブレーク時でも変化しているということです。
ですので、私はソースには
MouseR = ・MouseRow
MouseC = ・MouseCol
などと書いておいてデバッグ時にはMouseR、MouseC の値を見るようにしています。

投稿時間:2007/02/26(Mon) 12:13
投稿者名:Do_Shirouto
Eメール:
URL :
タイトル:
Re^5: MSFlexGrid1.MouseRow & .MouseColについて
> Do_Shiroutoさん、この件は私も悩みました。
>
> MouseRow プロパティ、MouseCol プロパティは常に変わっています。
> ブレーク時でも変化しているということです。
> ですので、私はソースには
>  MouseR = ・MouseRow
>  MouseC = ・MouseCol
> などと書いておいてデバッグ時にはMouseR、MouseC の値を見るようにしています。
多数の方よりご回答有難う御座います。
私も今 下記のように書き換えて
悪戦苦闘しています
-----------
XX = MSFlexGrid1.MouseCol
YY = MSFlexGrid1.MouseRow
ーーーーーーーーーーーー
TextBoxは思い通りの動きをしてくれますので
もう少し 頑張って見ます。
有難う御座いました。

投稿時間:2007/02/28(Wed) 11:45
投稿者名:Do_Shirouto
Eメール:
URL :
タイトル:
Re^6: MSFlexGrid1.MouseRow & .MouseColについて
何度も申し訳御座いません。
続きを教えて頂きたいのですが、
---------------------
Private Sub MSFlexGrid1_Click()
Text3.ZOrder vbBringToFront
Text3.Refresh

With MSFlexGrid1
        Text3.Move .Left + .CellLeft, .Top + .CellTop, .CellWidth, .CellHeight
    End With
    Text3.Visible = True
    Text3.SetFocus
XX = MSFlexGrid1.Row
YY = MSFlexGrid1.Col
    
Text3.Text = MSFlexGrid1.TextMatrix(XX, YY)
Select Case YY--------ここでMSFlexGrid1.Col=0の所をクリックしても
                      YY=1 になっています。
   Case 1, 3, 9, 10
     Text3.Alignment = 2
   Case 5, 6, 7
     Text3.Alignment = 1
   Case 2, 4, 8
     Text3.Alignment = 0
     End Select
End Sub
---------------------------------------
MSFlexGrid1.Col=0の所をクリックした時 YY=0にしたいのですが
無理でしょうか?
目的は横1行(列)クリップボードに代入したいのです。
ご指導のほど宜しくお願いいたします。

投稿時間:2007/02/28(Wed) 13:52
投稿者名:neptune
Eメール:
URL :
タイトル:
Re^7: MSFlexGrid1.MouseRow & .MouseColについて
こんにちは
> MSFlexGrid1.Col=0の所をクリックした時 YY=0にしたいのですが
> 無理でしょうか?
> 目的は横1行(列)クリップボードに代入したいのです。
> ご指導のほど宜しくお願いいたします。

XX = MSFlexGrid1.MouseCol
YY = MSFlexGrid1.MouseRow
では駄目なのですか?
但し、TextBoxを移動させる前に行、列の値チェックは必要にはなりますが。

投稿時間:2007/02/28(Wed) 14:44
投稿者名:Do_Shirouto
Eメール:
URL :
タイトル:
Re^8: MSFlexGrid1.MouseRow & .MouseColについて
> こんにちは
> > MSFlexGrid1.Col=0の所をクリックした時 YY=0にしたいのですが
> > 無理でしょうか?
> > 目的は横1行(列)クリップボードに代入したいのです。
> > ご指導のほど宜しくお願いいたします。
>
> XX = MSFlexGrid1.MouseCol
> YY = MSFlexGrid1.MouseRow
> では駄目なのですか?
> 但し、TextBoxを移動させる前に行、列の値チェックは必要にはなりますが。
neptuneさんご回答有難う御座いました。
下記を試してみましたが、
text1.text=1でした。
--------------------
Private Sub MSFlexGrid1_Click()
XX = MSFlexGrid1.Row
YY = MSFlexGrid1.Col
Text1.Text = YY

投稿時間:2007/02/28(Wed) 17:08
投稿者名:neptune
Eメール:
URL :
タイトル:
Re^9: MSFlexGrid1.MouseRow & .MouseColについて
こんにちは
> Private Sub MSFlexGrid1_Click()
> XX = MSFlexGrid1.Row
> YY = MSFlexGrid1.Col
> Text1.Text = YY
確認ですが、試したのはMouseCol、MouseRowではないのですね?
私はMouseCol、MouseRowと書いたんですが・・・
MouseCol、MouseRowだと出来るのですけど、何らかの理由でこれは使えないと
言う事でしょうか?

長い間使ってないので忘れたんですが、恐らく、FixedCols、FixedRowsが設定
されているとRow,Colの返す値は1からになるんだと思いますから、
Row、Colで0は取得する事は出来ないと思います。

Clickイベントで使用するんですから、MouseCol、MouseRowで問題ないと思うんです
けどね・・・・?

投稿時間:2007/03/01(Thu) 11:47
投稿者名:Do_Shirouto
Eメール:
URL :
タイトル:
Re^10: MSFlexGrid1.MouseRow & .MouseColについて
> こんにちは
> > Private Sub MSFlexGrid1_Click()
> > XX = MSFlexGrid1.Row
> > YY = MSFlexGrid1.Col
> > Text1.Text = YY
> 確認ですが、試したのはMouseCol、MouseRowではないのですね?
> 私はMouseCol、MouseRowと書いたんですが・・・
> MouseCol、MouseRowだと出来るのですけど、何らかの理由でこれは使えないと
> 言う事でしょうか?
>
> 長い間使ってないので忘れたんですが、恐らく、FixedCols、FixedRowsが設定
> されているとRow,Colの返す値は1からになるんだと思いますから、
> Row、Colで0は取得する事は出来ないと思います。
>
> Clickイベントで使用するんですから、MouseCol、MouseRowで問題ないと思うんです
neptuneさん ご回答有難う御座いました。
レスを良く読まず早とちりして申し訳御座いませんでした。
MouseCol、MouseRowのが使い易いですね。
ご回答いただいた 皆さん有難う御座いました。
無事解決しました。
また御礼が遅くなり大変申し訳ございませんでした。
これからも宜しくお願いいたします。