(57)【要約】【課題】表示画面上におけるボタン操作を確実におこなうこと。【解決手段】ボタン位置情報記憶部４０２が、表示画面に表示されたボタンの表示位置を記憶し、マウスカーソル監視部４０１が、マウスカーソルの位置を監視し、ウィンドウ表示命令受付部４０３が、新たなウィンドウの表示命令を受け付けた場合に、判断部４０４が、マウスカーソルがボタンの表示位置から所定の範囲にあるか、および、新たなウィンドウがボタンを隠すかを判断し、表示制御部４００が、判断結果に基づいて、新たなウィンドウがボタンを隠さないようにする。【選択図】図４
2019021042.tif 000002
【特許請求の範囲】
【請求項１】
表示画面に表示されたボタンの表示位置を記憶し、
マウスカーソルの位置を監視し、
新たなウィンドウの表示命令があった場合に、前記マウスカーソルが前記ボタンの表示位置から所定の範囲にあるか、および、前記新たなウィンドウが前記ボタンを隠すかを判断し、
前記判断結果に基づいて、前記新たなウィンドウが前記ボタンを隠さないようにする、
処理をコンピュータに実行させることを特徴とする表示制御プログラム。
【請求項２】
前記判断する処理は、さらに、前記新たなウィンドウの表示命令があった際の前記マウスカーソルの移動方向が、所定の方向であるかを判断する処理であることを特徴とする請求項１に記載の表示制御プログラム。
【請求項３】
前記新たなウィンドウが前記ボタンを隠さないようにする処理は、
前記新たなウィンドウの表示領域と、前記ボタンの表示領域とが重ならない位置に前記新たなウィンドウの表示位置をずらす処理であることを特徴とする請求項１または２に記載の表示制御プログラム。
【請求項４】
前記新たなウィンドウが前記ボタンを隠さないようにする処理は、
前記新たなウィンドウの表示領域のサイズを変更する処理であることを特徴とする請求項１〜３の何れか一つに記載の表示制御プログラム。
【請求項５】
前記新たなウィンドウが前記ボタンを隠さないようにする処理は、
前記新たなウィンドウの表示を遅延させる処理であることを特徴とする請求項１または２に記載の表示制御プログラム。
【請求項６】
前記新たなウィンドウの表示を遅延させる処理は、
前記ボタンが押下されるまでの間だけ、遅延させる処理であることを特徴とする請求項５に記載の表示制御プログラム。
【請求項７】
前記新たなウィンドウの表示を遅延させる処理は、
前記マウスカーソルが、前記ボタンの表示位置から所定の範囲にある間だけ、遅延させる処理であることを特徴とする請求項５に記載の表示制御プログラム。
【請求項８】
前記新たなウィンドウの表示を遅延させる処理は、
あらかじめ定められた時間だけ、遅延させる処理であることを特徴とする請求項５に記載の表示制御プログラム。
【請求項９】
前記新たなウィンドウが前記ボタンを隠さないようにする処理は、
前記新たなウィンドウを最小化する処理であることを特徴とする請求項１または２に記載の表示制御プログラム。
【請求項１０】
前記新たなウィンドウが前記ボタンを隠さないようにする処理は、
前記ボタンの表示領域と前記新たなウィンドウの表示領域の重なり部分における前記ボタンの表示領域が、前記新たなウィンドウの表示領域よりも前面に表示されるように、前記表示の優先度を変更する処理であることを特徴とする請求項１または２に記載の表示制御プログラム。
【請求項１１】
表示画面に表示されたボタンの表示位置を記憶し、
マウスカーソルの位置を監視し、
新たなウィンドウの表示命令があった場合に、前記マウスカーソルが前記ボタンの表示位置から所定の範囲にあるか、および、前記新たなウィンドウが前記ボタンを隠すかを判断し、
前記判断結果に基づいて、前記新たなウィンドウが前記ボタンを隠さないようにする、
処理をコンピュータが実行することを特徴とする表示制御方法。
【請求項１２】
表示画面に表示されたボタンの表示位置を記憶し、
マウスカーソルの位置を監視し、
新たなウィンドウの表示命令があった場合に、前記マウスカーソルが前記ボタンの表示位置から所定の範囲にあるか、および、前記新たなウィンドウが前記ボタンを隠すかを判断し、
前記判断結果に基づいて、前記新たなウィンドウが前記ボタンを隠さないようにする、
制御部を有することを特徴とする表示制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表示制御プログラム、表示制御方法および表示制御装置に関する。
【背景技術】
【０００２】
従来から、マルチウィンドウのＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を装備したオペレーティングシステムでは、ＧＵＩ上でユーザーは複数のアプリケーションを起動し、ウィンドウを切り替えることにより同時に複数のアプリケーションを操作することができる。また、ウィンドウには、マウスなどのポインティングデバイスによってクリックされることによって設定された機能を実現する、いわゆる「ボタン」を表示することができる。
【０００３】
関連する先行技術としては、セキュリティ・レベルと、画面上のＺ軸方向の位置情報（Ｚオーダー）を対応づけし、低セキュリティ・レベルのプログラムが、高セキュリティ・レベルのプログラムよりＺ軸方向で高くならないように制限を課し、ウィンドウのＺオーダーの変化を監視し、相対的に低いセキュリティ・レベルのウィンドウが、相対的に高いセキュリティ・レベルのウィンドウよりも高いＺオーダーをもつようになったことに応答して、相対的に高いセキュリティ・レベルのウィンドウを消去または半透明化する技術がある（たとえば、下記特許文献１を参照。）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−１４６００９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来技術では、操作対象ではないアプリケーションが、操作者の操作とは非同期にアプリケーションウィンドウを生成し、生成したウィンドウが、すでに表示されている「ボタン」を隠すように表示してしまうことで、その「ボタン」の操作を奪ってしまうという問題点がある。そして、その場合に、生成されたウィンドウの表示内容や表示のタイミングによっては、操作者が意図しない誤動作が発生する虞れがあるという問題点がある。
【０００６】
一つの側面では、本発明は、表示画面上におけるボタン操作を確実におこなうことを目的とする。
【課題を解決するための手段】
【０００７】
１つの実施態様では、表示画面に表示されたボタンの表示位置を記憶し、マウスカーソルの位置を監視し、新たなウィンドウの表示命令があった場合に、前記マウスカーソルが前記ボタンの表示位置から所定の範囲にあるか、および、前記新たなウィンドウが前記ボタンを隠すかを判断し、前記判断結果に基づいて、前記新たなウィンドウが前記ボタンを隠さないようにする表示制御プログラム、表示制御方法および表示制御装置が提供される。
【発明の効果】
【０００８】
本発明の一側面によれば、表示画面上におけるボタン操作を確実におこなうことができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施の形態にかかる表示制御プログラム、表示制御方法および表示制御装置を実現する情報処理装置の概要の一例を示すブロック図である。
【図２】図２は、実施の形態にかかる表示制御装置のハードウェア構成の一例を示すブロック図である。
【図３Ａ】図３Ａは、ボタンの概要の一例を示す説明図（その１）である。
【図３Ｂ】図３Ｂは、ボタンの概要の一例を示す説明図（その２）である。
【図３Ｃ】図３Ｃは、ボタンの概要の一例を示す説明図（その３）である。
【図４】図４は、実施の形態にかかる表示制御装置の機能的構成の一例を示すブロック図である。
【図５Ａ】図５Ａは、ボタンの表示位置からの所定の範囲についての一例を示す説明図（その１）である。
【図５Ｂ】図５Ｂは、ボタンの表示位置からの所定の範囲についての一例を示す説明図（その２）である。
【図６Ａ】図６Ａは、新たなウィンドウがボタンを隠す態様についての一例を示す説明図（その１）である。
【図６Ｂ】図６Ｂは、新たなウィンドウがボタンを隠す態様についての一例を示す説明図（その２）である。
【図６Ｃ】図６Ｃは、新たなウィンドウがボタンを隠す態様についての一例を示す説明図（その３）である。
【図６Ｄ】図６Ｄは、新たなウィンドウがボタンを隠す態様についての一例を示す説明図（その４）である。
【図７】図７は、実施の形態にかかる表示制御方法の処理の手順の一例を示すフローチャートである。
【図８】図８は、ボタンを隠さない処理の一例を示すフローチャート（その１）である。
【図９Ａ】図９Ａは、ボタンを隠さない処理の一例を示す説明図である。
【図９Ｂ】図９Ｂは、ボタンを隠さない処理の一例（ずらす処理（その１））を示す説明図である。
【図９Ｃ】図９Ｃは、ボタンを隠さない処理の一例（ずらす処理（その２））を示す説明図である。
【図９Ｄ】図９Ｄは、ボタンを隠さない処理の一例（サイズを変更する処理（その１））を示す説明図である。
【図９Ｅ】図９Ｅは、ボタンを隠さない処理の一例（サイズを変更する処理（その２））を示す説明図である。
【図１０】図１０は、ボタンを隠さない処理の一例を示すフローチャート（その２）である。
【図１１】図１１は、ボタンを隠さない処理の一例を示すフローチャート（その３）である。
【図１２】図１２は、ボタンを隠さない処理の一例を示すフローチャート（その４）である。
【図１３】図１３は、ボタンを隠さない処理の一例（表示の優先度を変更する処理）を示す説明図である。
【図１４】図１４は、ボタンを隠さない処理の一例を示すフローチャート（その５）である。
【発明を実施するための形態】
【００１０】
以下に図面を参照して、本発明にかかる表示制御プログラム、表示制御方法および表示制御装置の実施の形態を詳細に説明する。
【００１１】
（実施の形態）
（情報処理装置の概要）
まずは、実施の形態にかかる表示制御プログラム、表示制御方法および表示制御装置を実現する情報処理装置の概要について説明する。図１は、実施の形態にかかる表示制御プログラム、表示制御方法および表示制御装置を実現する情報処理装置の概要の一例を示すブロック図である。
【００１２】
図１において、情報処理装置１００は、具体的には、たとえばパーソナル・コンピュータ、ワークステーション、サーバなどの情報処理装置である。情報処理装置１００は、本体１０１と、ディスプレイ１０２と、キーボード１０３と、マウス１０４、とから構成される。
【００１３】
本体１０１は、情報所為装置１００の全体を司る装置であり、図２において説明する、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、メモリと、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）などを備えている。
【００１４】
ディスプレイ１０２は、カーソル、アイコン、ウィンドウあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。ディスプレイ１０２は、たとえば、液晶ディスプレイ、有機ＥＬ（Ｅｌｅｃｔｒｏｌｕｍｉｎｅｓｃｅｎｃｅ）ディスプレイなどを採用することができる。また、ディスプレイ１０２は、画像を投影するプロジェクターであってもよく、また、ヘッドマウントディスプレイなどであってもよい。
【００１５】
情報処理装置１００と、ディスプレイ１０２、キーボード１０３、マウス１０４とは、ケーブルを用いて、あるいは、Ｗｉ-Ｆｉ、Ｂｌｕｅｔｏｏｔｈ（登録商標）などの無線通信を用いて、接続するようにしてもよい。
【００１６】
このように、情報処理装置１００によって、実施の形態にかかる表示制御プログラム、表示制御方法および表示制御装置を実現することができる。なお、キーボード１０３、マウス１０４については、後述する図２において説明する。
【００１７】
（表示制御装置のハードウェア構成例）
図２は、実施の形態にかかる表示制御装置のハードウェア構成の一例を示すブロック図である。図２において、表示制御装置は、ＣＰＵ２０１と、メモリ２０２と、Ｉ／Ｆ２０３と、入力装置２０４と、図１に示したディスプレイ１０２と、を有する。また、各構成部２０１〜２０４およびディスプレイ１０２は、バス２００によってそれぞれ接続される。
【００１８】
ここで、ＣＰＵ２０１は、表示制御装置の全体の制御を司る。メモリ２０２は、たとえば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）およびフラッシュＲＯＭなどを有する。具体的には、たとえば、フラッシュＲＯＭやＲＯＭが各種プログラムを記憶し、ＲＡＭがＣＰＵ２０１のワークエリアとして使用される。
【００１９】
このようにして、マルチウィンドウのＧＵＩを装備したオペレーティングシステム（ＯＳ）を用いて、ＧＵＩ上でユーザーは複数のアプリケーションを起動し、ウィンドウを切り替えて、同時に複数のアプリケーションを操作することができる。
【００２０】
マルチウィンドウシステムは、具体的には、たとえば、ハードウェアの制御をおこなうウィンドウシステム基本部と、アプリケーションの切替を制御するウィンドウマネージャと、アプリケーションに共通のＧＵＩ部品を提供するウィジェットツールキットと、ウィンドウシステムで動作するＧＵＩアプリケーションと、で構成される。
【００２１】
ここで、ウィンドウシステム基本部は、ディスプレイアダプタの物理的な違いを吸収し、ディスプレイに最適な解像度の表示領域を設定する。また、ウィンドウシステム基本部は、ポインティングデバイスの物理的な違いを吸収し、ディスプレイ上にポインティングデバイスのアイコン（マウスカーソル）を表示する。
【００２２】
また、ウィンドウマネージャは、ウィンドウの配置や外観を管理する。ウィンドウのオープン、クローズ、最小化、最大化、移動、サイズ変更をおこなうためのタイトルバーやメニュー、アイコンを表示する。
【００２３】
また、ＧＵＩアプリケーションは、ウィジェットツールキットを使用してウィンドウシステムで使用する標準的な画面部品を表示する。標準的な画面部品には、ラベル部品、ボタン部品、リスト部品、テキスト編集部品、メッセージ部品などがある。また、ＧＵＩアプリケーションは、イベント駆動型プログラムとして実装され、ウィンドウシステムにイベントを処理するためのウィンドウプロシージャを登録する。
【００２４】
メモリ２０２に記憶されるプログラムは、ＣＰＵ２０１にロードされることで、コーディングされている処理をＣＰＵ２０１に実行させる。
【００２５】
Ｉ／Ｆ２０３は、通信回線を通じてネットワーク２５０に接続され、ネットワーク２５０を介して他の装置に接続される。そして、Ｉ／Ｆ２０３は、ネットワーク２５０と自装置内部とのインターフェースを司り、他の装置からのデータの入出力を制御する。Ｉ／Ｆ２５０には、たとえば、モデムやＬＡＮアダプタなどを採用することができる。
【００２６】
ネットワーク２５０は、たとえば、インターネット、移動体通信網、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などであってもよい。
【００２７】
入力装置２０４は、文字、数字、各種指示などの入力のためのキーを有し、データの入力をおこなう。入力装置２０４は、ディスプレイに直接触れるタッチパネル式の入力装置であってもよい。これにより、画面を見ながら直感的な操作をおこなうことができる。また、入力装置２０４は、キーボード１０３であってもよい。
【００２８】
また、入力装置２０４は、マウス１０４、トラックボール、ゲームコントローラ、ジョイスティック、などのポインティングデバイスであってもよい。また、入力装置２０４は、タッチパネル式の入力パッドやテンキーなどであってもよい。これにより、文字などをキー入力だけでなく、手書き入力をすることができる。
【００２９】
なお、表示制御装置は、上述した構成部のほかに、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）などを有することにしてもよい。
【００３０】
（ボタンの概要）
図３Ａ〜図３Ｃは、ボタンの概要の一例を示す説明図である。図３Ａにおいて、ディスプレイ１０２には、ボタンを有するウィンドウ３００および３５０が表示されている。マウスカーソル３３０とは、コンピュータの操作画面で、現在のマウス入力位置を指し示す小さな画像や図形のことである。また、ウィンドウとは、アプリケーションを表示する際やファイルやフォルダを開くと表示される、画面上の矩形状（四角形）の領域である。
【００３１】
図３Ｂは、ウィンドウ３００の詳細な内容を示す説明であり、図３Ｃは、ウィンドウ３５０の詳細な内容を示す説明図である。図３Ｂにおいて、ウィンドウ３００は、右下側に表示されたボタン３０１と、データ表示領域３０２と、ボタン表示領域３０３とから構成される。また、図３Ｃに示すように、データ表示領域がなく、ボタン３５１のみが表示されるウィンドウ３５０も存在する。
【００３２】
また、ボタンの数も、図示を省略するが１つの場合（たとえば、「確認」ボタンである場合など）もあり、４つ以上ボタンが存在する場合もある。また、図示は省略するが、キーボード１０３のキー配列を模した複数のボタンを表示画面に表示し、マウスカーソル３３０によるクリックによって、文字、数字などを入力するソフトキーボードも、ボタンである。
【００３３】
操作者は、マウス１０４などを用いて、マウスカーソル３３０を、ボタン３０１が表示されている位置、すなわち、ボタン３０１の表示領域内まで移動させて、その後、マウス１０４のマウスボタンをクリックする。そうすることによって、ボタン３０１内に記載されている機能が実行される。
【００３４】
これは、ボタン３０１の表示位置に関する情報を記憶しておき、マウスカーソル３３０の移動を監視することによって、マウスカーソル３３０が、ボタン３０１が表示されている位置でマウスボタンがクリックされたか否かを判定し、それによって、ボタン３０１が押下されたか否かの情報を取得する。
【００３５】
したがって、ボタン３０１の表示領域外においてマウスボタンをクリックしても、当該ボタン３０１の機能は実行されない。また、ウィンドウ３００の上に別のウィンドウが重ねて表示され、ボタン３０１が当該別のウィンドウによって隠されている状態（後述する図６Ａに示す状態）では、当該ボタン３０１が表示されている（であろう）位置にマウスカーソル３３０を移動させてマウスボタンをクリックしても、当該ボタン３０１の効能は実行されない。
【００３６】
（表示制御装置の機能的構成）
図４は、実施の形態にかかる表示制御装置の機能的構成の一例を示すブロック図である。図４において、表示制御装置は、表示制御部４００と、マウスカーソル監視部４０１と、ボタン位置情報記憶部４０２と、ウィンドウ表示命令受付部４０３と、判断部４０４と、告知部４０５と、を含む構成である。
【００３７】
表示制御部４００は、ディスプレイ１０２の表示画面に各種情報を表示する。表示制御部４００は、具体的には、たとえば、図２に示したメモリ２０２などの記憶装置に記憶されたプログラムをＣＰＵ２０１に実行させることにより、その機能を実現する。
【００３８】
マウスカーソル監視部４０１は、マウスカーソル３３０の位置を監視し、マウスカーソル３３０の移動位置、移動方向などに関する情報を取得し、取得した情報を所定のタイミングで判断部４０４などに渡す。マウスカーソル監視部４０１は、具体的には、たとえば、図２に示したメモリ２０２などの記憶装置に記憶されたプログラムをＣＰＵ２０１に実行させることにより、また、メモリ２０２などにより、その機能を実現する。
【００３９】
ボタン位置情報記憶部４０２は、表示されたボタン３０１に関する情報を記憶する。ボタン位置情報記憶部４０２は、具体的には、たとえば、図２に示したメモリ２０２などによってその機能を実現する。
【００４０】
ボタン３０１に関する情報とは、具体的には、たとえば、ボタンの表示領域の座標情報、サイズ情報、ボタンのウィンドウ３００の表示領域の座標情報、サイズ情報、データ表示領域の座標情報、サイズ情報、ボタン表示領域３０３の座標情報、サイズ情報などが含まれていてもよい。また、ボタンの種類（ボタン内に記載される文字）などに関する情報も含まれていてもよい。
【００４１】
ウィンドウ表示命令受付部４０３は、新たなウィンドウの表示命令を受け付ける。ウィンドウ表示命令受付部４０３は、具体的には、たとえば、図２に示したメモリ２０２などの記憶装置に記憶されたプログラムをＣＰＵ２０１に実行させることにより、また、Ｉ／Ｆ２０３などにより、その機能を実現する。
【００４２】
新たな表示命令は、たとえば、起動中のアプリケーションによって出される場合などがある。また、インターネットなどを介した通信により、送られてくるデータによる場合などもある。操作者の操作によって、発せられる場合もあり、また、必ずしも、操作者が意図しないものもある。
【００４３】
判断部４０４は、新たなウィンドウの表示命令があった場合に、マウスカーソル３３０が、ボタン３０１の表示位置から所定の範囲にあるか否かを判断する。また、判断部４０４は、新たなウィンドウの表示命令があった際のマウスカーソル３３０の移動方向が、所定の方向であるか否かを判断する。また、判断部４０４は、新たなウィンドウが、ボタン３０１を隠すか否かを判断する。判断部４０４は、具体的には、たとえば、図２に示したメモリ２０２などの記憶装置に記憶されたプログラムをＣＰＵ２０１に実行させることにより、その機能を実現する。
【００４４】
なお、マウスカーソル３３０が、ボタン３０１の表示位置から所定の範囲にあるか否かの判断の具体的な内容については、後述する図５Ａ、図５Ｂを用いて説明する。また、新たなウィンドウが、ボタン３０１を隠すか否かの判断の具体的内容については、後述する図６Ａ〜図６Ｄを用いて説明する。
【００４５】
そして、表示制御部４００は、判断結果に基づいて、新たなウィンドウがボタンを隠さないようにする処理を実行する。新たなウィンドウがボタンを隠さないようにする処理の詳細については、後述する。
【００４６】
また、告知部４０５は、新たなウィンドウがボタンを隠さないようにする処理の一例である、新たなウィンドウの表示命令を無効にする処理をおこなう際に、当該処理をおこなう旨の告知をおこなう。告知部４０５は、具体的には、たとえば、図２に示したメモリ２０２などの記憶装置に記憶されたプログラムをＣＰＵ２０１に実行させることにより、その機能を実現する。告知部４０５の処理の内容については、後述する図１４のフローチャートを用いて説明する。
【００４７】
（ボタンの表示位置からの所定の範囲について）
上述のように、判断部４０４は、新たなウィンドウの表示命令があった場合に、マウスカーソル３３０が、ボタン３０１の表示位置から所定の範囲にあるか否かを判断する。その具体的な内容について説明する。図５Ａおよび図５Ｂは、ボタンの表示位置からの所定の範囲についての一例を示す説明図である。
【００４８】
図５Ａにおいて、ボタン３０１の表示位置から所定の範囲は、たとえば、ボタン３０１の中心点から、所定の距離の範囲であってもよい。図５Ａでは、所定の距離の範囲を楕円形５０１で示している。また、ボタン３０１が複数個ある場合は、それらのボタン３０１の中心位置を中心とした楕円形であってもよい。図５Ａにおいては、マウスカーソル３３０が、所定の距離の範囲（すなわち、楕円形５０１の範囲）内に存在するから、この場合は、マウスカーソル３３０が、ボタン３０１の表示位置から所定の範囲にあると判断することができる。
【００４９】
また、図５Ｂにおいては、複数個あるボタン３０１の中心位置を中心とした、所定の距離の範囲を矩形５０２で示している。このように所定の距離の範囲に関する形状は、楕円形や矩形には限定されることなく、どのようなものであってもよい。また、その範囲についても任意で設定することができる。図５Ｂにおいては、マウスカーソル３３０が、所定の距離の範囲（すなわち、矩形５０２の範囲）内に存在しないから、この場合は、マウスカーソル３３０が、ボタン３０１の表示位置から所定の範囲にないと判断することができる。
【００５０】
このように、マウスカーソル３３０がボタン３０１の近傍に存在することで、その後、早い時期にマウスカーソル３３０がボタン３０１に接近し、ボタン３０１がクリックされる可能性が高いと推測できる。したがって、判断部４０４が、ボタン３０１の表示位置から所定の範囲にあるか否かを判断して、所定の範囲にある場合に、ボタンを隠さないようにする処理をおこなうようにするものである。
【００５１】
したがって、上記推測により、マウスカーソル３３０が、ボタン３０１の表示位置に到達するよりも前に、新たなウィンドウによってボタン３０１が隠されてしまうことを事前に確実に回避することができる。
【００５２】
また、判断部４０４は、新たなウィンドウの表示命令があった際のマウスカーソル３３０の移動方向が、所定の方向であるか否かを判断する。具体的には、たとえば、マウスカーソル３３０の移動方向が、ボタン３０１の表示位置方向に向かっている場合は、ボタン３０１がクリックされる可能性があるが、反対に、マウスカーソル３３０の移動方向が、ボタン３０１の表示位置方向でない方向に向かっている場合は、ボタン３０１がクリックされる可能性が低いと推測できる。
【００５３】
そこで、マウスカーソル３３０の移動方向が、ボタン３０１の表示位置方向でない方向に向かっている場合は、その存在位置が、ボタンの表示位置から所定の範囲であるか否かにかかわらず、ボタンを隠さないようにする処理をおこなわないようにするものである。
【００５４】
一方、マウスカーソル３３０の移動方向が、ボタン３０１の表示位置方向に向かっている場合は、ボタン３０１がクリックされる可能性が高いと推測し、その存在位置が、ボタン３０１の表示位置から所定の範囲であるか否かにかかわらず、ボタンを隠さないようにする処理をおこなうようにするものである。また、ボタン３０１の表示位置からの所定の範囲にあって、かつ、マウスカーソル３３０の移動方向が、ボタン３０１の表示位置方向に向かっている場合に限り、ボタンを隠さないようにする処理をおこなうようにしてもよい。
【００５５】
（新たなウィンドウがボタンを隠す態様）
また、判断部４０４は、上述のように、新たなウィンドウが、ボタンを隠すか否かを判断する。図６Ａ〜図６Ｄは、新たなウィンドウがボタンを隠す態様についての一例を示す説明図である。
【００５６】
新たなウィンドウがボタンを隠す態様としては、たとえば、以下の（１）〜（４）の４つの態様がある。
【００５７】
（１）完全にすべてのボタンが新たなウィンドウによって隠れている場合である。これは、図６Ａに示しているように、ウィンドウ３００のボタン３０１が、新たなウィンドウ６０１によって完全に隠れている。この場合は、新たなウィンドウ６０１が、ボタン３０１を隠していると判断する。
【００５８】
（２）ボタンの一部が新たなウィンドウによって隠れているが、一部は隠れていない場合である。これは、図６Ｂに示しているように、新たなウィンドウ６０２の上端部が、ウィンドウ３００のボタン３０１の一部にかかっている。この状態でも、ボタン３０１を押すことは可能であるが、押し間違いの可能性があり、操作の正確性を期すことができない。このため、この場合も、新たなウィンドウ６０２が、ボタン３０１を隠していると判断する。
【００５９】
（３）ボタンは、新たなウィンドウによって隠れていないが、ボタン表示領域の一部が、新たなウィンドウによって、隠れている場合である。これは、図６Ｃに示しているように、新たなウィンドウ６０３が、ウィンドウ３００のボタン表示領域３０３の一部にかかっているが、ボタン３０１は、隠されていない。この状態では、ボタン３０１を押すことは可能である。
【００６０】
しかしながら、ボタン３０１の押下直前に、ボタン３０１の近傍に新たなウィンドウ６０３が出現することによって、操作者に精神的な負担を与えることになる虞れがある。特に、取消しができない重要な決済ボタンなどを押下しようとするタイミングで、新たなウィンドウ６０３が出現すると、驚いたり、何らかのコンピュータウイルスと勘違いしたりし、その後の作業に悪影響をおよぼすことが考えられる。したがって、この場合も、新たなウィンドウ６０３が、ボタン３０１を隠していると判断する。
【００６１】
（４）ボタンも、ボタン表示領域も、新たなウィンドウによって隠れていないが、データ表示領域の一部が、新たなウィンドウによって、隠れている場合である。これらは、図６Ｄに示しているように、新たなウィンドウ６０４が、ウィンドウ３００のボタン３０１の一部にかかっているが、ボタン３０１も、ボタン表示領域３０３も、隠されていない。この状態でも、ボタン３０１を押すことは可能である。
【００６２】
しかしながら、ボタン３０１を有するウィンドウ３００自体が、その一部であれ、隠されてしまうことで、上記（３）と同様に、操作者に精神的な負担を与えることになる虞れがある。したがって、この場合も、新たなウィンドウ６０４が、ボタン３０１を隠していると判断する。
【００６３】
（表示制御方法の処理手順）
図７は、実施の形態にかかる表示制御方法の処理の手順の一例を示すフローチャートである。図７フローチャートにおいて、表示画面上のマウスカーソル３３０の位置を監視する（ステップＳ７０１）。監視したマウスカーソル３３０の位置は、移動されるごとに、図示を省略する所定の記憶領域に記憶される。
【００６４】
つぎに、表示画面にボタン３０１（すなわちボタンを有するウィンドウ３００、３５０）が表示されたか否かを判断する（ステップＳ７０２）。ここで、ボタンが表示された場合（ステップＳ７０２：Ｙｅｓ）は、ステップＳ７０４へ移行し、表示されたボタンの位置情報を記憶する（ステップＳ７０４）。
【００６５】
ステップＳ７０２において、ボタン３０１が表示されない場合（ステップＳ７０２：Ｎｏ）は、すでに表示されているボタン３０１の位置が変更されたか否かを判断する（ステップＳ７０３）。ここで、ボタン３０１の位置が変更されていない（ボタン３０１が表示されていない場合も含む）場合（ステップＳ７０３：Ｎｏ）は、ステップＳ７０１へ戻る。
【００６６】
一方、ステップＳ７０３において、ボタン３０１の位置が変更された場合（ステップＳ７０３：Ｙｅｓ）は、ステップＳ７０４へ移行して、変更されたボタンの位置情報を記憶（上書き）する。
【００６７】
つぎに、新たなウィンドウ６０１〜６０４の表示命令があったか否かを判断する（ステップＳ７０５）。ここで、新たなウィンドウ６０１〜６０４の表示命令がなかった場合（ステップＳ７０５：Ｎｏ）は、ステップＳ７０１へ戻る。
【００６８】
ステップＳ７０５において、新たなウィンドウ６０１〜６０４の表示命令があった場合（ステップＳ７０５：Ｙｅｓ）は、つぎに、マウスカーソル３３０が所定の範囲（具体的には、図５に示した判定領域５０１、５０２）内にあるか否かを判断する（ステップＳ７０６）。ここで、マウスカーソル３３０が所定の範囲内にない場合（ステップＳ７０６：Ｎｏ）は、新たなウィンドウ６０１〜６０４についての表示の調整は不要であるから、何もせずに、一連の処理を終了する。
【００６９】
一方、ステップＳ７０６において、マウスカーソル３３０が所定の範囲内にある場合（ステップＳ７０６：Ｙｅｓ）は、つぎに、そのマウスカーソル３３０が所定の方向に移動しているか否かを判断する（ステップＳ７０７）。ここで、マウスカーソル３３０が所定の方向には移動していない場合（ステップＳ７０７：Ｎｏ）は、やはり、新たなウィンドウ６０１〜６０４についての表示の調整は不要であるから、何もせずに、一連の処理を終了する。
【００７０】
ステップＳ７０７において、マウスカーソル３３０が所定の方向に移動している場合（ステップＳ７０７：Ｙｅｓ）は、ボタン３０１の表示領域と、新たなウィンドウ６０１〜６０４の表示領域とを比較する（ステップＳ７０８）。そして、ボタン３０１が、新たなウィンドウ６０１〜６０４によって隠されているか否かを判断する（ステップＳ７０９）。隠されているか否かの判断は、図６Ａ〜図６Ｄを用いて前述したとおりである。
【００７１】
ステップＳ７０９において、ボタン３０１が隠されていないと判断された場合（ステップＳ７０９：Ｎｏ）は、やはり、新たなウィンドウ６０１〜６０４についての表示の調整は不要であるから、何もせずに、一連の処理を終了する。一方、ステップＳ７０９において、ボタン３０１が隠されていると判断された場合（ステップＳ７０９：Ｙｅｓ）は、以下に説明する、新たなウィンドウ６０１〜６０４がボタン３０１を隠さない処理を実行する（ステップＳ７１０）。そして、その処理を実行後、一連の処理を終了する。
【００７２】
（ボタンを隠さないようにする処理）
つぎに、図７のフローチャートのステップＳ７１０の、ボタンを隠さないようにする処理の内容について説明する。ボタンを隠さないようにする処理は、以下に示すように、たとえば、その１〜その５の５つの処理がある。
【００７３】
（１）その１：ずらす処理
ボタンを隠さないようにする処理（その１）は、重なり部分を解消するために、新たなウィンドウの表示領域と、ボタンの表示領域とが重ならない位置に新たなウィンドウの表示位置をずらす処理である。また、重なりを解消するために、新たなウィンドウの表示領域のサイズを変更する処理である。この新たなウィンドウの表示位置をずらす処理と、新たなウィンドウの表示領域のサイズを変更する処理は、それぞれ独立しておこなってもよく、両者をあわせておこなってもよい。
【００７４】
図８は、ボタンを隠さない処理の一例を示すフローチャート（その１）である。図８のフローチャートにおいて、まず、ボタンの表示領域と新たなウィンドウの表示領域の重なり領域に関する情報を取得する（ステップＳ８０１）。新たなウィンドウのサイズを決定する（ステップＳ８０２）。新たなウィンドウのサイズを変更することで、重なりを解消するとともに、新たなウィンドウの移動先の座標を決定する（ステップＳ８０３）。
【００７５】
そして、決定したサイズおよび移動先の座標に基づいて、新たなウィンドウの表示処理（サイズの縮小処理・移動表示処理）をおこない（ステップＳ８０４）、一連の処理を完了する。
【００７６】
図９Ａ〜図９Ｅは、ボタンを隠さない処理の一例を示す説明図である。図９Ａは、ボタン３０１を有するウィンドウ３００が、新たなウィンドウ９００に隠されている状態を示している。このような表示状態を回避するために、ずらす処理を実行する。
【００７７】
図９Ｂは、ウィンドウ９００のサイズを変更せずに、表示画面に向かって左側へ新たなウィンドウ９００をずらした状態を示している。同様に図９Ｃは、ウィンドウ９００のサイズを変更せずに、表示画面の上側へ新たなウィンドウ９００をずらした状態を示している。
【００７８】
このように、表示画面においてずらす方向に、空きスペース（すなわち、他のウィンドウが表示されていない領域）がある方向にずらすことができる。上下左右以外に、図示を省略するが、斜め方向へずらすようにしてもよい。
【００７９】
また、ずらす方向は、重なりが解消するために最も移動距離が短くなるような方向にずらすようにしてもよい。新たなウィンドウにも、表示画面上における表示位置に関する意味がある場合があるため、できるだけ当初の表示位置に近い位置とするのがよい場合があるからである。
【００８０】
また、ずらす方向は、図９Ｂ、図９Ｃに示したように、できるだけ、ボタン３０１が表示されている位置から離れた位置へ移動させるようにしてもよい。ボタン３０１の表示位置に近い位置へ移動することによって、マウス１０４の誤操作をできるだけ回避するためである。どのように移動するかについては、操作者に選択させるようにしてもよい。
【００８１】
図９Ｄは、ウィンドウ９００の横方向のサイズのみを変更したウィンドウ９０１とし、かつ、表示画面に向かって左側へ新たなウィンドウ９０１をずらした状態を示している。図９Ｄでは、ウィンドウ９００の横方向のサイズを縮小したので、ウィンドウ９０１の下側にスクロールバー９１１を表示している。
【００８２】
同様に図９Ｅは、ウィンドウ９００のサイズの縦方向のサイズのみを変更したウィンドウ９０２とし、表示画面の上側へウィンドウ９０２をずらした状態を示している。図９Ｅでは、ウィンドウ９００の縦方向のサイズを縮小したので、ウィンドウ９０２の右側にスクロールバー９１２を表示している。
【００８３】
このように、表示画面においてずらす方向に、空きスペースが少ない場合に、ウィンドウ９００のサイズを変更してウィンドウ９０１、９０２とすることができる。ウィンドウ９０１、９０２は、サイズ変更のみによって対応できる場合は、位置の移動はおこなわなくてもよい。サイズの変更（縮小）は、縦方向または横方向以外に、図示を省略するが、縦方向と横方向の両方向への縮小であってもよい。
【００８４】
（２）その２：表示を遅延させる処理
ボタンを隠さないようにする処理（その２）は、ボタンのクリック操作の妨げとならないように、新たなウィンドウの表示を遅延させる処理である。
【００８５】
そして、新たなウィンドウの表示を遅延させる処理は、ボタン３０１が押下されるまでの間だけ、遅延させる処理であってもよい。したがって、ボタン３０１が押下された場合は、新たなウィンドウの表示処理を実行する。その場合は、新たなウィンドウにより、ボタンは隠されてしまうことになるが、すでに、ボタン３０１が押下された後などで、ボタン３０１が隠されても、支障は生じないと考えられる。
【００８６】
また、新たなウィンドウの表示を遅延させる処理は、たとえば、マウスカーソル３３０が、ボタン３０１の表示位置から所定の範囲にある間だけ、遅延させる処理であってもよい。したがって、マウスカーソル３３０が、ボタン３０１の表示位置から所定の範囲に移動した場合には、新たなウィンドウの表示処理を実行する。その場合は、新たなウィンドウにより、ボタンは隠されてしまうことになるが、ボタン３０１が押下される可能性が低くなっているので、支障は少ないと考えられる。
【００８７】
また、新たなウィンドウの表示を遅延させる処理は、たとえば、あらかじめ定められた時間だけ、遅延させる処理であってもよい。あらかじめ定められた時間とは、具体的には、たとえば、５秒〜１０秒程度であればよい。まさに今ボタンをクリックしようとしたタイミングさえずらして表示できればよいからである。
【００８８】
したがって、あらかじめ定められた時間が経過したら、新たなウィンドウの表示処理を実行する。その場合も、新たなウィンドウにより、ボタンは隠されてしまうことになる。しかしながら、ボタン３０１を押下する直前のウィンドウの出現は回避できるため、支障は少ないと考えられる。
【００８９】
図１０は、ボタンを隠さない処理の一例を示すフローチャートである。図１０のフローチャートにおいて、まず、ボタンが隠されていると判断した場合に、タイマーをＯＮする（ステップＳ１００１）。つぎに、ボタン３０１が押下されたか否かを判断する（ステップＳ１００２）。ここで、ボタン３０１が押下されたと判断された場合（ステップＳ１００２：Ｙｅｓ）は、ステップＳ１００５へ移行し、新たなウィンドウの表示処理の実行を開始し（ステップＳ１００５）、一連の処理を完了する。
【００９０】
ステップＳ１００２において、ボタン３０１が押下されていない場合（ステップＳ１００２：Ｎｏ）は、マウスカーソル３３０が、所定の範囲内（たとえば図５Ａに示した判定領域５０１内または図５Ｂに示した判定領域５０２内）にあるか否かを判断する（ステップＳ１００３）。ここで、マウスカーソル３３０が、所定の範囲内にない場合（ステップＳ１００３：Ｎｏ）は、ステップＳ１００５へ移行し、新たなウィンドウの表示処理の実行を開始し（ステップＳ１００５）、一連の処理を完了する。
【００９１】
ステップＳ１００３において、マウスカーソル３３０が、所定の範囲内にある場合（ステップＳ１００３：Ｙｅｓ）は、つぎに、タイマーが所定時間を経過したか否かを判断する（ステップＳ１００４）。ここで、所定時間が経過していない場合（ステップＳ１００４：Ｎｏ）は、ステップＳ１００２へ戻り、ステップＳ１００２〜Ｓ１００４の各処理を繰り返しおこなう。
【００９２】
一方、ステップＳ１００４において、所定時間が経過した場合（ステップＳ１００４：Ｙｅｓ）は、新たなウィンドウの表示処理の実行を開始し（ステップＳ１００５）、一連の処理を完了する。このように、新たなウィンドウの表示を遅延させることによって、ボタン押下操作において発生しうる支障の発生を回避することができる。
【００９３】
（３）その３：ウィンドウを最小化する処理
ボタンを隠さないようにする処理（その３）は、新たなウィンドウを最小化する処理である。最小化する処理とは、ウィンドウを隠す処理であって、表示画面（デスクトップ）上からそのウィンドウが消えて、タスクに残るだけになる。このような処理をすることで、ボタン３０１が隠されることが解消し、操作者がおこなうボタン３０１の押下処理にも支障が生じない。新たなウィンドウは、最小化しただけなので、後から、簡易な操作により、元の表示状態に戻すことができる。
【００９４】
図１１は、ボタンを隠さない処理の一例を示すフローチャートである。図１１のフローチャートにおいて、まず、新たなウィンドウについて、最小化処理を実行する（ステップＳ１１０１）。
【００９５】
その後、操作者から、最小化された新たなウィンドウの表示指示があったか否かを判断する（ステップＳ１１０２）。ここで、表示指示があるのを待って（ステップＳ１１０２：Ｎｏ）、表示指示があった場合（ステップＳ１１０２：Ｙｅｓ）は、最小化された新たなウィンドウを、元のサイズで元々表示する予定であった表示位置に表示し（ステップＳ１１０３）、一連の処理を完了する。
【００９６】
（４）その４：重なり領域の表示の優先度を変更する処理
ボタンを隠さないようにする処理（その４）は、ボタンの表示領域と新たなウィンドウの表示領域の重なり部分におけるボタンの表示領域が、新たなウィンドウの表示領域よりも前面に表示されるように、表示の優先度を変更する処理である。
【００９７】
重なり領域部分の表示の優先度を変更して、ボタンの表示領域が隠されることがないので、操作者はボタン押下操作を支障なくおこなうことができる。また、表示画面全体の画面レイアウトが変更されないので、特定の画面レイアウトによる作業における作業効率が向上すると考えられる。
【００９８】
図１２は、ボタンを隠さない処理の一例を示すフローチャートである。図１２のフローチャートにおいて、まず、ボタンの表示領域と新たなウィンドウの表示領域の重なり領域に関する情報を取得する（ステップＳ１２０１）。
【００９９】
つぎに、取得した情報に基づいて、重なり領域の表示優先度を決定する（ステップＳ１２０２）。具体的には、重なり領域部分におけるボタンの表示領域の表示を最優先させるように決定する。
【０１００】
その後、決定された内容に基づいて、重なり領域の表示処理を実行し（ステップＳ１２０３）、一連の処理を完了する。
【０１０１】
図１３は、ボタンを隠さない処理の一例（表示の優先度を変更する処理）を示す説明図である。図１３は、図９Ａに示した状態から、決定された表示優先度に基づいて、重なり領域の表示処理を実行した結果を示している。図１３からも分かるように、ボタン３０１が、隠されてはおらず、操作者がボタン３０１を押下する操作をおこなうのに支障がない。また、表示画面の画面レイアウトにも変更が生じない。
【０１０２】
（５）その５：表示命令を無効にする処理
ボタンを隠さないようにする処理（その４）は、新たなウィンドウの表示命令を無効にする処理である。新たなウィンドウの表示命令を受け付けず、実行しないようにする。これにより、より確実に、ボタンが隠されるのを回避することができる。特に、ウイルスなど悪意を持った表示命令により、ボタン押下を邪魔したり、悪用したりする行為を確実に防止することができる。
【０１０３】
ただし、操作者は、当該新たなウィンドウの表示命令が無効にしたことを知り得ないので、無効にする処理をおこなう際に、当該処理をおこなう旨の告知をおこなうようにするとよい。
【０１０４】
図１４は、ボタンを隠さない処理の一例を示すフローチャートである。図１４のフローチャートにおいて、まず、新たなウィンドウの表示命令を無効にする処理をおこなう（ステップＳ１４０１）。したがって、この表示命令は無視する。
【０１０５】
その後、タイマーをＯＮにする（ステップＳ１４０２）。そして、所定時間（たとえば５秒〜１０秒程度）が経過したか否かを判断する（ステップＳ１４０３）。ここで、所定時間が経過するのを待って（ステップＳ１４０３：Ｎｏ）、所定時間が経過した場合（ステップＳ１４０３：Ｙｅｓ）は、無効にした旨の告知処理を実行する（ステップＳ１４０４）。
【０１０６】
告知処理は、たとえば、告知内容を示したポップアップウィンドウを表示画面上に表示することにより、実行するようにしてもよい。また、ブザーや音声（たとえば、『新たなウィンドウの表示命令を無効にしました。』）などによって、実行するようにしてもよい。所定時間経過後に告知処理をおこなうのは、操作者が今まさにボタン押下操作をおこなおうとしている際に、その操作に支障を与えないようにするためである。
【０１０７】
以上説明したように、実施の形態にかかる表示制御プログラム、表示制御方法、表示制御装置によれば、マウスカーソル直下に表示されるウィンドウを誤操作しないので、ボタン操作を含めた、現在おこなっている作業を確実に継続することができる。
【０１０８】
具体的には、たとえば、新たに表示されるウィンドウが、ボタン３０１を含むウィンドウ３００を隠さないように表示制御するので、操作対象ではないアプリケーションが、ユーザー操作とは非同期にアプリケーションウィンドウを生成した場合であっても、ボタン操作を奪ってしまうことを抑止することができる。ウィンドウシステムを操作していた操作者は、直前まで別のウィンドウを操作しており、操作位置に割り込んで不完全に表示されたウィンドウへの操作は誤動作の対象となるが、そのような誤動作を回避することができる。
【０１０９】
また、ウイルスなどの悪意のあるプログラムが動作したことによる、セキュリティ上の重要な警告の確認画面が、操作者がデバイスのボタンを押した瞬間に表示された場合、警告をすりぬけて実行されてしまい、セキュリティリスクが発生する場合も考えられるが、このようなリスクを効果的に軽減することができる。
【０１１０】
オペレーティングシステムの機能を用いて、操作を抑止し、通知ウィンドウを表示させない、という対応ではないので、その通知が受け取れなくなってしまうという問題も解消することができる。
【０１１１】
なお、本実施の形態で説明した表示制御方法は、あらかじめ用意されたプログラムをパーソナル・コンピュータやワークステーションなどのコンピュータで実行することにより実現することができる。表示制御プログラムは、ハードディスク、フレキシブルディスク、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ）−ＲＯＭ、ＭＯ（Ｍａｇｎｅｔｏ−Ｏｐｔｉｃａｌ  Ｄｉｓｋ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）メモリなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、表示制御プログラムは、インターネットなどのネットワークを介して配布してもよい。
【０１１２】
上述した実施の形態に関し、さらに以下の付記を開示する。
【０１１３】
（付記１）表示画面に表示されたボタンの表示位置を記憶し、
マウスカーソルの位置を監視し、
新たなウィンドウの表示命令があった場合に、前記マウスカーソルが前記ボタンの表示位置から所定の範囲にあるか、および、前記新たなウィンドウが前記ボタンを隠すかを判断し、
前記判断結果に基づいて、前記新たなウィンドウが前記ボタンを隠さないようにする、
処理をコンピュータに実行させることを特徴とする表示制御プログラム。
【０１１４】
（付記２）前記判断する処理は、さらに、前記新たなウィンドウの表示命令があった際の前記マウスカーソルの移動方向が、所定の方向であるかを判断する処理であることを特徴とする付記１に記載の表示制御プログラム。
【０１１５】
（付記３）前記新たなウィンドウが前記ボタンを隠さないようにする処理は、
前記新たなウィンドウの表示領域と、前記ボタンの表示領域とが重ならない位置に前記新たなウィンドウの表示位置をずらす処理であることを特徴とする付記１または２に記載の表示制御プログラム。
【０１１６】
（付記４）前記新たなウィンドウが前記ボタンを隠さないようにする処理は、
前記新たなウィンドウの表示領域のサイズを変更する処理であることを特徴とする付記１〜３の何れか一つに記載の表示制御プログラム。
【０１１７】
（付記５）前記新たなウィンドウが前記ボタンを隠さないようにする処理は、
前記新たなウィンドウの表示を遅延させる処理であることを特徴とする付記１または２に記載の表示制御プログラム。
【０１１８】
（付記６）前記新たなウィンドウの表示を遅延させる処理は、
前記ボタンが押下されるまでの間だけ、遅延させる処理であることを特徴とする付記５に記載の表示制御プログラム。
【０１１９】
（付記７）前記新たなウィンドウの表示を遅延させる処理は、
前記マウスカーソルが、前記ボタンの表示位置から所定の範囲にある間だけ、遅延させる処理であることを特徴とする付記５に記載の表示制御プログラム。
【０１２０】
（付記８）前記新たなウィンドウの表示を遅延させる処理は、
あらかじめ定められた時間だけ、遅延させる処理であることを特徴とする付記５に記載の表示制御プログラム。
【０１２１】
（付記９）前記新たなウィンドウが前記ボタンを隠さないようにする処理は、
前記新たなウィンドウを最小化する処理であることを特徴とする付記１または２に記載の表示制御プログラム。
【０１２２】
（付記１０）前記新たなウィンドウが前記ボタンを隠さないようにする処理は、
前記ボタンの表示領域と前記新たなウィンドウの表示領域の重なり部分における前記ボタンの表示領域が、前記新たなウィンドウの表示領域よりも前面に表示されるように、前記表示の優先度を変更する処理であることを特徴とする付記１または２に記載の表示制御プログラム。
【０１２３】
（付記１１）前記新たなウィンドウが前記ボタンを隠さないようにする処理は、
前記新たなウィンドウの表示命令を無効にする処理であることを特徴とする付記１または２に記載の表示制御プログラム。
【０１２４】
（付記１２）前記無効にする処理をおこなう際に、当該処理をおこなう旨の告知をおこなうことを特徴とする付記１１に記載の表示制御プログラム。
【０１２５】
（付記１３）表示画面に表示されたボタンの表示位置を記憶し、
マウスカーソルの位置を監視し、
新たなウィンドウの表示命令があった場合に、前記マウスカーソルが前記ボタンの表示位置から所定の範囲にあるか、および、前記新たなウィンドウが前記ボタンを隠すかを判断し、
前記判断結果に基づいて、前記新たなウィンドウが前記ボタンを隠さないようにする、
処理をコンピュータが実行することを特徴とする表示制御方法。
【０１２６】
（付記１４）表示画面に表示されたボタンの表示位置を記憶し、
マウスカーソルの位置を監視し、
新たなウィンドウの表示命令があった場合に、前記マウスカーソルが前記ボタンの表示位置から所定の範囲にあるか、および、前記新たなウィンドウが前記ボタンを隠すかを判断し、
前記判断結果に基づいて、前記新たなウィンドウが前記ボタンを隠さないようにする、
制御部を有することを特徴とする表示制御装置。
【符号の説明】
【０１２７】
１００  情報処理装置
１０１  本体
１０２  ディスプレイ
１０３  キーボード
１０４  マウス
２００  バス
２０１  ＣＰＵ
２０２  メモリ
２０３  Ｉ／Ｆ
２０４  入力装置
２５０  ネットワーク
３００、３５０  ウィンドウ
３０１、３５１  ボタン
３０２  データ表示領域
３０３  ボタン表示領域
３３０  マウスカーソル
４００  表示制御部
４０１  マウスカーソル監視部
４０２  ボタン位置情報記憶部
４０３  ウィンドウ表示命令受付部
４０４  判断部
４０５  告知部
５０１、５０２  判定領域
６０１〜６０４、９００〜９０２  新たなウィンドウ
【図１】
2019021042.tif 000003
【図２】
2019021042.tif 000004
【図３Ａ】
2019021042.tif 000005
【図３Ｂ】
2019021042.tif 000006
【図３Ｃ】
2019021042.tif 000007
【図４】
2019021042.tif 000008
【図５Ａ】
2019021042.tif 000009
【図５Ｂ】
2019021042.tif 000010
【図６Ａ】
2019021042.tif 000011
【図６Ｂ】
2019021042.tif 000012
【図６Ｃ】
2019021042.tif 000013
【図６Ｄ】
2019021042.tif 000014
【図７】
2019021042.tif 000015
【図８】
2019021042.tif 000016
【図９Ａ】
2019021042.tif 000017
【図９Ｂ】
2019021042.tif 000018
【図９Ｃ】
2019021042.tif 000019
【図９Ｄ】
2019021042.tif 000020
【図９Ｅ】
2019021042.tif 000021
【図１０】
2019021042.tif 000022
【図１１】
2019021042.tif 000023
【図１２】
2019021042.tif 000024
【図１３】
2019021042.tif 000025
【図１４】
2019021042.tif 000026