(57)【要約】【課題】拡張デスクトップ環境においてマウスの操作性を向上させたマルチモニタシステムを提供する。【解決手段】プライマリモニタ１１の画面Ｍ１とセカンダリモニタ２１の画面Ｍ２とがずれて所定区間Ｂ２−Ｄ１で接続されている場合、マウスポインタＭＰを移動可能な所定区間Ｂ２−Ｄ１を正確かつ迅速に把握できるように、目印ウィンドウ５０をプライマリモニタ１１の画面Ｍ１及びセカンダリモニタ２１の画面Ｍ２上に所定区間Ｂ２−Ｄ１に隣接して表示する。オプションとして、マウスポインタＭＰが目印ウィンドウ５０上又はその近傍に移動したとき目印ウィンドウ５０を隠したり、マウスポインタＭＰを所定区間で一時的に停止させたり、マウスポインタＭＰが他の画面に移動したとき移動元の画面上に移動先のモニタ番号を表示する。【選択図】図６
2006059251.tif 000002
【特許請求の範囲】
【請求項１】
第１及び第２のモニタと、
前記第１及び第２のモニタの画面上に表示すべきポインタの座標を指示するポインティングデバイスと、
前記ポインティングデバイスにより指示された座標にポインタを表示するポインタ表示制御手段と、
前記第１のモニタの画面の周縁と前記第２のモニタの画面の周縁とを所定箇所で仮想的に接続し、前記ポインタを前記第１及び第２のモニタの画面間で相互に移動可能とする拡張デスクトップ設定手段と、
前記所定箇所を識別するためのオブジェクトを前記第１及び／又は第２のモニタの画面上に表示する手段とを備えたことを特徴とするマルチモニタシステム。
【請求項２】
請求項１に記載のマルチモニタシステムであって、
前記オブジェクトは前記所定箇所に隣接して表示される目印ウィンドウであることを特徴とするマルチモニタシステム。
【請求項３】
請求項２に記載のマルチモニタシステムであってさらに、
前記ポインタが前記目印ウィンドウ上又はその近傍に移動したとき、前記目印ウィンドウの表示を停止する手段を備えたことを特徴とするマルチモニタシステム。
【請求項４】
請求項１に記載のマルチモニタシステムであってさらに、
前記ポインタが前記所定箇所に達したとき、前記ポインタを強制的に停止させる手段と、
前記ポインタが強制的に停止された後、前記ポインティングデバイスが前記第１及び第２のモニタの一方の画面から当該他方の画面へ前記ポインタを移動させるための座標を指示したとき、前記ポインタの停止を解除して当該他方の画面への前記ポインタの移動を許容するポインタ移動許容手段とを備えたことを特徴とするマルチモニタシステム。
【請求項５】
請求項４に記載のマルチモニタシステムであってさらに、
前記ポインタが強制的に停止された後、前記ポインティングデバイスの停止を検知する手段を備え、
前記ポインタ移動許容手段は、前記ポインティングデバイスの停止が検知された後、前記ポインティングデバイスが前記第１及び第２のモニタの一方の画面から当該他方の画面へ前記ポインタを移動させるための座標を指示したとき、前記ポインタの停止を解除して当該他方の画面への前記ポインタの移動を許容することを特徴とするマルチモニタシステム。
【請求項６】
請求項１に記載のマルチモニタシステムであってさらに、
前記第１及び第２のモニタの一方の画面から当該他方の画面へ前記ポインタが移動したとき、前記一方のモニタの画面上に当該他方のモニタを識別するための情報を表示する手段を備えたことを特徴とするマルチモニタシステム。
【請求項７】
請求項１に記載のマルチモニタシステムであって
前記拡張デスクトップ設定手段は、前記第１のモニタの画面の一辺と前記第２のモニタの画面の当該他辺とを前記所定箇所として所定区間で仮想的に接続し、
前記マルチモニタシステムはさらに、
前記ポインタが前記一辺の所定区間以外の区間に達したとき、前記ポインタを強制的に停止させる手段と、
前記ポインタが強制的に停止された後、前記ポインティングデバイスが前記第１及び第２のモニタの一方の画面から外側へ前記ポインタを移動させるための座標を指示したとき、前記所定区間の両端のうち前記ポインタの位置から近い方の端へ前記ポインタをスキップさせ、前記ポインタの停止を解除して当該他方の画面への前記ポインタの移動を許容するポインタ移動許容手段とを備えたことを特徴とするマルチモニタシステム。
【請求項８】
請求項７に記載のマルチモニタシステムであってさらに、
前記ポインタが強制的に停止された後、前記ポインティングデバイスの停止を検知する手段を備え、
前記ポインタ移動許容手段は、前記ポインティングデバイスの停止が検知された後、前記ポインティングデバイスが前記第１及び第２のモニタの一方の画面から外側へ前記ポインタを移動させるための座標を指示したとき、前記所定区間の両端のうち前記ポインタの位置から近い方の端へ前記ポインタをスキップさせ、前記ポインタの停止を解除して当該他方の画面への前記ポインタの移動を許容することを特徴とするマルチモニタシステム。    
【請求項９】
第１及び第２のモニタと、
前記第１及び第２のモニタの画面上に表示すべきポインタの座標を指示するポインティングデバイスと、
前記ポインティングデバイスにより指示された座標にポインタを表示するポインタ表示制御手段と、
前記第１のモニタの画面の周縁と前記第２のモニタの画面の周縁とを所定箇所で仮想的に接続し、前記ポインタを前記第１及び第２のモニタの画面間で相互に移動可能とする拡張デスクトップ設定手段と、
前記第１及び第２のモニタの一方の画面から当該他方の画面へ前記ポインタが移動したとき、前記一方のモニタの画面上に当該他方のモニタを識別するための情報を表示する手段とを備えたことを特徴とするマルチモニタシステム。
【請求項１０】
第１及び第２のモニタの画面上に表示すべきポインタの座標をポインティングデバイスから入力するステップと、
前記ポインティングデバイスから入力された座標にポインタを表示するステップと、
前記第１のモニタの画面の周縁と前記第２のモニタの画面の周縁とを所定箇所で仮想的に接続し、前記ポインタを前記第１及び第２のモニタの画面間で相互に移動可能とする拡張デスクトップ設定ステップと、
前記所定箇所を識別するためのオブジェクトを前記第１及び／又は第２のモニタの画面上に表示するステップとを備えたことを特徴とするマルチモニタ方法。
【請求項１１】
第１及び第２のモニタの画面上に表示すべきポインタの座標をポインティングデバイスから入力するステップと、
前記ポインティングデバイスから入力された座標にポインタを表示するポインタ表示ステップと、
前記第１のモニタの画面の周縁と前記第２のモニタの画面の周縁とを所定箇所で仮想的に接続し、前記ポインタを前記第１及び第２のモニタの画面間で相互に移動可能とする画面拡張ステップと、
前記第１及び第２のモニタの一方の画面から当該他方の画面へ前記ポインタが移動したとき、前記一方のモニタの画面上に当該他方のモニタを識別するための情報を表示するステップとを備えたことを特徴とするマルチモニタ方法。
【請求項１２】
第１のモニタの画面の周縁と第２のモニタの画面の周縁とを所定箇所で仮想的に接続し、ポインティングデバイスに応じて表示されたポインタを前記第１及び第２のモニタの画面間で相互に移動可能とする拡張デスクトップ環境で稼働する目印表示プログラムであって、
前記所定箇所を特定するステップと、
前記特定した所定箇所を識別するためのオブジェクトを前記第１及び／又は第２のモニタの画面上に表示するステップとをコンピュータに実行させるための目印表示プログラム。
【請求項１３】
第１のモニタの画面の周縁と第２のモニタの画面の周縁とを所定箇所で仮想的に接続し、ポインティングデバイスに応じて表示されたポインタを前記第１及び第２のモニタの画面間で相互に移動可能とする拡張デスクトップ環境で稼働する目印表示プログラムであって、
前記第１及び第２のモニタの一方の画面から当該他方の画面への前記ポインタの移動を検知するステップと、
前記一方のモニタの画面上に当該他方のモニタを識別するための情報を表示するステップとをコンピュータに実行させるための目印表示プログラム。
【請求項１４】
請求項１２又は請求項１３に記載の目印表示プログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マルチモニタシステム、マルチモニタ方法及び目印表示プログラムに関し、さらに詳しくは、２台以上のモニタ（ディスプレイ）の画面を仮想的に接続し、ポインティングデバイスに応じて表示されたポインタをその画面間で相互に移動可能とする拡張デスクトップ環境で稼働するマルチモニタシステム、マルチモニタ方法及び目印表示プログラムに関する。
【背景技術】
【０００２】
拡張デスクトップ環境では、１台のコンピュータに２台以上のモニタを接続し、あたかも１台の大きなモニタであるかのように表示させることができる「マルチモニタ（マルチディスプレイ）」と呼ばれる機能がある。ここでは、１台のコンピュータに２台のモニタ（以下、一方を「プライマリモニタ」といい、他方を「セカンダリモニタ」という。）を接続し、プライマリモニタの画面の右辺をセカンダリモニタの左辺と仮想的に接続した場合を例に説明する。
【０００３】
たとえば図３０に示すように、両方のモニタの解像度が同じで、かつ画面Ｍ１，Ｍ２の上端と下端をきっちり合わせた場合は、マウスポインタ（カーソル）ＭＰを両方の画面Ｍ１，Ｍ２間で自由に移動させることができる。
【０００４】
しかしながら、図３１に示すように、セカンダリモニタの画面Ｍ２がプライマリモニタの画面Ｍ１と仮想的に上下にずれている場合は、両画面Ｍ１，Ｍ２間でマウスポインタＭＰの移動可能な区間はＢ−Ｃに制限される。たとえばプライマリモニタの画面Ｍ１上でマウスポインタＭＰを区間Ｂ−Ｃに向かって右方向に移動させる場合は、マウスポインタＭＰをそのまま区間Ｂ−Ｃを通過させてセカンダリモニタの画面Ｍ２上に移動させることができる。しかし、プライマリモニタの画面Ｍ１上でマウスポインタＭＰを区間Ｃ−Ｄに向かって右方向に移動させる場合は、マウスポインタＭＰは区間Ｃ−Ｄ上で停止させられ、マウスポインタＭＰをセカンダリモニタの画面Ｍ２上に移動させることはできない。逆に、セカンダリモニタの画面Ｍ２上でマウスポインタＭＰを区間Ａ−Ｂに向かって左方向に移動させる場合は、マウスポインタＭＰは区間Ａ−Ｂ上で停止させられ、マウスポインタＭＰをプライマリモニタの画面Ｍ１上に移動させることはできない。
【０００５】
また図３２に示すように、両方のモニタの解像度が異なり、画面Ｍ１，Ｍ２の上端と下端をきっちり合わせられない場合も上記と同様に、両画面Ｍ１，Ｍ２間でマウスポインタＭＰの移動可能な区間はＢ−Ｃに制限される。
【０００６】
上記では両画面Ｍ１，Ｍ２を左右に並べた例を説明したが、両画面Ｍ１，Ｍ２を上下に並べた場合も上記と同様に、両画面Ｍ１，Ｍ２間でマウスポインタＭＰの移動可能な区間は制限される。その結果、以下のような問題が生じる。
【０００７】
第１に、両画面Ｍ１，Ｍ２間でマウスポインタＭＰの移動可能な区間が制限されている場合、ユーザは手探りで移動可能な区間Ｂ−Ｃを探さなければならない。図３１及び図３２では両画面Ｍ１，Ｍ２の仮想的な位置関係が示されているため、移動可能な区間Ｂ−Ｃが判るが、実際は両画面Ｍ１，Ｍ２の物理的な位置関係は仮想的な位置関係と必ずしも一致していないので、移動可能な区間Ｂ−Ｃは判らない。
【０００８】
第２に、ユーザがマウスポインタＭＰの移動可能な区間Ｂ−Ｃ近辺でマウスポインタＭＰを操作していると、意図せずマウスポインタＭＰを他方の画面上に移動させてしまうことがある。この場合、ユーザは元の画面を見ながらマウス等のポインティングデバイスを様々な方向に移動させてマウスポインタＭＰを探そうとすることが多い。しかし、マウスポインタＭＰの移動可能な区間が制限されている場合、一旦移動させてしまったマウスポインタＭＰは直ぐには元の画面に戻って来ず、マウスポインタＭＰを発見するまでにかなりの時間がかかることがある。
【０００９】
たとえば図３１に示したプライマリモニタの画面Ｍ１からセカンダリモニタの画面Ｍ２上にマウスポインタＭＰを意図せずに移動させてしまった場合に、一旦マウスポインタＭＰを画面Ｍ２の上方に移動させてしまうと、マウスポインタＭＰの移動不可能な区間Ａ−Ｂに阻まれ、マウスポインタＭＰをプライマリモニタの画面Ｍ１上に戻しにくくなることがある。
【００１０】
マウスポインタＭＰを見失ったときに直ぐに他方の画面を見れば、マウスポインタＭＰを発見することはできる。しかし、両モニタは物理的に離れて配置されていることが多いため、両モニタ間での視線の移動距離は大きく、また、マウスポインタＭＰを見失った直後はユーザの意識もそれまで作業をしていた元の画面に向いている。このため、他方の画面上のマウスポインタＭＰはユーザの視界に入らず、結果としてマウスポインタＭＰを見つけるまでにかなりの時間を費やすことになる。
【００１１】
特開平５−１４３２３８号公報（特許文献１）は、１つの画面上に２以上のウィンドウを表示することの可能なマルチウィンドウシステムにおいて、ポインティングデバイスにより画面上のカーソルを移動させるポインティングカーソル制御装置を開示している。この装置は、カーソルがウィンドウの境界に達したときにカーソルを一時停止させ、ユーザがポインティングデバイスを一定距離又は一定速度以上で移動させたとき、カーソルをウィンドウの外部に移動させるように構成されている。この公報はマルチウィンドウシステムにおけるカーソルのウィンドウ間移動方法を開示するものに過ぎず、本発明のようにマルチモニタシステムにおけるカーソルの画面間移動方法を開示するものではない。
【００１２】
特開２００２−３２３９６８号公報（特許文献２）は、１台のモニタに２台以上のコンピュータを接続するためのマルチコンピュータシステムを開示している。このシステムは、接続された２台以上のコンピュータに対応付けて２つ以上のコンピュータ指定領域をモニタの画面上に表示しておき、ユーザがカーソルを所望のコンピュータ指定領域に移動させると、そのコンピュータ指定領域に対応付けられたコンピュータに切り替えるように構成されている。この公報はマルチコンピュータシステムを開示するものに過ぎず、本発明のように１台のコンピュータに２台以上のモニタを接続するためのマルチモニタシステムを開示するものではない。
【００１３】
特開平５−２７９４１号公報（特許文献３）は、スクロールとポインタの移動とを切り替えることの可能な表示システムを開示している。このシステムは、画面上に表示されたウィンドウ枠にポインタの通過可能な領域（ウィンドウスクロールエリア）と不可能な領域とを設けておき、ユーザがマウスを移動させることにより、ポインタをウィンドウスクロールエリアを通ってウィンドウの外側に向かって移動させようとすると、そのウィンドウ内の表示をスクロールさせ、ポインタの通過不可能な領域ではポインタを自由に移動させることができるように構成されている。この公報はマウスによるスクロール方法を開示するものに過ぎず、本発明のようにマルチモニタシステムにおけるポインタの画面間移動方法を開示するものではない。
【特許文献１】特開平５−１４３２３８号公報
【特許文献２】特開２００２−３２３９６８号公報
【特許文献３】特開平５−２７９４１号公報
【発明の開示】
【発明が解決しようとする課題】
【００１４】
本発明の目的は、２台以上のモニタの画面を仮想的に接続し、ポインティングデバイスに応じて表示されたポインタをその画面間で相互に移動可能とする拡張デスクトップ環境において、ポインティングデバイスの操作性を向上させたマルチモニタシステム、マルチモニタ方法及び目印表示プログラムを提供することである。
【００１５】
本発明のもう１つの目的は、ポインタを画面間で相互に移動可能な箇所を識別できるようにしたマルチモニタシステム、マルチモニタ方法及び目印表示プログラムを提供することである。
【００１６】
本発明のさらにもう１つの目的は、ポインタが一方の画面から他方の画面に移動したことを認識できるようにしたマルチモニタシステム、マルチモニタ方法及び目印表示プログラムを提供することである。
【課題を解決するための手段及び発明の効果】
【００１７】
本発明によるマルチモニタシステムは、第１及び第２のモニタと、第１及び第２のモニタの画面上に表示すべきポインタの座標を指示するポインティングデバイスと、ポインティングデバイスにより指示された座標にポインタを表示するポインタ表示制御手段と、第１のモニタの画面の周縁と第２のモニタの画面の周縁とを所定箇所で仮想的に接続し、ポインタを第１及び第２のモニタの画面間で相互に移動可能とする拡張デスクトップ設定手段と、所定箇所を識別するためのオブジェクトを第１及び／又は第２のモニタの画面上に表示する手段とを備える。ポインティングデバイスには、たとえばマウス、トラックポイント、トラックボールなどがある。モニタは少なくとも２台あればよく、３台以上あってもよい。拡張デスクトップ設定手段は、画面を横又は縦に接続する場合は所定箇所として線分の所定区間で接続し、画面を斜めに接続する場合は所定箇所として頂点で接続する。オブジェクトとしては、たとえばアイコン等の図形、記号、文字、壁紙等の模様が用いられる。
【００１８】
本システムにおいては、第１及び第２のモニタのうち少なくとも一方の画面上に所定箇所を識別するためのオブジェクトが表示されるため、ポインタを画面間で相互に移動可能な箇所を識別することができる。その結果、ポインタを両画面間で相互に移動させやすく、ポインタを見失うこともないなど、ポインティングデバイスの操作性を向上させることができる。
【００１９】
好ましくは、オブジェクトは所定箇所に隣接して表示される目印ウィンドウである。
【００２０】
この場合、目印ウィンドウは所定面積を有するため、上記所定箇所の識別はさらに容易になる。
【００２１】
好ましくは、マルチモニタシステムはさらに、ポインタが目印ウィンドウ上又はその近傍に移動したとき、目印ウィンドウの表示を停止する手段を備える。
【００２２】
この場合、ポインタが目印ウィンドウ上又はその近傍に移動したとき、目印ウィンドウが隠れるため、目印ウィンドウの下に隠れていたオブジェクト（アイコン、タスクバー、ツールバー、他のウィンドウなど）も操作することができ、目印ウィンドウは他の操作の邪魔にならない。
【００２３】
好ましくは、マルチモニタシステムはさらに、ポインタが所定箇所に達したとき、ポインタを強制的に停止させる手段と、ポインタが強制的に停止された後、ポインティングデバイスが第１及び第２のモニタの一方の画面から当該他方の画面へポインタを移動させるための座標を指示したとき、ポインタの停止を解除して当該他方の画面へのポインタの移動を許容するポインタ移動許容手段とを備える。
【００２４】
この場合、ポインタが所定箇所に達したとき強制的に停止され、その後もユーザがポインタを一方の画面から他方の画面へ移動させようとしたとき、ポインタが他方の画面に移動されるため、ユーザは意図せずにポインタを他方の画面へ移動させてしまうことはない。
【００２５】
さらに好ましくは、マルチモニタシステムはさらに、ポインタが強制的に停止された後、ポインティングデバイスの停止を検知する手段を備える。ポインタ移動許容手段は、ポインティングデバイスの停止が検知された後、上記動作を行う。
【００２６】
この場合、ポインタが強制的に停止された後、ユーザがポインティングデバイスを一時的に停止させ、その後、再びポインティングデバイスを移動させることによりポインタを一方の画面から他方の画面へ移動させようとしたとき、ポインタが他方の画面に移動されるため、ユーザが意図してポインティングデバイスを一時的に停止させない限り、ポインタは他方の画面へ移動されない。
【００２７】
好ましくは、マルチモニタシステムはさらに、第１及び第２のモニタの一方の画面から当該他方の画面へポインタが移動したとき、一方のモニタの画面上に当該他方のモニタを識別するための情報を表示する手段を備える。
【００２８】
この場合、一方の画面から他方の画面へポインタが移動したとき、一方のモニタの画面上に他方のモニタを識別するための情報が表示されるため、ユーザはポインタが他方の画面に移動したことを一方のモニタの画面上で認識することができる。
【００２９】
好ましくは、拡張デスクトップ設定手段は、第１のモニタの画面の一辺と第２のモニタの画面の当該他辺とを所定箇所として所定区間で仮想的に接続する。マルチモニタシステムはさらに、ポインタが一辺の所定区間以外の区間に達したとき、ポインタを強制的に停止させる手段と、ポインタが強制的に停止された後、ポインティングデバイスが第１及び第２のモニタの一方の画面から外側へポインタを移動させるための座標を指示したとき、所定区間の両端のうちポインタの位置から近い方の端へポインタをスキップさせ、ポインタの停止を解除して当該他方の画面へのポインタの移動を許容するポインタ移動許容手段とを備える。
【００３０】
この場合、ポインタが一辺の所定区間以外の区間に達したとき、所定区間の両端のうちポインタの位置から近い方の端へポインタがスキップされ、他方の画面に移動されるため、所定区間以外の区間でもポインタを移動させることができる。しかも、ポインタが所定区間以外の区間に達したとき強制的に停止され、その後もユーザがポインタを一方の画面から外側へ移動させようとしたとき、ポインタが他方の画面に移動されるため、ユーザは意図せずにポインタを他方の画面へ移動させてしまうことはない。
【００３１】
さらに好ましくは、マルチモニタシステムはさらに、ポインタが強制的に停止された後、ポインティングデバイスの停止を検知する手段を備える。ポインタ移動許容手段は、ポインティングデバイスの停止が検知された後、上記動作を行う。
【００３２】
この場合、ポインタが強制的に停止された後、ユーザがポインティングデバイスを一時的に停止させ、その後、再びポインティングデバイスを移動させることによりポインタを一方の画面から外側へ移動させようとしたとき、ポインタが他方の画面に移動されるため、ユーザが意図してポインティングデバイスを一時的に停止させない限り、ポインタは他方の画面へ移動されない。
【００３３】
本発明によるもう１つのマルチモニタシステムは、第１及び第２のモニタと、第１及び第２のモニタの画面上に表示すべきポインタの座標を指示するポインティングデバイスと、ポインティングデバイスにより指示された座標にポインタを表示するポインタ表示制御手段と、第１のモニタの画面の周縁と第２のモニタの画面の周縁とを所定箇所で仮想的に接続し、ポインタを第１及び第２のモニタの画面間で相互に移動可能とする拡張デスクトップ設定手段と、第１及び第２のモニタの一方の画面から当該他方の画面へポインタが移動したとき、一方のモニタの画面上に当該他方のモニタを識別するための情報を表示する手段とを備える。
【００３４】
本システムにおいては、一方の画面から他方の画面へポインタが移動したとき、一方のモニタの画面上に他方のモニタを識別するための情報が表示されるため、ユーザはポインタが他方の画面に移動したことを一方のモニタの画面上で認識することができる。
【００３５】
本発明による目印表示プログラムは、第１のモニタの画面の周縁と第２のモニタの画面の周縁とを所定箇所で仮想的に接続し、ポインティングデバイスに応じて表示されたポインタを第１及び第２のモニタの画面間で相互に移動可能とする拡張デスクトップ環境で稼働するプログラムであって、所定箇所を特定するステップと、特定した所定箇所を識別するためのオブジェクトを第１及び／又は第２のモニタの画面上に表示するステップとをコンピュータに実行させる。
【００３６】
本プログラムによれば、第１及び第２のモニタのうち少なくとも一方の画面上に所定箇所を識別するためのオブジェクトが表示されるため、ポインタを画面間で相互に移動可能な箇所を識別することができる。その結果、ポインタを両画面間で相互に移動させやすく、ポインタを見失うこともないなど、ポインティングデバイスの操作性を向上させることができる。
【００３７】
本発明によるもう１つの目印表示プログラムは、第１のモニタの画面の周縁と第２のモニタの画面の周縁とを所定箇所で仮想的に接続し、ポインティングデバイスに応じて表示されたポインタを第１及び第２のモニタの画面間で相互に移動可能とする拡張デスクトップ環境で稼働するプログラムであって、第１及び第２のモニタの一方の画面から当該他方の画面へのポインタの移動を検知するステップと、一方のモニタの画面上に当該他方のモニタを識別するための情報を表示するステップとをコンピュータに実行させる。
【００３８】
本プログラムによれば、一方の画面から他方の画面へポインタが移動したとき、一方のモニタの画面上に他方のモニタを識別するための情報が表示されるため、ユーザはポインタが他方の画面に移動したことを一方のモニタの画面上で認識することができる。
【００３９】
また、本発明によるマルチモニタ方法は、マルチモニタシステムを使用したときの動作方法である。さらに、本発明による記憶媒体は、上記目印表示プログラムを記憶したコンピュータ読み取り可能な記憶媒体である。
【発明を実施するための最良の形態】
【００４０】
以下、図面を参照し、本発明の実施の形態を詳しく説明する。図中同一又は相当部分には同一符号を付してその説明は繰り返さない。
【００４１】
１．構成
本発明の実施の形態によるマルチモニタシステム１は、図１を参照して、ノート型パーソナルコンピュータ１０と、外部モニタ２１とを備える。本例では、ノート型パーソナルコンピュータ１０のモニタ１１をプライマリモニタとして機能させ、外部モニタ２１をセカンダリモニタとして機能させる。
【００４２】
図２を参照して、ノート型パーソナルコンピュータ１０は、ＣＰＵ(Central Processing Unit)１２と、メモリ１３と、ハードディスク１４と、ＣＤ−ＲＯＭ(Compact Disk-Read Only Memory)ドライブ１５と、入出力インターフェース１６とを備える。入出力インターフェース１６には、キーボード１７と、トラックポイント２０と、プライマリモニタ１１とが接続される。入出力インターフェース１６にはまた、マウス１８と、外部モニタ２１がセカンダリモニタとして接続される。トラックポイント２０及びマウス１８は、プライマリモニタ１１及びセカンダリモニタ２１の画面上に表示すべきマウスポインタの座標を指示する。トラックポイント２０は内蔵のポインティングデバイスであり、マウス１８は外付けのポインティングデバイスである。以下、ポインティングデバイスとしてマウス１８を例に説明する。
【００４３】
図３を参照して、ハードディスク１４には、汎用のオペレーティングシステム３０が記憶される。オペレーティングシステム３０は、ポインタ表示制御プログラム３１と、拡張デスクトップ設定プログラム３２とを含む。ポインタ表示制御プログラム３１は、マウス１８により指示された座標にマウスポインタを表示する。拡張デスクトップ設定プログラム３２は、プライマリモニタ１１の画面の周縁とセカンダリモニタ２１の画面の周縁とを所定箇所で仮想的に接続し、マウスポインタをプライマリモニタ１１及びセカンダリモニタモニタ２１の画面間で相互に移動可能とするマルチモニタ機能を有する。ハードディスク１４にはさらに、上記所定箇所を識別するための目印ウィンドウをプライマリモニタ１１及び／又はセカンダリモニタモニタ２１の画面上に表示する目印表示制御プログラム３３が記憶される。
【００４４】
なお、目印表示制御プログラム３３はハードディスク１４にプレインストールされて提供されたり、ＣＤ−ＲＯＭ１９等のコンピュータ読み取り可能な記憶媒体に記録されて提供されたり、インターネット等の電気通信回線を経由して提供される。
【００４５】
図４を参照して、マルチモニタシステム１は、ポインタ表示制御プログラム３１、拡張デスクトップ設定プログラム３２及び目印表示制御プログラム３３をコンピュータ１０に実行させることにより、それぞれポインタ表示制御部４１、拡張デスクトップ設定部４２及び目印表示制御部４３として機能させる。
【００４６】
ポインタ表示制御部４１は、マウス１８により指示された座標にマウスポインタを表示する。拡張デスクトップ設定部４２は、プライマリモニタ１１の画面の周縁とセカンダリモニタ２１の画面の周縁とを所定箇所で仮想的に接続し、マウスポインタをプライマリモニタ１１及びセカンダリモニタ２１の画面間で相互に移動可能とする。
【００４７】
目印表示制御部４３は、目印ウィンドウ表示部４４と、目印ウィンドウ隠しオプション制御部４５と、ポインタ一時停止オプション制御部４６と、モニタ番号表示オプション制御部４７と、ポインタスキップオプション制御部４８とを備える。
【００４８】
目印ウィンドウ表示部４４は、所定箇所を識別するための目印ウィンドウをプライマリモニタ１１及びセカンダリモニタ２１の画面上であって上記所定箇所に隣接して表示する。目印ウィンドウ隠しオプション制御部４５は、マウスポインタが目印ウィンドウ上又はその近傍に移動したとき、目印ウィンドウの表示を停止する。ポインタ一時停止オプション制御部４６は、マウスポインタが上記所定箇所に達したとき、マウスポインタを停止させ、マウスポインタが停止された後、マウス１８がプライマリモニタ１１及びセカンダリモニタ２１の一方の画面から当該他方の画面へマウスポインタを移動させるための座標を指示したとき、マウスポインタの停止を解除して当該他方の画面へのマウスポインタの移動を許容する。モニタ番号表示オプション制御部４７は、プライマリモニタ１１及びセカンダリモニタ２１の一方の画面から当該他方の画面へマウスポインタが移動したとき、一方のモニタの画面上に当該他方のモニタを識別するための情報を表示する。ポインタスキップオプション制御部４８は、プライマリモニタ１１の画面の一辺とセカンダリモニタ２１の画面の当該他辺とを上記所定箇所として所定区間で仮想的に接続した拡張デスクトップ環境において、マウスポインタが上記一辺の所定区間以外の区間に達したとき、マウスポインタを停止させ、マウスポインタが停止された後、マウス１８がプライマリモニタ１１及びセカンダリモニタ２１の一方の画面から外側へマウスポインタを移動させるための座標を指示したとき、上記所定区間の両端のうちマウスポインタの位置から近い方の端へマウスポインタをスキップさせ、マウスポインタの停止を解除して当該他方の画面へのマウスポインタの移動を許容する。
【００４９】
２．動作
次に、上記マルチモニタシステム１の動作を図５を参照して説明する。
【００５０】
２．１．ポインタ表示制御
本システムはポインタ表示制御プログラム３１をコンピュータ１０に実行させることにより、プライマリモニタ１１及びセカンダリモニタモニタ２１の画面上であってマウス１８により指示された座標にマウスポインタを表示する（Ｓ１）。ユーザがマウス１８を所望の方向に移動させると、これに応じてマウスポインタが画面上を移動する。
【００５１】
２．２．拡張デスクトップ設定
次に、本システム１は拡張デスクトップ設定プログラム３２をコンピュータ１０に実行させることにより、マルチモニタの環境設定を行う（Ｓ２）。
【００５２】
拡張デスクトップ設定プログラム３２は、たとえば図６に示すように、プライマリモニタ１１の画面Ｍ１の右辺Ｃ１−Ｄ１とセカンダリモニタ２１の画面Ｍ２の左辺Ａ２−Ｂ２とを仮想的に接続する。この場合において、プライマリモニタ１１の画面Ｍ１が下方にずれ、セカンダリモニタ２１の画面Ｍ２が上方にずれると、拡張デスクトップＥＤ１が得られる。ここでは、プライマリモニタ１１の画面Ｍ１の右辺Ｃ１−Ｄ１とセカンダリモニタ２１の画面Ｍ２の左辺Ａ２−Ｂ２とは、上記所定箇所として所定区間Ｂ２−Ｄ１で仮想的に接続される。
【００５３】
拡張デスクトップ設定プログラム３２はまた、図７に示すように、プライマリモニタ１１の画面Ｍ１の上辺Ａ１−Ｄ１とセカンダリモニタ２１の画面Ｍ２の下辺Ｂ２−Ｃ２とを仮想的に接続する。この場合において、プライマリモニタ１１の画面Ｍ１が左方にずれ、セカンダリモニタ２１の画面Ｍ２が右方にずれると、拡張デスクトップＥＤ２が得られる。ここでは、プライマリモニタ１１の画面Ｍ１の上辺Ａ１−Ｄ１とセカンダリモニタ２１の画面Ｍ２の下辺Ｂ２−Ｃ２とは、上記所定箇所として所定区間Ｂ２−Ｄ１で仮想的に接続される。
【００５４】
拡張デスクトップ設定プログラム３２はまた、図８に示すように、プライマリモニタ１１の画面Ｍ１の右上頂点Ｄ１とセカンダリモニタ２１の画面Ｍ２の左下頂点Ｂ２とを仮想的に接続する。これにより、拡張デスクトップＥＤ３が得られる。
【００５５】
拡張デスクトップ設定プログラム３２はまた、図９に示すように、プライマリモニタ１１の解像度がセカンダリモニタ２１の解像度よりも大きい場合、プライマリモニタ１１の画面Ｍ１の右辺Ｃ１−Ｄ１とセカンダリモニタ２１の画面Ｍ２の左辺Ａ２−Ｂ２とを仮想的に接続する。これにより、拡張デスクトップＥＤ４が得られる。ここでは、プライマリモニタ１１の画面Ｍ１の右辺Ｃ１−Ｄ１とセカンダリモニタ２１の画面Ｍ２の左辺Ａ２−Ｂ２とは、上記所定区間として画面Ｍ２の左辺Ａ２−Ｂ２全体で仮想的に接続される。
【００５６】
拡張デスクトップ設定プログラム３２はさらに、図６〜図９に示すように、マウスポインタＭＰをプライマリモニタ１１の画面Ｍ１とセカンダリモニタモニタ２１の画面Ｍ２との間で相互に移動可能とする。たとえば図６に示したように、プライマリモニタ１１の画面Ｍ１とセカンダリモニタ２１の画面Ｍ２とが所定区間Ｂ２−Ｄ１で接続された場合、マウスポインタＭＰは所定区間Ｂ２−Ｄ１で移動可能となる。また図７に示したように、プライマリモニタ１１の画面Ｍ１とセカンダリモニタ２１の画面Ｍ２とが所定区間Ｂ２−Ｄ１で接続された場合、マウスポインタＭＰは所定区間Ｂ２−Ｄ１で移動可能となる。また図８に示したように、プライマリモニタ１１の画面Ｍ１とセカンダリモニタ２１の画面Ｍ２とが所定頂点Ｄ１（Ｂ２）で接続された場合、マウスポインタＭＰは所定頂点Ｄ１（Ｂ２）及びその近傍で移動可能となる。また図９に示したように、プライマリモニタ１１の画面Ｍ１とセカンダリモニタ２１の画面Ｍ２とが所定区間Ａ２−Ｂ２で接続された場合、マウスポインタＭＰは所定区間Ａ２−Ｂ２で移動可能となる。
【００５７】
２．３．目印ウィンドウ生成
再び図５を参照して、本システム１は目印表示制御プログラム３３をコンピュータ１０に実行させることにより、目印ウィンドウ５０を生成し、プライマリモニタ１１の画面Ｍ１及び／又はセカンダリモニタ２１の画面Ｍ２上の最前面に表示する（Ｓ３）。
【００５８】
たとえば図６に示すようにプライマリモニタ１１の画面Ｍ１とセカンダリモニタ２１の画面Ｍ２とが所定区間Ｂ２−Ｄ１で接続された場合、マウスポインタＭＰを両画面Ｍ１及びＭ２間で相互に移動可能な所定区間Ｂ２−Ｄ１を正確かつ迅速に把握できるように、プライマリモニタ１１の画面Ｍ１上に目印ウィンドウ５０が所定区間Ｂ２−Ｄ１に隣接して表示されるとともに、セカンダリモニタ２１の画面Ｍ２上に目印ウィンドウ５０が所定区間Ｂ２−Ｄ１に隣接して表示される。
【００５９】
また図７に示すようにプライマリモニタ１１の画面Ｍ１とセカンダリモニタ２１の画面Ｍ２とが所定区間Ｂ２−Ｄ１で接続された場合、マウスポインタＭＰを両画面Ｍ１及びＭ２間で相互に移動可能な所定区間Ｂ２−Ｄ１を正確かつ迅速に把握できるように、プライマリモニタ１１の画面Ｍ１上に目印ウィンドウ５０が所定区間Ｂ２−Ｄ１に隣接して表示されるとともに、セカンダリモニタ２１の画面Ｍ２上に目印ウィンドウ５０が所定区間Ｂ２−Ｄ１に隣接して表示される。
【００６０】
また図８に示すようにプライマリモニタ１１の画面Ｍ１とセカンダリモニタ２１の画面Ｍ２とが所定頂点Ｄ１（Ｂ２）で接続された場合、マウスポインタＭＰを両画面Ｍ１及びＭ２間で相互に移動可能な所定頂点Ｄ１（Ｂ２）及びその近傍を正確かつ迅速に把握できるように、プライマリモニタ１１の画面Ｍ１上に目印ウィンドウ５０が所定頂点Ｄ１に隣接して表示されるとともに、セカンダリモニタ２１の画面Ｍ２上に目印ウィンドウ５０が所定頂点Ｂ２に隣接して表示される。
【００６１】
また図９に示すようにプライマリモニタ１１の画面Ｍ１とセカンダリモニタ２１の画面Ｍ２とが所定区間Ａ２−Ｂ２で接続された場合、マウスポインタＭＰを両画面Ｍ１及びＭ２間で相互に移動可能な所定区間Ａ２−Ｂ２を正確かつ迅速に把握できるように、プライマリモニタ１１の画面Ｍ１上に目印ウィンドウ５０が所定区間Ａ２−Ｂ２に隣接して表示される。ただし、セカンダリモニタ２１の画面Ｍ２上には必ずしも目印ウィンドウを表示する必要はない。セカンダリモニタ２１の画面Ｍ２の左辺Ａ２−Ｂ２全体でマウスポインタＭＰが移動可能だからである。
【００６２】
このように目印ウィンドウ５０を表示することにより、ユーザはプライマリモニタ１１の画面Ｍ１とセカンダリモニタ２１の画面Ｍ２とがどの箇所で接続されているのかを正確かつ迅速に把握することができ、その結果、マウスポインタＭＰを両画面Ｍ１，Ｍ２間で自在に移動させることができる。
【００６３】
ここで、目印ウィンドウ生成処理の詳細を図１０を参照して説明する。
【００６４】
目印表示制御プログラム３３は、拡張デスクトップ設定プログラム３２で設定された情報からプライマリモニタ１１の画面Ｍ１における４つの頂点の座標を取得する（Ｓ１１）。具体的には図６〜図９に示した座標Ａ１（Ａ１ｘ，Ａ１ｙ）、Ｂ１（Ｂ１ｘ，Ｂ１ｙ）、Ｃ１（Ｃ１ｘ，Ｃ１ｙ）、及びＤ１（Ｄ１ｘ，Ｄ１ｙ）を取得する。
【００６５】
目印表示制御プログラム３３はまた、拡張デスクトップ設定プログラム３２で設定された情報からセカンダリモニタ２１の画面Ｍ２における４つの頂点の座標を取得する（Ｓ１２）。具体的には図６〜図９に示した座標Ａ２（Ａ２ｘ，Ａ２ｙ）、Ｂ２（Ｂ２ｘ，Ｂ２ｙ）、Ｃ２（Ｃ２ｘ，Ｃ２ｙ）、及びＤ２（Ｄ２ｘ，Ｄ２ｙ）を取得する。
【００６６】
目印表示制御プログラム３３はまた、拡張デスクトップ設定プログラム３２で設定された情報から拡張デスクトップＥＤ１〜ＥＤ４の解像度（Ｖｘ，Ｖｙ）を取得する（Ｓ１３）。
【００６７】
その後、目印表示制御プログラム３３は、プライマリモニタ１１及びセカンダリモニタ２１の画面Ｍ１，Ｍ２の仮想的な配置を特定する（Ｓ１４）。詳細は次の通り。
【００６８】
図１１を参照して、目印表示制御プログラム３３は、次の式（１）が成立するか否かを判断する（Ｓ１４１）。
（Ｄ１ｘ−Ａ１ｘ）＋（Ｄ２ｘ−Ａ２ｘ）＝Ｖｘ…（１）
【００６９】
式（１）が成立する場合、目印表示制御プログラム３３は、次の式（２）が成立するか否かを判断する（Ｓ１４２）。
（Ｂ１ｙ−Ａ１ｙ）＋（Ｂ２ｙ−Ａ２ｙ）＝Ｖｙ…（２）
【００７０】
式（２）も成立する場合、目印表示制御プログラム３３は、プライマリモニタ１１の画面Ｍ１及びセカンダリモニタ２１の画面Ｍ２は仮想的に斜めに並んでいると判断する（Ｓ１４３）。一方、式（２）は成立しない場合、プライマリモニタ１１の画面Ｍ１及びセカンダリモニタ２１の画面Ｍ２は仮想的に横に並んでいると判断する（Ｓ１４４）。
【００７１】
式（１）が成立しない場合もまた、目印表示制御プログラム３３は、上記式（２）が成立するか否かを判断する（Ｓ１４５）。
【００７２】
ここで式（２）は成立する場合、プライマリモニタ１１の画面Ｍ１及びセカンダリモニタ２１の画面Ｍ２は仮想的に縦に並んでいると判断する（Ｓ１４６）。一方、式（２）も成立しない場合、エラーを発生する（Ｓ１４７）。式（１）が成立しない場合、通常、プライマリモニタ１１の画面Ｍ１及びセカンダリモニタ２１の画面Ｍ２は仮想的に縦に並んでいるはずであるから、ステップＳ１４５は念のために行うもので、省略してもよい。
【００７３】
以上により、目印表示制御プログラム３３は、プライマリモニタ１１の画面Ｍ１及びセカンダリモニタ２１の画面Ｍ２が斜めに並んでいるのか、横に並んでいるのか、又は縦に並んでいるのかを特定することができる。
【００７４】
次に、プライマリモニタ１１の画面Ｍ１及びセカンダリモニタ２１の画面Ｍ２が斜めに並んでいる場合（Ｓ１４３）、目印表示制御プログラム３３は、Ａ２ｘ>０か否か、つまりセカンダリモニタ２１の画面Ｍ２がプライマリモニタ１１の画面Ｍ１よりも右側か否かを判断する（Ｓ１４８）。Ａ２ｘ>０の場合、目印表示制御プログラム３３は、Ａ２ｙ>０か否か、つまりセカンダリモニタ２１の画面Ｍ２がプライマリモニタ１１の画面Ｍ１よりも下側か否かを判断する（Ｓ１４９）。Ａ２ｙ>０の場合、目印表示制御プログラム３３は、プライマリモニタ１１の画面Ｍ１は左上側で、セカンダリモニタ２１の画面Ｍ２は右下側と判断する（Ｓ１５０）。Ａ２ｙ>０でない場合、目印表示制御プログラム３３は、プライマリモニタ１１の画面Ｍ１は左下側で、セカンダリモニタ２１の画面Ｍ２は右上側と判断する（Ｓ１５１）。
【００７５】
一方、Ａ２ｘ>０でない場合もまた、目印表示制御プログラム３３は、Ａ２ｙ>０か否か、つまりセカンダリモニタ２１の画面Ｍ２がプライマリモニタ１１の画面Ｍ１よりも下側か否かを判断する（Ｓ１５２）。Ａ２ｙ>０の場合、目印表示制御プログラム３３は、プライマリモニタ１１の画面Ｍ１は右上側で、セカンダリモニタ２１の画面Ｍ２は左下側と判断する（Ｓ１５３）。Ａ２ｙ>０でない場合、目印表示制御プログラム３３は、プライマリモニタ１１の画面Ｍ１は右下側で、セカンダリモニタ２１の画面Ｍ２は左上側と判断する（Ｓ１５４）。
【００７６】
また、プライマリモニタ１１の画面Ｍ１及びセカンダリモニタ２１の画面Ｍ２が横に並んでいる場合（Ｓ１４４）、目印表示制御プログラム３３は、Ａ２ｘ>０か否かを判断する（Ｓ１５５）。Ａ２ｘ>０の場合、目印表示制御プログラム３３は、プライマリモニタ１１の画面Ｍ１は左側で、セカンダリモニタ２１の画面Ｍ２は右側と判断する（Ｓ１５６）。Ａ２ｘ>０でない場合、目印表示制御プログラム３３は、プライマリモニタ１１の画面Ｍ１は右側で、セカンダリモニタ２１の画面Ｍ２は左側と判断する（Ｓ１５７）。
【００７７】
さらに、プライマリモニタ１１の画面Ｍ１及びセカンダリモニタ２１の画面Ｍ２が縦に並んでいる場合（Ｓ１４６）、目印表示制御プログラム３３は、Ａ２ｙ>０か否かを判断する（Ｓ１５８）。Ａ２ｙ>０の場合、目印表示制御プログラム３３は、プライマリモニタ１１の画面Ｍ１は上側で、セカンダリモニタ２１の画面Ｍ２は下側と判断する（Ｓ１５９）。Ａ２ｙ>０でない場合、目印表示制御プログラム３３は、プライマリモニタ１１の画面Ｍ１は下側で、セカンダリモニタ２１の画面Ｍ２は上側と判断する（Ｓ１６０）。
【００７８】
以上により、目印表示制御プログラム３３は、プライマリモニタ１１の画面Ｍ１及びセカンダリモニタ２１の画面Ｍ２について８通りの位置関係を特定することができる。図１０に示したように、モニタの配置確認処理においてエラーが発生した場合（Ｓ１５でＹＥＳ）、目印ウィンドウの生成処理は終了する。一方、エラーが発生しない場合（Ｓ１５でＮＯ）、目印表示制御プログラム３３は、拡張デスクトップ設定プログラム３２で設定された情報から両画面Ｍ１，Ｍ２が接続されている所定区間を特定する（Ｓ１６）。詳細は次の通り。
【００７９】
図１２を参照して、目印表示制御プログラム３３はまず、Ｂ１ｙ−Ａ１ｙ＝Ｖｙか否かを判断する（Ｓ１６１）。図１３に示すようにＢ１ｙ−Ａ１ｙ＝Ｖｙの場合、目印表示制御プログラム３３は、所定区間をＡ２−Ｂ２と特定する（Ｓ１６２）。Ｂ１ｙ−Ａ１ｙ＝Ｖｙでない場合、目印表示制御プログラム３３は、Ｂ２ｙ−Ａ２ｙ＝Ｖｙか否かを判断する（Ｓ１６３）。図１４に示すようにＢ２ｙ−Ａ２ｙ＝Ｖｙの場合、目印表示制御プログラム３３は、所定区間をＣ１−Ｄ１と特定する（Ｓ１６４）。Ｂ２ｙ−Ａ２ｙ＝Ｖｙでない場合、目印表示制御プログラム３３は、Ａ２ｙ>０か否かを判断する（Ｓ１６５）。図１５に示すようにＡ２ｙ>０の場合、目印表示制御プログラム３３は、所定区間をＡ２−Ｃ１と特定する（Ｓ１６６）。一方、図１６に示すようにＡ２ｙ>０でない場合、目印表示制御プログラム３３は、所定区間をＢ２−Ｄ１と特定する（Ｓ１６７）。
【００８０】
ここでは、プライマリモニタ１１の画面Ｍ１が左側でセカンダリモニタ２１の画面Ｍ２が右側に配置されている場合を例に説明したが、プライマリモニタ１１の画面Ｍ１が右側でセカンダリモニタ２１の画面Ｍ２が左側に配置されている場合、プライマリモニタ１１の画面Ｍ１が上側でセカンダリモニタ２１の画面Ｍ２が下側に配置されている場合、プライマリモニタ１１の画面Ｍ１が下側でセカンダリモニタ２１の画面Ｍ２が上側に配置されている場合も、上記と同様の方法で所定区間を決定することができる。
【００８１】
再び図１０を参照して、所定区間を特定した後、目印表示制御プログラム３３は、プライマリモニタ１１の画面Ｍ１及びセカンダリモニタ２１の画面Ｍ２は横に並んでいるか否かを判断する（Ｓ１７）。図６に示したように両モニタの画面Ｍ１，Ｍ２が横に並んでいる場合、目印ウィンドウ５０のサイズを決定する（Ｓ１８）。具体的には、高さＨを所定区間Ｂ２−Ｄ１の長さに設定し、幅Ｗを２０ピクセルに設定する（Ｓ１８）。そして、目印表示制御プログラム３３は、目印ウィンドウ５０をプライマリモニタ１１及びセカンダリモニタ２１の両画面Ｍ１，Ｍ２上に表示する（Ｓ１９）。いずれの目印ウィンドウ５０も所定区間Ｂ２−Ｄ１に隣接して表示される。
【００８２】
ここでは、プライマリモニタ１１の画面Ｍ１が左側でセカンダリモニタ２１の画面Ｍ２が右側に配置されている場合を例に説明したが、逆にプライマリモニタ１１の画面Ｍ１が右側でセカンダリモニタ２１の画面Ｍ２が左側に配置されている場合も同様である。
【００８３】
両モニタの画面Ｍ１，Ｍ２が横に並んでいない場合（Ｓ１７でＮＯ）、目印表示制御プログラム３３は、プライマリモニタ１１の画面Ｍ１及びセカンダリモニタ２１の画面Ｍ２は縦に並んでいるか否かを判断する（Ｓ２０）。図７に示したように両モニタの画面Ｍ１，Ｍ２が縦に並んでいる場合、目印表示制御プログラム３３は、目印ウィンドウ５０のサイズを決定する（Ｓ２１）。具体的には、高さＨを２０ピクセルに設定し、幅Ｗを所定区間Ｂ２−Ｄ１の長さに設定する（Ｓ２１）。そして、目印表示制御プログラム３３は、目印ウィンドウ５０をプライマリモニタ１１及びセカンダリモニタ２１の両画面Ｍ１，Ｍ２上に表示する（Ｓ２２）。いずれの目印ウィンドウ５０も所定区間Ｂ２−Ｄ１に隣接して表示される。
【００８４】
ここでは、プライマリモニタ１１の画面Ｍ１が下側でセカンダリモニタ２１の画面Ｍ２が上側に配置されている場合を例に説明したが、逆にプライマリモニタ１１の画面Ｍ１が上側でセカンダリモニタ２１の画面Ｍ２が下側に配置されている場合も同様である。
【００８５】
両モニタの画面Ｍ１，Ｍ２が縦にも並んでいない場合（Ｓ２０でＮＯ）、目印表示制御プログラム３３は、図８に示したようにプライマリモニタ１１の画面Ｍ１及びセカンダリモニタ２１の画面Ｍ２は斜めに並んでいると判断し（Ｓ２３）、目印ウィンドウ５０のサイズを決定する（Ｓ２４）。具体的には、高さＨ及び幅Ｗをいずれも２０ピクセルに設定する（Ｓ２４）。そして、目印表示制御プログラム３３は、目印ウィンドウ５０をプライマリモニタ１１及びセカンダリモニタ２１の両画面Ｍ１，Ｍ２上に表示する（Ｓ２５）。いずれの目印ウィンドウ５０も頂点Ｂ２，Ｄ１に隣接して表示される。
【００８６】
ここでは、プライマリモニタ１１及びセカンダリモニタ２１の画面Ｍ１及びＭ２が頂点Ｄ１及びＢ２で接している場合を例に説明したが、他の頂点Ｃ１及びＡ２、Ｂ１及びＤ２、又はＡ１及びＣ２で接している場合も同様である。
【００８７】
本システム１は目印表示制御プログラム３３をコンピュータ１０に実行させることにより、上記のように目印ウィンドウ５０を生成した後、目印ウィンドウ５０の属性（プロパティ）を変更する（Ｓ２６）。詳細は次の通り。
【００８８】
図１７を参照して、目印表示制御プログラム３３は、既に設定されている目印ウィンドウ５０の属性を読み取る（Ｓ４０１）。属性には、目印ウィンドウの表示又は非表示、色、透過率、及び幅若しくは高さがあり、デフォルトでは表１に示すように設定されている。なお、この表１の内容は、プライマリモニタ１１用とセカンダリモニタ２１用とにそれぞれ別個に持つことが可能である。
【表１】
2006059251.tif 000003
【００８９】
目印表示制御プログラム３３はまず、プライマリモニタ１１用の目印ウィンドウ５０の属性を必要に応じて変更する（Ｓ４０２）。
【００９０】
ユーザが非表示を指定すると（Ｓ４０３）、目印表示制御プログラム３３は、プライマリモニタ１１用の目印ウィンドウ５０を非表示に設定し、目印ウィンドウ５０を常に隠すように設定する（Ｓ４０４）。この場合、従来と同様に目印ウィンドウ５０は表示されないため、目印ウィンドウの色、透過率、及び幅若しくは高さの設定は不要である。
【００９１】
ユーザが色を指定すると（Ｓ４０５）、目印表示制御プログラム３３は、プライマリモニタ１１用の目印ウィンドウ５０の色を指定された色に設定する（Ｓ４０６）。
【００９２】
ユーザが透過率を指定すると（Ｓ４０７）、目印表示制御プログラム３３は、プライマリモニタ１１用の目印ウィンドウ５０の透過率を指定された透過率に設定する（Ｓ４０８）。透過率を高く設定すると、目印ウィンドウ５０の下に表示されているオブジェクト（アイコン、タスクバー、ツールバー、他のウィンドウなど）が見えるようになる。
【００９３】
ユーザが幅及び／又は高さを指定すると（Ｓ４０９）、目印表示制御プログラム３３は、プライマリモニタ１１用の目印ウィンドウ５０の幅Ｗ及び／又は高さＨを指定された幅又は高さに設定する（Ｓ４１０）。図６に示したように目印ウィンドウ５０が画面の縦辺に沿って表示される場合、ここで設定される値は幅Ｗとなる。図７に示したように目印ウィンドウ５０が画面の横辺に沿って表示される場合、ここで設定される値は高さＨとなる。図８に示したように目印ウィンドウ５０が画面の角に表示される場合、ここで設定される値は幅Ｗ及び高さＨとなる。
【００９４】
次に、目印表示制御プログラム３３は、セカンダリモニタ２１用の目印ウィンドウ５０の属性を必要に応じて変更する（Ｓ４１１）。
【００９５】
ユーザが非表示を指定すると（Ｓ４１２）、目印表示制御プログラム３３は、セカンダリモニタ２１用の目印ウィンドウ５０を非表示に設定し、目印ウィンドウ５０を常に隠すように設定する（Ｓ４１３）。
【００９６】
ユーザが色を指定すると（Ｓ４１４）、目印表示制御プログラム３３は、セカンダリモニタ２１用の目印ウィンドウ５０の色を指定された色に設定する（Ｓ４１５）。
【００９７】
ユーザが透過率を指定すると（Ｓ４１６）、目印表示制御プログラム３３は、セカンダリモニタ２１用の目印ウィンドウ５０の透過率を指定された透過率に設定する（Ｓ４１７）。
【００９８】
ユーザが幅及び／又は高さを指定すると（Ｓ４１８）、目印表示制御プログラム３３は、セカンダリモニタ２１用の目印ウィンドウ５０の幅Ｗ及び／又は高さＨを指定された幅又は高さに設定する（Ｓ４１９）。
【００９９】
２．４．マウスポインタ画面間移動制御
再び図５を参照して、本システム１は目印表示制御プログラム３３をコンピュータ１０に実行させることにより、上記のように目印ウィンドウ５０の属性を変更した後、マウスポインタＭＰの画面Ｍ１，Ｍ２間の移動を制御する（Ｓ４）。
【０１００】
マウスポインタＭＰの移動制御に関し、表２に示すように、オプションＯＰ１〜ＯＰ４が用意されている。なお、この表２の内容は、プライマリモニタ１１用とセカンダリモニタ２１用とにそれぞれ別個に持つことが可能である。
【表２】
2006059251.tif 000004
【０１０１】
オプションＯＰ１は、有効になると、マウスポインタＭＰが目印ウィンドウ５０上又はその近傍に移動したとき目印ウィンドウ５０の表示を停止することにより、目印ウィンドウ５０を隠す。
【０１０２】
オプションＯＰ１によれば、マウスポインタＭＰが目印ウィンドウ５０上又はその近傍に移動したとき目印ウィンドウ５０が隠れるため、目印ウィンドウ５０の下に隠れていたオブジェクトも操作することができ、目印ウィンドウ５０は他の操作の邪魔にならない。
【０１０３】
オプションＯＰ２は、有効になると、マウスポインタＭＰが上述した所定区間に達したときマウスポインタＭＰを強制的に停止させ、マウスポインタＭＰが強制的に停止された後、マウス１８の停止を検知し、さらにマウス１８の停止が検知された後、マウス１８が一方の画面Ｍ１又はＭ２から当該他方の画面Ｍ２又はＭ１へマウスポインタＭＰを移動させるための座標を指示したとき、マウスポインタＭＰの停止を解除して当該他方の画面Ｍ２又はＭ１へのマウスポインタＭＰの移動を許容する。
【０１０４】
オプションＯＰ２によれば、マウスポインタＭＰが所定区間に達したとき強制的に停止される。その後、ユーザがマウス１８を一時的に停止させた後、再びマウス１８を移動させることによりマウスポインタＭＰを一方の画面Ｍ１又はＭ２から他方の画面Ｍ２又はＭ１へ移動させようとしたとき、マウスポインタＭＰが他方の画面Ｍ２又はＭ１に移動されるため、ユーザは意図せずにマウスポインタＭＰを他方の画面Ｍ２又はＭ１へ移動させてしまうことはない。
【０１０５】
オプションＯＰ３は、有効になると、マウスポインタＭＰが一方のモニタの画面Ｍ１又はＭ２から当該他方のモニタの画面Ｍ２又はＭ１へ移動したとき、移動前の画面Ｍ１又はＭ２上に移動後のモニタを識別するための情報を表示する。
【０１０６】
オプションＯＰ３によれば、一方の画面Ｍ１又はＭ２から他方の画面Ｍ２又はＭ１へポインタが移動したとき、一方のモニタの画面Ｍ１又はＭ２上に他方のモニタを識別するための情報が表示されるため、ユーザはマウスポインタＭＰが他方の画面Ｍ２又はＭ１に移動したことを一方のモニタの画面Ｍ１又はＭ２上で認識することができる。
【０１０７】
オプションＯＰ４は、有効になると、図９に示したように両画面Ｍ１，Ｍ２が所定区間Ａ２−Ｂ２で接続されている場合において、マウスポインタＭＰが所定区間Ａ２−Ｂ２以外の区間Ａ２−Ｄ１又はＢ２−Ｃ１に達したとき、マウスポインタＭＰを強制的に停止させ、マウスポインタＭＰが強制的に停止された後、マウス１８の停止を検知し、さらにマウス１８の停止が検知された後、マウス１８が一方の画面Ｍ１から外側へマウスポインタＭＰを移動させるための座標を指示したとき、所定区間Ａ２−Ｂ２の両端のうちマウスポインタＭＰの位置から近い方の端Ｂ２又はＡ２へマウスポインタＭＰをスキップさせ、マウスポインタの停止を解除して当該他方の画面Ｍ２へのマウスポインタＭＰの移動を許容する。
【０１０８】
オプションＯＰ４によれば、マウスポインタＭＰが所定区間Ａ２−Ｂ２以外の区間Ａ２−Ｄ１又はＢ２−Ｃ１に達したとき、所定区間Ａ２−Ｂ２の両端Ａ２，Ｂ２のうちポインタの位置から近い方の端Ａ２又はＢ２へマウスポインタＭＰがスキップされ、他方の画面Ｍ２に移動されるため、所定区間Ａ２−Ｂ２以外の区間Ａ２−Ｄ１又はＢ２−Ｃ１でもマウスポインタＭＰを移動させることができる。しかも、マウスポインタＭＰが所定区間Ａ２−Ｂ２以外の区間Ａ２−Ｄ１又はＢ２−Ｃ１に達したとき強制的に停止される。その後、ユーザがマウス１８を一時的に停止させた後、再びマウス１８を移動させることによりマウスポインタＭＰを一方の画面Ｍ１から外側へ移動させようとしたとき、マウスポインタＭＰが他方の画面Ｍ２に移動されるため、ユーザは意図せずにマウスポインタＭＰを他方の画面Ｍ２へ移動させてしまうことはない。
【０１０９】
以下、マウスポインタＭＰの移動制御を図１８を参照して詳細に説明する。ここではマウスポインタＭＰがプライマリモニタ１１の画面Ｍ１上にある場合を説明するが、マウスポインタＭＰがセカンダリモニタ２１の画面Ｍ２上にある場合も同様である。
【０１１０】
目印表示制御プログラム３３は、ポインタ表示制御プログラム３１からマウスポインタＭＰの座標を取得する（Ｓ５１）。
【０１１１】
目印表示制御プログラム３３は、取得した座標に基づいてマウスポインタＭＰが目印ウィンドウ５０上又は目印ウィンドウ５０から所定の範囲内（以下「目印ウィンドウ上又はその近傍」という）にあるか否かを判断する（Ｓ５２）。マウスポインタＭＰが目印ウィンドウ５０上又はその近傍にある場合はステップＳ５３に進み、そうでない場合はステップＳ５４に進む。
【０１１２】
まずマウスポインタＭＰが目印ウィンドウ５０上又はその近傍にある場合（Ｓ５２でＹＥＳ）を説明する。この場合、目印表示制御プログラム３３は、オプションＯＰ１が有効か否かを判断する（Ｓ５３）。オプションＯＰ１が有効な場合、目印表示制御プログラム３３は目印ウィンドウ５０の表示を停止して目印ウィンドウ５０を隠す（Ｓ５５）。
【０１１３】
次に、目印表示制御プログラム３３は、マウスポインタＭＰがプライマリモニタ１１側の所定区間上にあるか否かを判断する（Ｓ５６）。マウスポインタＭＰがプライマリモニタ１１側の所定区間上にある場合、マウスポインタＭＰの移動方向を読み取り（Ｓ５７）、マウスポインタＭＰがセカンダリモニタ２１の画面Ｍ２に向かっているか否かを判断する（Ｓ５８）。
【０１１４】
マウスポインタＭＰがセカンダリモニタ２１の画面Ｍ２に向かって移動している場合（Ｓ５８でＹＥＳ）、目印表示制御プログラム３３は、オプションＯＰ２が有効か否かを判断する（Ｓ５９）。オプションＯＰ２が有効な場合、目印表示制御プログラム３３はオプションＯＰ２を実行する（Ｓ６０）。詳細は後述する。オプションＯＰ２が無効な場合、目印表示制御プログラム３３はマウスポインタＭＰの画面Ｍ２への移動をポインタ表示制御プログラム３１に許容し、直ちにマウスポインタＭＰを画面Ｍ２に移動させる（Ｓ６１）。
【０１１５】
続いて、目印表示制御プログラム３３は、オプションＯＰ３が有効か否かを判断する（Ｓ６２）。オプションＯＰ３が有効な場合、目印表示制御プログラム３３はオプションＯＰ３を実行する（Ｓ６３）。詳細は後述する。
【０１１６】
一方、マウスポインタＭＰがセカンダリモニタ２１に向かって移動していない場合（Ｓ５８でＮＯ）、目印表示制御プログラム３３は、オプションＯＰ２が有効か否かを判断する（Ｓ６４）。オプションＯＰ２が有効な場合、目印表示制御プログラム３３はオプションＯＰ２用のタイマ（詳細は後述）をリセットし（Ｓ６５）、さらにオプションＯＰ２用のマウスデータ有効フラグ（詳細は後述）をクリアする（Ｓ６６）。
【０１１７】
次にマウスポインタＭＰが目印ウィンドウ５０上又はその近傍にない場合（Ｓ５２でＮＯ）を説明する。この場合、目印表示制御プログラム３３は、目印ウィンドウ５０の属性が表示か非表示かを判断する（Ｓ５４）。属性が表示の場合、目印表示制御プログラム３３は目印ウィンドウ５０を隠すことなく表示する（Ｓ６７）。
【０１１８】
次に、目印表示制御プログラム３３は、マウスポインタＭＰがプライマリモニタ１１側の所定区間以外の区間（図６上ではＢ２−Ｃ１、図７上ではＡ１−Ｂ２）上にあるか否かを判断する（Ｓ６８）。マウスポインタＭＰがプライマリモニタ１１側の所定区間以外の区間上にある場合、マウスポインタＭＰの移動方向を読み取り（Ｓ６９）、マウスポインタＭＰがプライマリモニタ１１の画面Ｍ１から外側に向かっているか否かを判断する（Ｓ７０）。
【０１１９】
マウスポインタＭＰがプライマリモニタ１１の画面Ｍ１から外側に向かって移動している場合（Ｓ７０でＹＥＳ）、目印表示制御プログラム３３は、オプションＯＰ４が有効か否かを判断する（Ｓ７１）。オプションＯＰ４が有効な場合、目印表示制御プログラム３３はオプションＯＰ４を実行する（Ｓ７２）。詳細は後述する。
【０１２０】
続いて、目印表示制御プログラム３３は、オプションＯＰ３が有効か否かを判断する（Ｓ７３）。オプションＯＰ３が有効な場合、目印表示制御プログラム３３はオプションＯＰ３を実行する（Ｓ７４）。
【０１２１】
一方、マウスポインタＭＰがプライマリモニタ１１の画面Ｍ１から外側に向かって移動していない場合（Ｓ７０でＮＯ）、目印表示制御プログラム３３は、オプションＯＰ４が有効か否かを判断する（Ｓ７５）。オプションＯＰ４が有効な場合、目印表示制御プログラム３３はオプションＯＰ４用のタイマ（詳細は後述）をリセットし（Ｓ７６）、さらにオプションＯＰ４用のマウスデータ有効フラグ（詳細は後述）をクリアする（Ｓ７７）。
【０１２２】
２．５．１．ポインタ一時停止オプション：ＯＰ２
本オプションＯＰ２は、マウスポインタＭＰが所定区間上に達した後も引き続きマウス１８から入力される座標データ（以下「マウスデータ」という）を無効にすることにより、マウスポインタＭＰを所定区間上で強制的に停止させる。そして、マウス１８の動きが所定時間（たとえば５００ミリ秒）以上止まったとき、マウスデータを有効にすることにより、マウスポインタＭＰをセカンダリモニタ２１の画面Ｍ２上に移動させる。マウスデータを有効にするか無効にするかの判別にはマウスデータ有効フラグを用いる。マウスデータを有効にするためにはマウスデータ有効フラグをセットし、マウスデータを無効にするためにはマウスデータ有効フラグをクリア（リセット）する。また、マウス１８の停止時間を計測するためにはタイマを用いる。このオプションＯＰ２用のタイマはマウスデータを無効にするたびにリセットされ、再び計測を開始する。
【０１２３】
図１９を参照して、目印表示制御プログラム３３は、オプションＯＰ２用のタイマが計時中か否かを判断する（Ｓ６０１）。最初、タイマは計時中でないから、目印表示制御プログラム３３は、マウスデータ有効フラグがセットされているか否かを判断する（Ｓ６０２）。最初、マウスデータ有効フラグはセットされていないから、目印表示制御プログラム３３は、マウスデータを無効にし（Ｓ６０３）、オプションＯＰ２用のタイマをスタートする（Ｓ６０４）。
【０１２４】
マウスポインタＭＰが所定区間上に達した後も引き続きマウス１８が動かされていると、マウスデータは次々と連続的に発生するため、図１８を参照して、目印表示制御プログラム３３はオプションＯＰ２を再び実行する（Ｓ６０）。
【０１２５】
このとき、再び図１９を参照して、目印表示制御プログラム３３は、再びオプションＯＰ２用のタイマが計時中か否かを判断する（Ｓ６０１）。このとき、タイマは既に計時中であるから、目印表示制御プログラム３３は、マウスデータを無効にし（Ｓ６０５）、オプションＯＰ２用のタイマをリセットし、再スタートする（Ｓ６０６）。
【０１２６】
したがって、マウスポインタＭＰが所定区間上に達した後も引き続きマウス１８が動かされている限り、目印表示制御プログラム３３は上記オプションＯＰ２の実行（Ｓ６０）を繰り返し、その結果として、オプションＯＰ２用のタイマは非常に短い計時を繰り返す。この間、次々連続的に発生するマウスデータは全て無効にされるため、マウスポインタＭＰは所定区間上で停止される。
【０１２７】
目印表示制御プログラム３３は図１９に示した処理を実行する一方で、図２０に示した処理を並行して実行する。図２０を参照して、目印表示制御プログラム３３は、オプションＯＰ２用のタイマにより計測される時間が所定時間を経過したか否かを判断する（Ｓ６０９）。マウスポインタＭＰが所定区間上に達した後も引き続きマウス１８が動かされている間は上述したようにマウスデータは次々と連続的に発生するため、オプションＯＰ２用のタイマにより計測される時間は常に所定時間よりも短い（Ｓ６０９でＮＯ）。しかし、マウスポインタＭＰが所定区間上に達した後、マウス１８が一旦止められ、再び動かされると、オプションＯＰ２用のタイマにより計測される時間が所定時間を越える（Ｓ６０９でＹＥＳ）。そのため、目印表示制御プログラム３３は、マウスデータ有効フラグをセットし（Ｓ６１０）、オプションＯＰ２用のタイマをストップする。すなわち、目印表示制御プログラム３３はここでマウス１８の停止を検知している。
【０１２８】
再び図１９を参照して、オプションＯＰ２用のタイマが計時中でなく（Ｓ６０１でＮＯ）、かつマウスデータ有効フラグがセットされると（Ｓ６０２でＹＥＳ）、目印表示制御プログラム３３は、オプションＯＰ２用のマウスデータ有効フラグをクリアし（Ｓ６０７）、マウスポインタＭＰのセカンダリモニタ２１の画面Ｍ２上への移動をポインタ表示制御プログラム３１に許容する（Ｓ６０８）。そのため、ポインタ表示制御プログラム３１はマウスポインタＭＰをセカンダリモニタ２１の画面Ｍ２上へ移動させる。
【０１２９】
２．５．２．モニタ番号表示オプション：ＯＰ３
図２１を参照して、マウスポインタＭＰがセカンダリモニタ２１の画面Ｍ２上に移動すると（Ｓ６３１でＹＥＳ）、目印表示制御プログラム３３は、プライマリモニタ１１の画面Ｍ１とセカンダリモニタ２１の画面Ｍ２との位置関係を特定する（Ｓ６３２）。
【０１３０】
具体的には、目印表示制御プログラム３３は、両モニタ１１，１２の画面Ｍ１，Ｍ２は横に並んでいるか否かを判断する（Ｓ６３３）。画面Ｍ１，Ｍ２が横に並んでいる場合（Ｓ６３３でＹＥＳ）、目印表示制御プログラム３３は、プライマリモニタ１１の画面Ｍ１が左側でかつセカンダリモニタ２１の画面Ｍ２が右側か否かを判断する（Ｓ６３４）。画面Ｍ１が左側で画面Ｍ２が右側の場合（Ｓ６３４でＹＥＳ）、目印表示制御プログラム３３は、図２２に示すように、移動先のモニタ番号（ここでは「２」）を表示するための表示エリア５１の左上頂点の座標を（Ｘ−ｗ，Ｙ−ｈ／２）に設定する（Ｓ６３５）。逆に、画面Ｍ１が右側で画面Ｍ２が左側の場合（Ｓ６３４でＮＯ）、目印表示制御プログラム３３は、図２３に示すように、表示エリア５１の左上頂点の座標を（Ｘ，Ｙ−ｈ／２）に設定する（Ｓ６３６）。
【０１３１】
画面Ｍ１，Ｍ２が横に並んでいない場合（Ｓ６３３でＮＯ）、目印表示制御プログラム３３は、画面Ｍ１，Ｍ２は縦に並んでいると判断し（Ｓ６３７）、続いてプライマリモニタ１１の画面Ｍ１が上側でかつセカンダリモニタ２１の画面Ｍ２が下側か否かを判断する（Ｓ６３８）。画面Ｍ１が上側で画面Ｍ２が下側の場合（Ｓ６３８でＹＥＳ）、目印表示制御プログラム３３は、図２４に示すように、表示エリア５１の左上頂点の座標を（Ｘ−ｗ／２，Ｙ−ｈ）に設定する（Ｓ６３９）。逆に、画面Ｍ１が下側で画面Ｍ２が上側の場合（Ｓ６３８でＮＯ）、目印表示制御プログラム３３は、図２５に示すように、表示エリア５１の左上頂点の座標を（Ｘ−ｗ／２，Ｙ）に設定する（Ｓ６４０）。
【０１３２】
次に、目印表示制御プログラム３３は幅ｗ及び高さｈの表示エリア５１を生成し（Ｓ６３４）、その表示エリア５１がプライマリモニタ１１の画面Ｍ１内に収まっているか否かを判断する（Ｓ６４２）。マウスポインタＭＰが所定区間の端付近を通過する場合は表示エリア５１が画面Ｍ１内に収まらないので、その表示エリアを画面Ｍ１内に収まるようにずらす（Ｓ６４３）。表示エリア５１が画面Ｍ１内に収まっている場合（Ｓ６４２でＹＥＳ）、目印表示制御プログラム３３はセカンダリモニタ２１のモニタ番号を示す「２」を表示エリア５１内に表示する（Ｓ６４４）。そして、目印表示制御プログラム３３はオプションＯＰ３用のタイマをスタートする（Ｓ６４５）。
【０１３３】
オプションＯＰ３用のタイマをスタートすると、図２６を参照して、目印表示制御プログラム３３は、オプションＯＰ３用のタイマにより計測される時間が所定時間を経過したか否かを判断する（Ｓ６４６）。移動先のモニタ番号を表示してから所定時間（たとえば３秒）が経過すると、ユーザはマウスポインタＭＰがセカンダリモニタ２１の画面Ｍ２上に移動したと認識できるであろうから、目印表示制御プログラム３３は表示エリア５１をその役割を果たしたものとして消去する。これにより、オプションＯＰ３用のタイマは計測を終了する。
【０１３４】
２．５．３．ポインタスキップオプション：ＯＰ４
本オプションＯＰ４は、マウスポインタＭＰが所定区間以外の区間上に達した後も引き続き入力されるマウスデータを無効にすることにより、マウスポインタＭＰを所定区間以外の区間上で強制的に停止させる。オプションＯＰ４はオプションＯＰ２に類似し、オプションＯＰ２用のタイマの代わりにオプションＯＰ４用のタイマを用い、オプションＯＰ２用のマウスデータ有効フラグの代わりにＯＰ４用のマウスデータ有効フラグを用いる。
【０１３５】
図２７に示したステップＳ７２１〜Ｓ７２７及び図２８に示したＳ７３１〜Ｓ７３２はそれぞれ図１９に示したステップＳ６０１〜Ｓ６０７及び図２０に示したＳ７０９〜Ｓ６１０と同じであるから、その説明は繰り返さない。ここでは、目印表示制御プログラム３３はステップＳ７３１〜Ｓ７３２によりマウス１８の停止を検知している。
【０１３６】
図２７を参照して、オプションＯＰ４用のマウスデータ有効フラグをクリアした後（Ｓ７２７）、目印表示制御プログラム３３は、プライマリモニタ１１の画面Ｍ１及びセカンダリモニタ２１の画面Ｍ２が相互に接続される所定区間の情報を取得し（Ｓ７２８）、その両端の座標を取得する（Ｓ７２９）。所定区間の両端の座標のうちマウスポインタＭＰの現在の座標から近い方の端にマウスポインタＭＰの座標を変更し、かつマウスポインタＭＰのセカンダリモニタ２１の画面Ｍ２上への移動をポインタ表示制御プログラム３１に許容する（Ｓ７３０）。そのため、ポインタ表示制御プログラム３１はマウスポインタＭＰを所定区間の両端のうちマウスポインタＭＰから近い方の端にスキップさせ、かつセカンダリモニタ２１の画面Ｍ２上へ移動させる。
【０１３７】
以上、本発明の実施の形態によれば、プライマリモニタ１１及びセカンダリモニタ２１の画面Ｍ１，Ｍ２上に所定区間に沿って目印ウィンドウ５０が表示されるため、マウスポインタＭＰを画面Ｍ１，Ｍ２間で相互に移動可能な箇所を容易かつ速やかに識別することができる。その結果、マウスポインタＭＰを両画面Ｍ１，Ｍ２間で相互に移動させやすく、マウスポインタＭＰを見失うこともないなど、マウス１８の操作性を向上させることができる。
【０１３８】
上記実施の形態のポインタ一時停止オプションＯＰ２では、マウスポインタＭＰが所定区間上で強制的に停止された後、ユーザがマウス１８を一時的に停止させ、その後、再びマウス１８を移動させたとき、マウスポインタＭＰを他方の画面に移動させるようにしているが、このようにマウス１８の停止を検知することなく、マウスポインタＭＰが停止された後も引き続き、ユーザがマウス１８を所定時間以上移動させ続けたとき、マウスポインタＭＰを他方の画面に移動させるようにしてもよい。これを実現するためには、たとえば図１９に示したステップＳ６０６を省略すればよい。この場合、オプションＯＰ２用のタイマは、マウスポインタＭＰが停止されて後も引き続きユーザがマウス１８を移動させ続けた時間を計測する。そして、この計測時間が所定時間を経過したとき、目印表示制御プログラム３３は、図１９に示したステップＳ６０７及びＳ６０８を実行する。
【０１３９】
また、ポインタスキップオプションＯＰ４では、マウスポインタＭＰが所定区間以外の区間上で強制的に停止された後、ユーザがマウス１８を一時的に停止させ、その後、再びマウス１８を移動させたとき、マウスポインタＭＰを他方の画面に移動させるようにしているが、このようにマウス１８の停止を検知することなく、マウスポインタＭＰが停止された後も引き続き、ユーザがマウス１８を所定時間以上移動させ続けたとき、マウスポインタＭＰを他方の画面に移動させるようにしてもよい。これを実現するためには、たとえば図２７に示したステップＳ７２６を省略すればよい。この場合、オプションＯＰ４用のタイマは、マウスポインタＭＰが停止されて後も引き続きユーザがマウス１８を移動させ続けた時間を計測する。そして、この計測時間が所定時間を経過したとき、目印表示制御プログラム３３は、図２７に示したステップＳ７２７〜Ｓ７３０を実行する。
【０１４０】
また、目印ウィンドウ５０の形状は上述した矩形に限定されることなく、いかなる形状でもよい。また、目印ウィンドウ５０は所定箇所に接触していなくてもよく、所定箇所から所定間隔をおいて配置されてもよい。
【０１４１】
また、図２９に示すように、所定箇所の上端又は下端だけに矢印５２を表示したり、所定箇所の上端及び下端の両方に矢印を表示したりしてもよい。要するに、マウスポインタＭＰを移動可能な所定箇所を識別するための何らかのオブジェクトを表示すればよい。
【０１４２】
また、目印ウィンドウ５０の属性を非表示に設定し、モニタ表示オプションＯＰ３だけを有効にしてもよい。この場合、目印ウィンドウ等のオブジェクトは表示されないが、マウスポインタＭＰが他の画面に移動すると、移動先のモニタ番号が表示されるので、ユーザはマウスポインタＭＰを見失うことなく、マウス１８の操作性を向上させることができる。
【０１４３】
上記実施の形態は２台のモニタ１１，１２を用いているが、３台以上のモニタを用いた拡張デスクトップ環境でも本発明は適用可能である。また、コンピュータの型式は上述したノート型に限定されることなく、たとえばデスクトップ型でもよいなど、その型式は何ら限定されない。また、２台目以降のモニタは外部モニタとして機能するものであればよく、プロジェクタ等を使用することもできる。
【０１４４】
また、上記実施の形態では目印表示制御プログラム３３はオペレーティングシステム３０とは別に追加ユーティリティとしてインストールされているが、オペレーティングシステム３０に組み込まれていてもよい。
【０１４５】
以上、本発明の実施の形態を説明したが、上述した実施の形態は本発明を実施するための例示に過ぎない。よって、本発明は上述した実施の形態に限定されることなく、その趣旨を逸脱しない範囲内で上述した実施の形態を適宜変形して実施することが可能である。
【産業上の利用可能性】
【０１４６】
本発明によるマルチモニタシステムは、拡張デスクトップ環境で稼働するコンピュータに利用可能である。
【図面の簡単な説明】
【０１４７】
【図１】本発明の実施の形態によるマルチモニタシステムの外観構成を示す正面図である。
【図２】図１に示したノート型パーソナルコンピュータの構成を示す機能ブロック図である。
【図３】図２に示したハードディスクに記憶されているプログラムを示す機能ブロック図である。
【図４】図１に示したマルチモニタシステムの内部構成を示す機能ブロック図である。
【図５】図１〜図４に示したマルチモニタシステムの動作を示すフロー図である。
【図６】図３〜図５に示した拡張デスクトップ機能によりプライマリモニタの画面とセカンダリモニタの画面とを横に接続した拡張デスクトップを示す図である。
【図７】図３〜図５に示した拡張デスクトップ機能によりプライマリモニタの画面とセカンダリモニタの画面とを縦に接続した拡張デスクトップを示す図である。
【図８】図３〜図５に示した拡張デスクトップ機能によりプライマリモニタの画面とセカンダリモニタの画面とを斜めに接続した拡張デスクトップを示す図である。
【図９】図３〜図５に示した拡張デスクトップ機能により互いに解像度が異なるプライマリモニタの画面とセカンダリモニタの画面とを横に接続した拡張デスクトップを示す図である。
【図１０】図５に示した目印ウィンドウ生成処理を示すフロー図である。
【図１１】図１０に示した目印ウィンドウ生成処理において、モニタの配置を特定する処理の詳細を示すフロー図である。
【図１２】図１０に示した目印ウィンドウ生成処理において、所定区間を特定する処理の詳細を示すフロー図である。
【図１３】図１２に示した特定区間特定処理において、解像度の高いプライマリモニタの画面を左側に配置しかつ解像度の低いセカンダリモニタの画面を右側に配置した拡張デスクトップを示す図である。
【図１４】図１２に示した特定区間特定処理において、解像度の低いプライマリモニタの画面を左側に配置しかつ解像度の高いセカンダリモニタの画面を右側に配置した拡張デスクトップを示す図である。
【図１５】図１２に示した特定区間特定処理において、プライマリモニタの画面を左側上方に配置しかつセカンダリモニタの画面を右側下方に配置した拡張デスクトップを示す図である。
【図１６】図１２に示した特定区間特定処理において、プライマリモニタの画面を左側下方に配置しかつセカンダリモニタの画面を右側上方に配置した拡張デスクトップを示す図である。
【図１７】図５に示した目印ウィンドウ属性変更処理を示すフロー図である。
【図１８】図５に示したマウスポインタ画面間移動制御処理を示すフロー図である。
【図１９】図１８に示したマウスポインタ画面間移動制御処理において、ポインタ一時停止オプションを示すフロー図である。
【図２０】図１９に示したポインタ一時停止オプションにおいて、タイマをスタートさせたときの処理を示すフロー図である。
【図２１】図１８に示したマウスポインタ画面間移動制御処理において、モニタ番号表示オプションを示すフロー図である。
【図２２】図２１に示したモニタ番号表示オプションにおいて、マウスポインタを左側のプライマリモニタの画面から右側のセカンダリモニタの画面上に移動させる場合に表示されるモニタ番号の表示エリアを示す図である。
【図２３】図２１に示したモニタ番号表示オプションにおいて、マウスポインタを右側のプライマリモニタの画面から左側のセカンダリモニタの画面上に移動させる場合に表示されるモニタ番号の表示エリアを示す図である。
【図２４】図２１に示したモニタ番号表示オプションにおいて、マウスポインタを上側のプライマリモニタの画面から下側のセカンダリモニタの画面上に移動させる場合に表示されるモニタ番号の表示エリアを示す図である。
【図２５】図２１に示したモニタ番号表示オプションにおいて、マウスポインタを下側のプライマリモニタの画面から上側のセカンダリモニタの画面上に移動させる場合に表示されるモニタ番号の表示エリアを示す図である。
【図２６】図２１に示したモニタ番号表示オプションにおいて、タイマをスタートさせたときの処理を示すフロー図である。
【図２７】図１８に示したマウスポインタ画面間移動制御処理において、ポインタスキップオプションを示すフロー図である。
【図２８】図１９に示したポインタスキップオプションにおいて、タイマをスタートさせたときの処理を示すフロー図である。
【図２９】図６に示した目印ウィンドウに代えて、所定箇所を識別するためのオブジェクトとして矢印を表示した拡張デスクトップを示す図である。
【図３０】プライマリモニタの画面の右辺とセカンダリモニタの左辺とを接続した拡張デスクトップを示す図である。
【図３１】図３０に示したプライマリモニタの画面が下方にずれ、セカンダリモニタの画面が上方にずれた拡張デスクトップを示す図である。
【図３２】解像度の高いプライマリモニタの画面の右辺と解像度の低いセカンダリモニタの左辺とを接続した拡張デスクトップを示す図である。
【符号の説明】
【０１４８】
１  マルチモニタシステム
１０  ノート型パーソナルコンピュータ
１１  プライマリモニタ
１８  マウス
２１  セカンダリモニタ（外部モニタ）
３１  ポインタ表示制御プログラム
３２  拡張デスクトップ設定プログラム
３３  目印表示制御プログラム
４１  ポインタ表示制御部
４２  拡張デスクトップ設定部
４３  目印表示制御部
４４  目印ウィンドウ表示部
４５  目印ウィンドウ隠しオプション制御部
４６  ポインタ一時停止オプション制御部
４７  モニタ番号表示オプション制御部
４８  ポインタスキップオプション制御部
５０  目印ウィンドウ
５１  表示エリア
５２  矢印
ＥＤ１〜ＥＤ４  拡張デスクトップ
Ｍ１，Ｍ２  画面
ＭＰ  マウスポインタ
ＯＰ１  目印ウィンドウ隠しオプション
ＯＰ２  ポインタ一時停止オプション
ＯＰ３  モニタ番号表示オプション
ＯＰ４  ポインタスキップオプション
【図１】
2006059251.tif 000005
【図２】
2006059251.tif 000006
【図３】
2006059251.tif 000007
【図４】
2006059251.tif 000008
【図５】
2006059251.tif 000009
【図６】
2006059251.tif 000010
【図７】
2006059251.tif 000011
【図８】
2006059251.tif 000012
【図９】
2006059251.tif 000013
【図１０】
2006059251.tif 000014
【図１１】
2006059251.tif 000015
【図１２】
2006059251.tif 000016
【図１３】
2006059251.tif 000017
【図１４】
2006059251.tif 000018
【図１５】
2006059251.tif 000019
【図１６】
2006059251.tif 000020
【図１７】
2006059251.tif 000021
【図１８】
2006059251.tif 000022
【図１９】
2006059251.tif 000023
【図２０】
2006059251.tif 000024
【図２１】
2006059251.tif 000025
【図２２】
2006059251.tif 000026
【図２３】
2006059251.tif 000027
【図２４】
2006059251.tif 000028
【図２５】
2006059251.tif 000029
【図２６】
2006059251.tif 000030
【図２７】
2006059251.tif 000031
【図２８】
2006059251.tif 000032
【図２９】
2006059251.tif 000033
【図３０】
2006059251.tif 000034
【図３１】
2006059251.tif 000035
【図３２】
2006059251.tif 000036