none
マウスカーソルをある条件のときだけ変更する RRS feed

  • 質問

  • 開発環境:WindowsXP pro、VS2005

    お世話になっております。

    マウスカーソルをある条件のときだけ変更する様にしたいのですが、

    具体的に、
    Form1とForm2がありまして、
    Form2には、toolStrip1というツールバーが配置してあります。
    そのツールバーのtoolButton1をクリックすると、マウスカーソルが独自で用意したカーソルに変更する様にしてあります。
    //Form2.cs
            private void newaddButton_Click(object sender, EventArgs e)
            {
                this.Cursor = new Cursor("button.cur");
            }

    ある条件というのは、
    Form2にあるtoolButton1をクリックしたら、Form1のフォーム上にマウスカーソルがある時だけbutton.curに変更され、それ以外の場所にマウスカーソルがある場合は通常のマウスカーソルの状態にしたいというものです。


    わかりにくい文章かもしれませんが、宜しくお願いいたします。

    2006年12月4日 10:17

回答

  • たかしさん、こんにちは。

     たかし さんからの引用
    toolButton1をクリックしたときに、具体的にはどのようにしたらForm1のクライアント領域を取得し、それを判断してマウスカーソルを変更することができますでしょうか?

    ご質問を言い変えますと、"Form1 のインスタンスの取得方法がわからない" になります。
    ちなみに、判断して 変更する必要はないでしょう。

    Control.Cursor プロパティ

    領域についても... かな。

    2006年12月4日 14:56

すべての返信

  • 以下の記事辺りが参考になると思います。

    ある座標や領域がコントロールの領域内に含まれるているかを確認するには?
    http://www.atmarkit.co.jp/fdotnet/dotnettips/382ctrlcontain/ctrlcontain.html

    2006年12月4日 11:14
    モデレータ
  • 返信有難うございます。
    早速サイトを参考にして試してみました。

    座標や領域を取得する方法はわかりました。
    しかし、Form2にあるtoolButton1をクリックしたら、Form1のクライアント領域上にマウスカーソルがあるときだけ変化する方法がわからないといった状況です。
    toolButton1をクリックしたときに、具体的にはどのようにしたらForm1のクライアント領域を取得し、それを判断してマウスカーソルを変更することができますでしょうか?

    宜しくお願いいたします。

    2006年12月4日 14:15
  • たかしさん、こんにちは。

     たかし さんからの引用
    toolButton1をクリックしたときに、具体的にはどのようにしたらForm1のクライアント領域を取得し、それを判断してマウスカーソルを変更することができますでしょうか?

    ご質問を言い変えますと、"Form1 のインスタンスの取得方法がわからない" になります。
    ちなみに、判断して 変更する必要はないでしょう。

    Control.Cursor プロパティ

    領域についても... かな。

    2006年12月4日 14:56
  • じゃんぬねっと様、有難うございます。

     

    判断して変更する必要はなかったんですね。

    教えていただいたサイトを参考に無事に出来ました。

    有難うございました。

    2006年12月6日 7:37
  • たかし さん、こんにちは。

     たかし さんからの引用
    判断して変更する必要はなかったんですね。

    trapemiya さんのリンクは、ちょっとミスリードだったかもしれませんね。

    教えていただいたサイトを参考に無事に出来ました。

    サイトというより、立派なリファレンスなので覚えておいてくださいね。
    .NET Framework の (ほぼ) すべてのクラスやメンバについて説明があります。

    2006年12月6日 12:46
  •  じゃんぬねっと さんからの引用

    trapemiya さんのリンクは、ちょっとミスリードだったかもしれませんね。

    うっ、確かに。(^^; Control.Cursorはうっかりしてました。
    まぁ、こうやってフォローがあるところが、こういったフォーラムの強みですね。
    そのおかげで私も少しずつ成長できるわけで、ありがたいことです。
    2006年12月6日 15:06
    モデレータ
  • そうですね、私も何度か trapemiya さんにはフォローして頂いています。

    2006年12月6日 23:53