(57)【特許請求の範囲】
【請求項１】
左ボタン、右ボタンおよび第３ボタンから成る３つボタンマウスのマウスポインタを表示する方法であって、
前記第３ボタンが受ける外力を検出するステップと、
この検出結果に基づき、予め定めておいた、前記第３ボタンが受ける前記外力と前記第３ボタンに割り当てられた機能との間の関係を、前記外力の態様に応じて複数格納しているデータベースを検索して、該当する機能を判定するステップと、
前記該当する機能の判定結果に基づき、予め定めておいた、前記第３ボタンに割り当てられた機能とマウスポインタ形状との間の関係を複数格納しているデータベースを検索して、前記該当する機能に対応するマウスポインタ形状を決定するステップと、
前記マウスポインタ形状の決定に基づき、前記マウスポインタが画面上のどこにあるかを問わず表示中のマウスポインタ形状を前記外力に応答して変化させるステップと
を含むマウスポインタの表示方法。
【請求項２】
請求項１において、
前記外力が、前記第３ボタンを押下する力または変位させる力である、
マウスポインタの表示方法。
【請求項３】
少なくとも２つのウインドウ上で、左ボタン、右ボタンおよび第３ボタンから成る３つボタンマウスのマウスポインタを表示する方法であって、前記ウインドウのうちの１つは前記第３ボタンの機能を実行することができないウインドウであり、
前記第３ボタンが受ける外力を検出するステップと、
この検出結果に基づき、予め定めておいた、前記第３ボタンが受ける前記外力と前記第３ボタンに割り当てられた機能との間の関係を、前記外力の態様に応じて複数格納しているデータベースを検索して、該当する機能を判定するステップと、
前記該当する機能の判定結果に基づき、予め定めておいた、前記第３ボタンに割り当てられた機能とマウスポインタ形状との関係を複数格納しているデータベースを検索して、前記該当する機能に対応するマウスポインタ形状を決定するステップと、
前記マウスポインタ形状の決定に基づき、前記第３ボタンの機能を実行することができない前記ウインドウ上で、表示中のマウスポインタ形状を前記外力に応答して変化させるステップと
を含むマウスポインタの表示方法。
【請求項４】
請求項３において、
前記外力が、前記第３ボタンを押下する力または変位させる力である、
マウスポインタの表示方法。
【請求項５】
左ボタン、右ボタンおよび第３ボタンから成る３つボタンマウスのマウスポインタを表示する方法であって、
前記第３ボタンが受ける外力を検出するステップと、
前記マウスの底面に設けられているボールの回転を検出するステップと、
前記第３ボタンが受ける前記外力検出結果と、前記ボールの前記回転検出結果とに基づき、予め定めておいた、前記第３ボタンが受ける外力および前記ボールの回転と、前記第３ボタンに割り当てられた機能との関係を、前記外力の態様および前記ボールの回転の態様に応じて複数格納しているデータベースを検索して、該当する機能を判定するステップと、
前記該当する機能の判定結果に基づき、予め定めておいた、前記第３ボタンに割り当てられた機能とマウスポインタ形状との関係を複数格納しているデータベースを検索して、前記該当する機能に対応するマウスポインタ形状を決定するステップと、
前記マウスポインタ形状の決定結果に基づき、前記マウスポインタが画面上のどこにあるかを問わず表示中のマウスポインタ形状を前記外力に応答して変化させるステップと
を含むマウスポインタの表示方法。
【請求項６】
請求項５において、
前記外力が、前記第３ボタンを押下する力または変位させる力である、
マウスポインタの表示方法。
【請求項７】
左ボタン、右ボタンおよび第３ボタンから成る３つボタンマウスのマウスポインタを表示するプログラムを記録したコンピュータ読み込み可能な記録媒体であって、
前記第３ボタンが受ける外力を検出するステップと、
この検出結果に基づき、予め定めておいた、前記第３ボタンが受ける前記外力と前記第３ボタンに割り当てられた機能との間の関係を、前記外力の態様に応じて複数格納しているデータベースを検索して、該当する機能を判定するステップと、
前記該当する機能の判定結果に基づき、予め定めておいた、前記第３ボタンに割り当てられた機能とマウスポインタ形状との間の関係を複数格納しているデータベースを検索して、前記該当する機能に対応するマウスポインタ形状を決定するステップと、
前記マウスポインタ形状の決定に基づき、前記マウスポインタが画面上のどこにあるかを問わず表示中のマウスポインタ形状を前記外力に応答して変化させるステップと
を含むプログラムを記録したコンピュータ読み込み可能な記録媒体。
【請求項８】
請求項７において、
前記外力が、前記第３ボタンを押下する力または変位させる力である、
プログラムを記録したコンピュータ読み込み可能な記録媒体。
【請求項９】
少なくとも２つのウインドウ上で、左ボタン、右ボタンおよび第３ボタンから成る３つボタンマウスのマウスポインタを表示するプログラムを記録したコンピュータ読み込み可能な記録媒体であって、前記ウインドウのうちの１つは前記第３ボタンの機能を実行することができないウインドウであり、
前記第３ボタンが受ける外力を検出するステップと、
この検出結果に基づき、予め定めておいた、前記第３ボタンが受ける前記外力と前記第３ボタンに割り当てられた機能との間の関係を、前記外力の態様に応じて複数格納しているデータベースを検索して、該当する機能を判定するステップと、
前記該当する機能の判定結果に基づき、予め定めておいた、前記第３ボタンに割り当てられた機能とマウスポインタ形状との関係を複数格納しているデータベースを検索して、前記該当する機能に対応するマウスポインタ形状を決定するステップと、
前記マウスポインタ形状の決定に基づき、前記第３ボタンの機能を実行することができない前記ウインドウ上で、表示中のマウスポインタ形状を前記外力に応答して変化させるステップと
を含むプログラムを記録したコンピュータ読み込み可能な記録媒体。
【請求項１０】
請求項９において、
前記外力が、前記第３ボタンを押下する力または変位させる力である、
プログラムを記録したコンピュータ読み込み可能な記録媒体。
【請求項１１】
左ボタン、右ボタンおよび第３ボタンから成る３つボタンマウスのマウスポインタを表示するプログラムを記録したコンピュータ読み込み可能な記録媒体であって、
前記第３ボタンが受ける外力を検出するステップと、
前記マウスの底面に設けられているボールの回転を検出するステップと、
前記第３ボタンが受ける前記外力検出結果と、前記ボールの前記回転検出結果とに基づき、予め定めておいた、前記第３ボタンが受ける外力および前記ボールの回転と、前記第３ボタンに割り当てられた機能との関係を、前記外力の態様および前記ボールの回転の態様に応じて複数格納しているデータベースを検索して、該当する機能を判定するステップと、
前記該当する機能の判定結果に基づき、予め定めておいた、前記第３ボタンに割り当てられた機能とマウスポインタ形状との関係を複数格納しているデータベースを検索して、前記該当する機能に対応するマウスポインタ形状を決定するステップと、
前記マウスポインタ形状の決定結果に基づき、前記マウスポインタが画面上のどこにあるかを問わず表示中のマウスポインタ形状を前記外力に応答して変化させるステップと
を含むプログラムを記録したコンピュータ読み込み可能な記録媒体。
【請求項１２】
請求項１１において、
前記外力が、前記第３ボタンを押下する力または変位させる力である、
プログラムを記録したコンピュータ読み込み可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、マウスポインタの表示方法に関する。
【０００２】
【従来の技術】
コンピュータ画面上で位置指定を行なう際に、ポインティング・デバイスを用いる。最もよく使われているポインティング・デバイスは、マウスである。その理由は、マウスは、小型、軽量、および操作性が良好なので、オペレーティング・システム（ＯＳ）やアプリケーション・プログラムをＧＵＩ(graphical user interface)操作するのに適しているからである。
【０００３】
ところで、インターネットの爆発的な普及と共に、情報量も日を追って飛躍的に増大している。その結果、インターネット・ユーザは、大量の情報を短時間に処理しなければならない状況に置かれている。この状況を改善するために、マウスの機能が強化されるようになった。
【０００４】
機能強化されたマウスの一例を図５に示す。図５（ａ）は上面図、図５（ｂ）は側面図である。マウス１は、本体２、この本体２の一部に形成さた左ボタン３、右ボタン４、および本体２の底面に突出するボール５から成る。ここまでは従来のマウスと同じである。機能強化されたマウス１は、左ボタン３と右ボタン４との間にホイール６が設けられている。ホイール６は、指で操作することができるほど小さな円板である。このホイール６は、指により前方および後方に回転させることができると共に、押下することもできる。
【０００５】
図６は、コンピュータ画面上に開いたウインドウ１１を示す図である。ウインドウ１１内には、文章や図表などを含むドキュメント１２が表示されている（図６には、ドキュメント１２のうち実際には表示されない部分（“Ｎ”、“Ｓ”という表示のある部分）も描いてある）。しかし、ドキュメント１２は行数が多いので、ウインドウ１１内にはその一部しか表示することができない。
【０００６】
ドキュメント１２のうち、現時点でウインドウ１１内に表示されていない部分を見るためには、スクロール・バー１３を使用する。スクロール・バー１３は、その上端にスクロール・アロー１４を、その下端にスクロール・アロー１５を備えている。ウインドウ１１内の表示を上にスクロール（スクロール・アップ）するためには、スクロール・アロー１５にマウスポインタ（マウスの操作に応じて画面上を移動する目印、マウス・カーソルとも言う）を当てた状態で、マウスの左ボタン３（設定によっては右ボタン４）をクリック（マウスのボタンを１回押して、素早く離す操作）する。通常、１回のクリックにつきドキュメント１２が１行分だけスクロール・アップする。すなわち、ドキュメント１２は、図６中に示した“Ｓ”から“Ｎ”方向へ１行分だけ移動する。一度に多数行のスクロール・アップを行なうためには、スクロール・バー１３が備えているスクロール・ボックス１６を用いる。スクロール・ボックス１６にマウスポインタを当てた状態で、マウスの左ボタン（設定によっては右ボタン）を押す。その状態でマウスを動かして、スクロール・ボックス１６を下に移動させる。すると、スクロール・ボックス１６が移動した距離に応じて、ドキュメント１２が“Ｓ”から“Ｎ”方向へ移動する。これにより、ウインドウ１１内では、多数行のスクロール・アップが行なわれる。
【０００７】
以上、スクロール・アップについて説明した。下へのスクロール（スクロール・ダウン）も同様である。ただし、スクロール・ダウンを行なうためには、スクロール・バー１３の上端にあるスクロール・アロー１４を用いる。スクロール・ボックス１６を使う場合には、マウス１を用いてスクロール・ボックス１６を上に移動させる。
【０００８】
上述したように、ドキュメント１２をスクロールさせる操作は、マウスポインタを移動させて小さなスクロール・アロー１４、１５に当てる必要があるので、面倒な操作であった。図５に示す機能強化されたマウス１は、この面倒な点を改善するために開発された。
【０００９】
以下、図５に示す機能強化されたマウス１の使い方を、図６を参照しながら説明する。まず、マウスポインタ１７を、図６に示すようにウインドウ１１内に位置させる。この状態で、マウス１に設けられたホイール６を回す。例えば後方へ回すと、ドキュメント１２が“Ｓ”から“Ｎ”の方向へ移動する。ホイール６の１回転は、所定のステップ数に分割されている。１ステップでスクロールするドキュメント１２の行数は、ＯＳのコントロール・パネルにおいて設定することができる。通常、３行に設定されている。
【００１０】
ホイール６は、スクロール以外の機能も有する。一例として、データ・ズームという機能がある。このデータ・ズーム機能は、インターネット上でいわゆるネット・サーフィンを行なう際に威力を発揮する。ＷＷＷ（World Wide Web）ブラウザを使って多くのウェッブ・サイト（Web site）の多くのページを効率良く見るためには、「戻る」や「進む」といったボタンを頻繁にマウスでクリックする必要がある。これは、とても面倒な操作である。このようなときに、上述したデータ・ズーム機能を使うと、ホイール６を操作するだけで「戻る」や「進む」をクリックするのと同じ機能を実現することができる。マウスを移動させる必要がないから、快適にネット・サーフィンを楽しむことができる。
【００１１】
上述したように、図５に示すマウス１は、ホイール６を設けることにより、従来のマウスと比べて使い勝手が大幅に向上した。しかしながら、未解決の課題も多い。その一つに、ボタンの押し間違え、という問題がある。図５に示すようなマウスは、通常、３つボタンマウスと呼ばれている。ホイール６は、回転だけでなく、押すことによっても機能を発揮する点から、このように呼ばれている。実際、ホイール６の代わりに回転しないヘッドを第３番目のボタンとして備えたマウスが存在する。
【００１２】
通常、３つボタンマウスは、第３ボタンを左ボタンと右ボタンとの間に配置している。近年のＯＳでは、マウスの左ボタンだけでなく、右ボタンも多用する。その結果、左ボタンや右ボタンの近くに位置している第３ボタンを間違って押してしまう、という問題が生ずる。
【００１３】
この問題を解決するものとして、第３ボタンを押したときにマウスポインタの形状を変化させる方法がある。この方法を採用したマウスに、例えば、米Ｍｉｃｒｏｓｏｆｔ社およびマイクロソフト株式会社のインテリマウス（IntelliMouse）（商標）がある。インテリマウス（商標）は、次のように動作する。インテリマウス（商標）では、第３番目のボタンは図５と同じくホイールであるが、ここでは第３ボタンと呼ぶ。
【００１４】
まず、ドキュメントを自動的にスクロールさせるオート・スクロール・モードを例に挙げる。このモードは、第３ボタンを一度クリックした後、マウスを動かす（ボールを回転させる）ことによりドキュメントを自動的にスクロールさせる、というものである。スクロール速度はマウスが移動した距離に比例する。したがって、マウスを少しだけ動かして、スクロール速度を遅くさせれば、ドキュメントをゆっくりと読むことが可能になる。この点から、このモードは読書モードとも呼ばれている。
【００１５】
インテリマウス（商標）のオート・スクロール・モード時におけるマウスポインタの形状変化は、次のようになる。
第３ボタン（ホイール）を押すとマウスポインタの形状が変化する。このまま、マウスを動かさない（ボールを回転させない）状態で、第３ボタンを離す（すなわち、クリックする）と、オート・スクロール・モードに入る。次いで、マウスを動かす（ボールを回転させる）と、ドキュメントがスクロールし始める。このスクロールは、マウスを停止させた後も続く。すなわち、ドキュメントは、自動的にスクロールする。オート・スクロール・モードにある間、マウスポインタの形状は変化した状態を維持する。もう一度、第３ボタンをクリックすると、ドキュメントのオート・スクロールは停止する。同時に、マウスポインタの形状は、通常のものに復帰する。
【００１６】
上述したオート・スクロール・モードは、アプリケーション・プログラムによってサポートされている。したがって、このモードをサポートしていないアプリケーション・プログラムを実行しているウインドウ内では、第３ボタンを押してもマウスポインタの形状は変化しない。この点を、図７を用いて具体的に説明する。図７においてデスクトップ２１上に、ウインドウ２２、２４、および２６が開いている。ウインドウ２２は、スクロール・バー２３を有するから、スクロール可能なウインドウである。同じく、ウインドウ２４も、スクロール・バー２５を有するから、スクロール可能なウインドウである。ウインドウ２６は、スクロール・バーを備えていないから、スクロール不可能なウインドウである。
【００１７】
いま、ウインドウ２２はオート・スクロール・モードをサポートするアプリケーションを実行しており、ウインドウ２４はオート・スクロール・モードをサポートしていないアプリケーションを実行している場合を考える。マウスポインタを移動させてウインドウ２２内に位置させて第３ボタンをクリックすると、オート・スクロール・モードに入る。ウインドウ２２をその状態のままにして、マウスポインタを移動させてウインドウ２４内に入れる。そして、第３ボタンをクリックする。ところが、マウスポインタの形状は変化しない。なぜならば、ウインドウ２４はオート・スクロール・モードをサポートしていないアプリケーションを実行しているから、このウインドウ２４内では第３ボタンをクリックしてもオート・スクロール・モードに入れないからである。このように、同じ表示画面上でありながらオート・スクロール・モードに入れるウインドウと、入れないウインドウとが存在すると、ユーザを戸惑わせる。
【００１８】
次に、パンニング・モードの場合を考える。パンニング・モードとは、第３ボタンを押し続けながらマウスを動かす（ボールを回転させる）ことにより、ドキュメントを任意の速度で任意の方向に連続スクロールさせるモードである。このモードは、第３ボタンの押下を止めると終了する。ユーザは、ドキュメントを自分に適した速度でスクロールさせることができるので、必要な個所を素早く探し出すことができる。
【００１９】
インテリマウス（商標）のパンニング・モード時におけるマウスポインタの形状変化は、次のようになる。
第３ボタンを押すとマウスポインタの形状が変化する。マウスを動かしてドキュメントをスクロールさせている間も、マウスポインタの形状は変化したままである。第３ボタンの押下を止めてパンニング・モードを終了させるのと同時に、マウスポインタの形状は、通常のものに復帰する。
【００２０】
上述したパンニング・モードは、オート・スクロール・モードと同様に、アプリケーションがサポートしている。したがって、図７を用いて説明したオート・スクロール・モードにおける不都合が、パンニング・モードにも当てはまる。すなわち、マウスポインタをパンニング・モードをサポートしているアプリケーションを実行しているウインドウ２２内に位置させて第３ボタンをクリックすると、パンニング・モードに入り、マウスポインタの形状が変化する。ウインドウ２２をその状態のままにして、マウスポインタを移動させてパンニング・モードをサポートしていないアプリケーションを実行しているウインドウ２４内に入れる。その場所で第３ボタンをクリックしても、マウスポインタの形状は変化しない。このように、同じ表示画面上でありながらパンニング・モードに入れるウインドウと、入れないウインドウとが存在すると、ユーザを戸惑わせる。
【００２１】
【発明が解決しようとする課題】
以上のように、従来の３つボタンマウスには、次の課題があった。すなわち、第３ボタンを使用して実現する各種のモードのサポートをアプリケーション・プログラムに委ねているので、同じ表示画面上でありながら第３ボタンが実現するモードに入れるウインドウと、入れないウインドウとが存在する事態になる結果、ユーザを戸惑わせる。
【００２２】
なお、米Ｌｏｇｉｔｅｃｈ社は、上述した各種のモードのサポートをアプリケーション・プログラムに委ねずに、第３ボタンが出力するマウス・イベントをマウス・ドライバによって処理することにより各種のモードを実現する技術を提案している。この技術では、スクロール・バーを有するスクロール可能なウインドウ内であれば、アプリケーションに関係なく、第３ボタンをクリックすることによりスクロール・モードに入ることができる。しかしながら、同社の技術が実現することのできるモードは、スクロール・モードだけである。
【００２３】
この技術では、第３ボタンをクリックすると、スクロール・モードに入り、ドキュメントがスクロールする。そして、再度、第３ボタンをクリックすると、スクロール・モードを終了する。スクロールという機能とポインタ形状変化との間の関係は、次のようになる。
クリックは、マウスのボタンを押す動作と、離す動作という２つの動作を連続して素早く行なう操作である。いかに速く行なっても、システムはクリックを押す動作と離す動作とに区別して認識する。米Ｌｏｇｉｔｅｃｈ社の技術は、これら２つの動作を区別して扱っている。
（１）第３ボタンを押すと、スクロールという機能を発揮する。
（２）第３ボタンを離すと、スクロールという機能を維持した状態で、マウスポインタの形状を変化させる。
（３）再び第３ボタンを押しても、スクロール機能を維持したままであり、マウスポインタの形状も変化させたままである。
（４）第３ボタンを離すと、スクロール機能を停止すると共に、マウスポインタの形状を通常のものに復帰させる。
【００２４】
このように、スクロール機能を発揮している状態と、マウスポインタの形状を変化させている状態とが一対一の対応関係にない。また、マウスポインタの形状の変化は上記（２）のように第３ボタンを離す瞬間に行なわれるから、ユーザは、第３ボタンを押しているという自分の行為を視覚的に認識することができない。すなわち、どれかのボタンを押していることは、自分の行為であるから認識できる。しかし、マウスポインタの形状の変化は、その瞬間には行なわれないので、第３ボタンを押しているという事実は、ユーザに対してフィードバックされない。したがって、米Ｌｏｇｉｔｅｃｈ社の技術によっても、左ボタンまたは右ボタンと間違えて第３ボタンを押しても直ぐには気付かない、という事態が生じる。
本発明は上記の課題を解決するためになされたものである。なお、本発明は、図５に例示したようなコンピュータの外部装置としてのマウスに限定されるものではなく、ポータブル式コンピュータのキーボード近辺に配置された組み込み式のマウスにも適用できる。
【００２５】
本発明の目的は、３つボタンマウスにおいて、マウスポインタが画面上のどこにあっても、ボタンの押し間違いが発生した場合、それをユーザに容易に気付かせることのできる、マウスポインタの表示方法を提供することである。
【００２６】
【課題を解決するための手段】
本発明は、左ボタン、右ボタンおよび第３ボタンから成る３つボタンマウスのマウスポインタを表示する方法に関する。
前記第３ボタンが受ける外力を検出する。この検出結果に基づき、予め定めておいた、前記第３ボタンが受ける前記外力と前記第３ボタンに割り当てられた機能との間の関係を、前記外力の態様に応じて複数格納しているデータベースを検索して、該当する機能を判定する。前記該当する機能の判定結果に基づき、予め定めておいた、前記第３ボタンに割り当てられた機能とマウスポインタ形状との間の関係を複数格納しているデータベースを検索して、前記該当する機能に対応するマウスポインタ形状を決定する。前記マウスポインタ形状の決定に基づき、マウスポインタが画面上のどこにあるかを問わず表示中のマウスポインタ形状を前記外力に応答して変化させる。
【００２７】
以上のように、本発明では、マウスの第３ボタンが外力を受けたとき、前記外力に応答してマウスポインタの形状を変化させる。これにより、ユーザに対して、マウスの第３ボタンに外力を加えたことを視覚を通してフィードバックすることが可能になるから、ユーザはボタンの押し間違えに直ぐに気付くことが可能になる。
【００２８】
マウスポインタの形状を変化は、マウスポインタが表示画面上のどこにあるかに関係なく行なわれるから、その変化は、従来技術と異なり、特定のウインドウに限定されることがない。すなわち、少なくとも２つのウインドウ上で、前記３つボタンマウスのマウスポインタを表示する場合、前記ウインドウのうちの１つが前記第３ボタンの機能を実行することができないウインドウであっても、そのウインドウ上で、表示中のマウスポインタ形状を第３ボタンが受ける外力に応答して変化させることができる。
【００２９】
【発明の実施の形態】
以下、本発明の実施の一形態を説明する。
図１は、この実施形態に係るマウスポインタ形状決定モジュールを示す図である。マウスポインタ形状決定モジュール３１は、キー入力検出部３２、ボール回転検出部３３、左ボタン押下検出部３４、右ボタン押下検出部３５、第３ボタン押下検出部３６、第３ボタン変位検出部３７、マウス機能判定部３８、マウス機能データベース３９、マウスポインタ形状決定部４０、およびマウスポインタ形状データベース４１から成る。
【００３０】
キー入力検出部３２は、マウスの動作と同時に行なわれたキーボードからのキー入力を検出する。
ボール回転検出部３３は、マウスの底面に設けられたボールの回転方向および回転距離を検出する。ボールの回転方向および回転距離は、互いに直交するＸ方向およびＹ方向の成分を検出する。
【００３１】
左ボタン押下検出部３４は、マウスの左ボタンが押されたこと、および離されたことを検出する。
右ボタン押下検出部３５は、マウスの右ボタンが押されたこと、および離されたことを検出する。
【００３２】
第３ボタン押下検出部３６は、第３ボタンが押されたこと、および離されたことを検出する。第３ボタンとは、左ボタンおよび右ボタンに加えて新たにマウスに設けられた、外力を電気信号に変換するための部品である。ボタンとは、総称であり、左ボタンや右ボタンと類似の外形を有するボタン、回転する小型円板（例えばホイール）、球形の頭部を備えたスティク、球体などの形状をとることができる。
第３ボタン変位検出部３７は、第３ボタンが上記ボール回転検出部３３がボールの回転方向および回転距離を検出するために用いるＸ方向および／またはＹ方向の変位（静止状態からのずれの大きさ）を検出する。
【００３３】
マウス機能データベース３９は、上記各検出部３２〜３９が検出する検出値と、これらの検出値の組み合わせに対応するマウス機能を格納している。第３ボタンが関係するマウス機能は、ユーザが予め、コントロール・パネルなどを用いて設定しておく。その設定結果がマウス機能データベース３９に格納される。
マウス機能判定部３８は、上記各検出部３２〜３９が検出した検出値を基に、マウス機能データベース３９を検索して、マウスの機能を判定する。
マウスポインタ形状データベース４１は、マウスの機能と、それに対応するマウスポインタ形状とを格納している。
マウスポインタ形状決定部４０は、マウス機能判定部３８が判定したマウス機能に基づいてマウスポインタ形状データベース４１を検索して、当該マウス機能に対応したマウスポインタ形状を決定する。
【００３４】
マウスポインタ形状決定モジュール３１の動作の概略を述べる。
マウスポインタ形状決定モジュール３１には、マウス・イベント入力４２が入力される。マウス・イベントとは、ソフトウェアが状態の変化を引き起こす、マウスに起因する事象のことである。近年のＯＳやアプリケーションは、イベントの発生をきっかけにして、イベントに対応する処理を行なうイベント駆動（イベント・ドリブン）型のプログラム構造をしている。マウス・イベント入力４２が入力されるのをきっかけにして、上記各検出部３２〜３９がそれぞれの役割を持った検出処理を行なう。
【００３５】
上記各検出部３２〜３９は、１つのマウス・イベント入力に対して、パラレルに検出処理を行なう。それぞれの検出結果は、マウス機能判定部３８に入力する。
【００３６】
マウス機能判定部３８は、上記各検出部３２〜３９が検出した検出値を基に、マウス機能データベース３９を検索して、マウスの機能を判定する。詳細は、下で述べる。
【００３７】
マウスポインタ形状決定部４０、マウス機能判定部３８が判定したマウスの機能に基づいてマウスポインタ形状データベース４１を検索して、当該マウスの機能に対応したマウスポインタの形状を決定する。詳細は、下で述べる。
【００３８】
図２は、マウス機能判定部３８の動作を示すフローチャートである。図２を参照しながら、マウス機能判定部３８の動作を説明する。
マウスポインタ形状は、第３ボタンと関係ないマウス・イベントによって種々の形状に変化する。例えば「実行中」という機能を表す場合、マウスポインタは、Ｗｉｎｄｏｗｓ（商標）ＯＳでは砂時計の形状に変化し、ＭａｃＯＳ（商標）では腕時計の形状に変化する。ここでは、第３ボタンが関係するマウス・イベント入力４２の判定に限定して説明する。砂時計や腕時計への形状の変化は、第３ボタンが関係しないマウス・イベント入力４２に起因するものであるから、ここでは説明しない。
【００３９】
まず、第３ボタンが変位したか否かを判定する（ステップＳ５１）。ＹｅｓならばステップＳ５２へ進み、ＮｏならばステップＳ５８に進む。
【００４０】
ステップＳ５２では、第３ボタンの変位と同時にキーボードから補助キーが入力されたか否かを判定する。ＹｅｓならばステップＳ５４へ進む。ＮｏならばステップＳ５３に進み、マウスの機能が「スクロール」であると判定する。「スクロール」とは、表示範囲（例えばウインドウ）を縦方向または横方向に移動させて、一度に表示することができないドキュメントを順次表示させてゆく機能である。
【００４１】
ステップＳ５４では、ステップＳ５２において検出された補助キーがコントロール・キーであるか否かを判定する。ＮｏならばステップＳ５６へ進む。ＹｅｓならばステップＳ５５に進み、マウスの機能が「ズーム」であると判定する。「ズーム」とは、ドキュメントの表示を縮小または拡大する機能である。
【００４２】
ステップＳ５６では、ステップＳ５２において検出された補助キーがシフト・キーであるか否かを判定する。Ｎｏの場合、ここでの判定は行なわない。いわゆる“Don't care. ”の場合である。上述したように、ここでは、説明を、第３ボタンが関係するマウス・イベント入力４２の判定に限定している。したがって、“Don't care. ”であるからといってマウスポインタの形状が変化しない、ということを意味しない。ＹｅｓならばステップＳ５７に進み、マウスの機能が「データ・ズーム」であると判定する。「データ・ズーム」とは、データを折り畳んで隠したり、それを再び開いて表示する機能である。ＷＷＷブラウザに適用すると、「戻る」や「進む」という機能を素早く行なうことが可能になる。
【００４３】
ステップＳ５１において第３ボタンの変位が検出されなかった（Ｎｏ）場合、ステップＳ５８に進む。
ステップＳ５８では、第３ボタンが押下されたか否かを判定する。ＹｅｓならばステップＳ５９へ進む。Ｎｏならば“Don't care. ”であるから、ここでの判定は行なわない。
【００４４】
ステップＳ５９では、押下された第３ボタンを直ぐに離したか否かを判定する。ＮｏならばステップＳ６０へ進み、ＹｅｓならばステップＳ６２に進む。
【００４５】
ステップＳ６０では、マウス底面に一部突出するボールが回転したか否かを判定する。ボールが回転するとは、通常、マウスが移動することを意味する。Ｎｏならば“Don't care. ”であるから、ここでの判定は行なわない。ＹｅｓならばステップＳ６１に進み、マウスの機能が「パンニング」であると判定する。「パンニング」とは、ドキュメントを任意の速度で任意の方向に連続スクロールさせる機能である。
【００４６】
ステップＳ６２では、ボールが回転したか否かを判定する。Ｎｏならば“Don't care. ”であるから、ここでの判定は行なわない。ＹｅｓならばステップＳ６３に進み、マウスの機能が「オート・スクロール」であると判定する。「オート・スクロール」とは、ドキュメントを自動的にスクロールさせる機能である。
以上、図２に示すフローチャートを説明した。
【００４７】
図３は、マウスポインタ形状決定部４０の動作を示すフローチャートである。図３を参照しながら、マウスポインタ形状決定部４０の動作を説明する。
【００４８】
図２に示すフローチャートを参照しながら説明したように、第３ボタンに起因するマウス・イベント入力４２は、マウス機能判定部３８によって５つのマウス機能に判定される。始めのステップであるステップＳ６５では、マウスポインタ形状決定部４０は、マウス機能判定部３８からマウス機能の判定結果を取得する。
【００４９】
ステップＳ６６では、取得したマウス機能の判定結果に基づいてマウスポインタ形状データベース４１を検索する。マウスポインタ形状データベース４１は、マウス機能と、それに対応するマウスポインタ形状とを格納している。マウス機能に対応するマウスポインタ形状とは、当該マウス機能のメタファ(metapher:抽象概念を比喩的に表現する具体的な事物）を利用した形状である。検索の結果、当該マウス機能に対応するマウスポインタ形状が１つ抽出される。
【００５０】
ステップＳ６７では、当該マウス機能を表すマウスポインタ形状として、ステップＳ６６において抽出したマウスポインタ形状を用いることに決定する。決定結果は、マウスポインタ形状出力４３として出力する。
【００５１】
マウスポインタ形状出力４３は、ＯＳへ引き渡される。ＯＳは、グラフィックス表示機構を制御して表示画面上の通常形状のマウスポインタがある位置に、通常形状に代えてマウスポインタ形状出力４３通りの表示を行なう。この表示は、直ちに行なう。すなわち、第３ボタンが押下され、あるいは変位させられると直ぐにマウスポインタ形状が変化する。また、この表示は、マウスポインタが画面上のどこにあるかを問わない。すなわち、マウスポインタは特定のウインドウ内にある必要はない。
【００５２】
図７を用いて具体的に説明する。ウインドウ２２および２４は、それぞれスクロール・バー２３および２５を備えているから、スクロール可能なウインドウである。一方、ウインドウ２６は、スクロール・バーを持っていないから、スクロール不可のウインドウである。いま、ウインドウ２２はマウス第３ボタンのスクロール機能をサポートするアプリケーションを実行しており、ウインドウ２４はそれをサポートしていないアプリケーションを実行しているものと仮定する。従来技術では、マウスポインタがウインドウ２２内あるときに第３ボタンを押下あるいは変位させたとき、マウスポインタの形状が変化する。しかし、ウインドウ２４およびウインドウ２６の中にマウスポインタがあるときに第３ボタンを押下あるいは変位させても、マウスポインタの形状は変化しない。したがって、ユーザは、間違えて第３ボタンを押下あるいは変位させても、そのことに気付かない。
【００５３】
これに対して、この実施形態によれば、第３ボタンを押下あるいは変位させたとき、マウスポインタが画面上のどこにあるかに関係なく、直ちにマウスポインタの形状を変化させる。したがって、ウインドウ２４およびウインドウ２６の中にマウスポインタがあるときに第３ボタンを押下あるいは変位させても、マウスポインタの形状は変化する。これに加えて、デスクトップ２１上で第３ボタンを押下あるいは変位させても、マウスポインタの形状は変化する。これにより、ユーザに、マウスの第３ボタンを押した、あるいは変位させたことを視覚を通してフィードバックすることが可能になる。
【００５４】
ユーザがマウスのボタンを意図的に押そうとするときは、アイコンなどのようにクリックすることのできるオブジェクトの近く、あるいはクリック可能な場所（例えば、アイコンの近くで右ボタンをクリックして、そのアイコンが有するボップアップ・メニューを開かせるとき）にマウスポインタを位置させて、マウスポインタを凝視している場合が多い。こういう状況下において、間違って第３ボタンを押し、あるいは変位させてしまった場合、この実施形態によれば、即座にマウスポインタの形状が変化する。このマウスポインタの形状変化は、視覚を通してユーザにフィードバックされる。この視覚的によるフィードバックは、マウスポインタを凝視しているユーザに大きな効果を与える。
【００５５】
以上のように、この実施形態によれば、間違って第３ボタンを押し、あるいは変位させてしまったユーザは、即座に視覚によって誤りを指摘されるので、容易に間違いに気付くようになる。この結果、ボタンの押し間違いを避けるためにユーザが無意識に行なっている学習の効果が、飛躍的に高まる。
【００５６】
さらに、この実施形態では、第３ボタンに複数の機能（あるいはモード）が割り振られている場合、マウスポインタが機能に応じた形状（機能のメタファ）に変化するから、ユーザは、第３ボタンを押し、あるいは変位させるだけで、アクティブになった機能を知ることができる。したがって、ユーザは、第３ボタンの動作のさせ方を詳しく知らなくとも、第３ボタンを押し、あるいは変位させたとき実際に表示されるマウスポインタの形状から、アクティブな機能を即座に知ることができる。この結果、従来技術のように、実際にマウスを動かして様子を見るといった手間をかけずに済むから、ユーザに与える負荷を軽減させることができる。
【００５７】
上述した本発明の実施の一形態による、マウスポインタの表示方法は、種々のプログラミング言語を用いてプログラムにすることができる。このプログラムは、ＲＯＭなどコンピュータ・システムに実装される記憶装置、フロッピー・ディスク（ＦＤ）、ＣＤ−ＲＯＭ（コンパクト・ディスクを用いた読み取り専用メモリ）、およびＭＯ（光磁気）ディスクなどの可搬記録媒体、あるいはネットワークに接続されたサーバ・コンピュータなどに設けられた外部記憶装置などのコンピュータ読み込み可能な記録媒体に記録することができる。
【００５８】
上述した本発明の実施の一形態に係るマウスポインタの表示方法を実施するコンピュータの例を、図４を用いて説明する。
【００５９】
図４に示すコンピュータ７１は、ＣＰＵ７２、グラフィックス表示機構７３、ブリッジ回路Ａ７４、メイン・メモリ７５、ローカル・バス７６、ハードディスク駆動装置コントローラＨＤＣ７７、ハードディスク駆動装置ＨＤＤ７８、ブリッジ回路Ｂ７９、システム・バス８０、ＲＯＭ(read only memory)８１、フロッピー・ディスク駆動装置コントローラＦＤＣ８２、フロッピー・ディスク駆動装置ＦＤＤ８３、マウス・コントローラ８４、マウス８５、Ｉ／Ｏ（入出力）コントローラ８６、ネットワーク８７を主要部品として構成されている。
【００６０】
ＣＰＵ７２には、米Ｉｎｔｅｌ社のＰｅｎｔｉｕｍII（商標）や、米Ｍｏｔｏｒｏｌａ社および米ＩＢＭ社のＰｗｅｒＰＣ（商標）などのマイクロプロセッサを用いることができる。
【００６１】
ローカル・バス７６は、ハードディスク駆動装置ＨＤＤ７８など高速に動作する周辺装置（デバイスとも呼ぶ）を接続するバスである。例えば、ＰＣＩバスを用いる。ＰＣＩ(peripheral component interconnect) バスは、ＰＣＩスペシャル・インタレスト・グループ( ＰＣＩ Special Interest Group;米インテル社を中心として米ＩＢＭ社や米コンパック・コンピュータ社など百数十社が参加した標準化団体）が策定したローカル・バス・アーキテクチャである。
【００６２】
システム・バス８０は、フロッピー・ディスク駆動装置ＦＤＤ８３やマウス８５などの低速に動作するデバイスを接続するバスである。例えば、ＩＳＡバスを用いる。ＩＳＡ(Industry Standard Architecture)バス、米ＩＢＭ社のパーソナルコンピュータＰＣ／ＡＴで採用された拡張バスを基本にして、国際的な標準規格とされた拡張バスである。
【００６３】
ＣＰＵ７２とローカル・バス７６とは、ブリッジ回路Ａ７４によって架橋されている。ブリッジ回路Ａ７４は、例えばメモリ／ＰＣＩ制御チップ・セットを用いて構成する。
【００６４】
グラフィックス表示機構７３は、ＣＲＴ(cathode ray tube)やＬＣＤ(liquid crystal display)などの表示装置への出力を制御する。グラフィックス表示機構６６とブリッジ回路Ａ６４との間は、例えばＡＧＰバスによって接続する。ＡＧＰ(accelerated graphics port) バスは、ＰＣＩバスを改良して、グラフィックス・カードなど画像表示に関連した回路を接続するための専用バスとしたものである。
【００６５】
ローカル・バス７６とシステム・バス８０との間は、ブリッジ回路Ｂ７９によって架橋されている。ブリッジ回路Ｂ７９は、例えばＰＣＩ−ＩＳＡブリッジ・チップによって構成する。
【００６６】
ハードディスク駆動装置ＨＤＤ７８は、オペレーティング・システム（ＯＳ）を始め種々のプログラムを格納している。なお、ＯＳなどのシステム・プログラムやアプリケーション・プログラムは、ＲＯＭ(read only memory)８１などの他の記憶装置に格納する形態も採り得る。
【００６７】
以下、図４に示すコンピュータ７１の動作を説明する。
上述したように、本発明の実施の一形態による、マウスポインタの表示方法は、種々のプログラミング言語を用いてプログラム（以下、「マウスポインタ表示方法プログラム」と呼ぶ）にすることができる。
【００６８】
このマウスポインタ表示方法プログラムは、コンピュータ読み込み可能な記録媒体に記録される。記録媒体としては、ＲＯＭ(read only memory)、ＥＥＰＲＯＭ(electricaly erasable programmable read only memory)、およびフラッシュＥＥＰＲＯＭ(flashＥＥＰＲＯＭ) などの、コンピュータ・システムに実装される記憶装置、フロッピー・ディスク（ＦＤ）、ＣＤ−ＲＯＭ（コンパクト・ディスクを用いた読み取り専用メモリ）、およびＭＯ（光磁気）ディスクなどの可搬記録媒体、あるいはネットワークに接続されたサーバ・コンピュータなどに設けられた外部記憶装置などを用いることができる。
【００６９】
記録媒体に記録されたマウスポインタ表示方法プログラムは、次のようにしてコンピュータ７１内に取り込む。
【００７０】
取り込み方法は、記録媒体がコンピュータ７１に実装される記憶装置である場合には、２通りの方法に分かれる。記録媒体がＲＯＭのように読み出し専用の記憶装置の場合、半導体製造プロセスにおいて電力管理プログラムをＲＯＭ中に焼き込む。その後、そのＲＯＭをコンピュータ７１に実装する（例えば、図４に示したＲＯＭ８１が、この場合に相当する）
【００７１】
記録媒体がフロッピー・ディスク（ＦＤ）などの可搬記録媒体である場合、例えば、マウスポインタ表示方法プログラムを記録したＦＤをＦＤＤ７８に装填して、そのＦＤに記録されている当該マウスポインタ表示方法プログラムを読み込む。そして、当該マウスポインタ表示方法プログラムを、例えばＨＤＤ７８に格納する。当該マウスポインタ表示方法プログラムを記録した記録媒体がＣＤ−ＲＯＭやＭＯディスクなどの可搬記録媒体の場合も同様である。すなわち、専用の読み取り装置にその可搬記録媒体を装填して読み込む。
【００７２】
記録媒体がネットワーク上の外部記憶装置である場合には、ネットワーク８７を介してその外部記憶装置に記録されているマウスポインタ表示方法プログラムをダウン・ロードする。そして、読み込んだ当該マウスポインタ表示方法プログラムを、例えば例えばＨＤＤ７８に格納する。
【００７３】
以上のようにしてコンピュータ７１内に取り込んだマウスポインタ表示方法プログラムは、オペレーティング・システム（ＯＳ）の制御の下で実行される。
【００７４】
【発明の効果】
本発明に係る、マウスポインタの表示方法には、次の効果がある。
マウスの第３ボタンを押下あるいは変位させたとき、マウスポインタが画面上のどこにあるかに関係なく、マウスポインタの形状を変化させる。これにより、ユーザに対して、マウスの第３ボタンを押した、あるいは変位させたことを視覚を通してフィードバックすることが可能になる。
【００７５】
本発明によれば、間違って第３ボタンを押し、あるいは変位させてしまったユーザは、即座に視覚的に誤りを指摘されるので、容易に間違いに気付くようになる。この結果、ボタンの押し間違いを避けるためにユーザが無意識に行なっている学習の効果が、飛躍的に高まる。
【００７６】
さらに、本発明によれば、第３ボタンに複数の機能（あるいはモード）が割り振られている場合、マウスポインタの形が機能に応じた形状（機能のメタファ）に変化するから、ユーザは、第３ボタンを押し、あるいは変位させるだけで、アクティブになった機能を知ることができる。したがって、ユーザは、第３ボタンの動作のさせ方を詳しく知らなくとも、第３ボタンを押し、あるいは変位させたとき実際に表示されるマウスポインタの形状から、アクティブな機能を即座に知ることができる。この結果、従来技術のように、実際にマウスを動かして様子を見るといった手間をかけずに済むから、ユーザに与える負荷を軽減させることができる。
【図面の簡単な説明】
【図１】本発明の実施の一形態に係るマウスポインタ形状決定モジュールを示す図である。
【図２】図１に示すマウス機能判定部の動作を示すフローチャートである。
【図３】図１に示すマウスポインタ形状決定部の動作を示すフローチャートである。
【図４】本発明の実施の一形態に係るマウスポインタの表示方法を実施するコンピュータの例を示す図である。
【図５】３つボタンマウスの例を示す図である。
【図６】コンピュータ画面上に開いたウインドウにドキュメントが表示される様子を示す図である。
【図７】デスクトップ上にウインドウを開いた様子を示す図である。
【符号の説明】
３１  マウスポインタ形状決定モジュール
３２  キー入力検出部
３３  ボール回転検出部
３４  左ボタン押下検出部
３５  右ボタン押下検出部
３６  第３ボタン押下検出部
３７  第３ボタン変位検出部
３８  マウス機能判定部
３９  マウス機能データベース
４０  マウスポインタ形状決定部
４１  マウスポインタ形状データベース
４２  マウス・イベント入力
４３  マウスポインタ形状出力
【図１】
0003817385.tif 000002
【図２】
0003817385.tif 000003
【図３】
0003817385.tif 000004
【図４】
0003817385.tif 000005
【図５】
0003817385.tif 000006
【図６】
0003817385.tif 000007
【図７】
0003817385.tif 000008