【手続補正書】
【提出日】平成16年1月9日(2004.1.9)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の名称】ウインドウ表示制御装置
【特許請求の範囲】
【請求項１】 複数のウインドウを表示する表示手段と、
オープン状態のウインドウのタイトルバー領域に対するポインティングデバイスの指定操作に応答して、オープンされているウインドウを再表示のために選択するメニューを表示するメニュー表示手段と、
このメニュー表示手段で表示されているメニューが選択された際に、選択されたメニューと対応するウインドウを最前面に表示する表示制御手段と、
を具備してなることを特徴とするウインドウ表示制御装置。
【請求項２】 前記メニュー表示手段は、前記オープンされているウインドウの表示順序に従って各ウインドウに対応する前記メニューを並べて表示し、ウインドウの表示順序が変更された際には、この表示順序で並び替えて表示することを特徴とする請求項1記載のウインドウ表示制御装置。
【請求項３】 オープン状態で表示したウインドウを使用しない状態が継続した場合にこのウインドウを待機状態へ移行させる待機移行手段とを備え、前記メニュー表示手段は、オープンされているウインドウのメニューの他に、前記待機状態に移行されたウインドウのメニューを区別して表示することを特徴とする請求項１記載のウインドウ表示制御装置。
【請求項４】 前記メニュー表示手段は、オープンされていないウインドウをオープンするための起動メニューを含んでいることを特徴とする請求項１記載のウインドウ表示制御装置。
【請求項５】 コンピュータに表示装置の表示画面に表示されるウインドウ表示を制御させる機能を実行させるためのプログラムを記録した記録媒体であって、
複数のウインドウを表示する機能と、
オープン状態のウインドウのタイトルバー領域に対するポインティングデバイスの指定操作に応答して、オープンされているウインドウを再表示のために選択するメニューを表示する機能と、
表示されているメニューが選択された際に、選択されたメニューに対応するウインドウを最前面に表示する機能と、
を実行させるためのプログラムを記録したコンピューター読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、表示画面に表示されるウインドウ表示を操作性良く制御するウインドウ表示制御装置、及びそのプログラムを記録した記録媒体に関する。
【０００２】
【従来の技術】
従来より、例えばマルチウインドウ機能を有するＯＳ（基本ソフトウエア）を搭載したコンピュータでは、表示装置の表示画面上に、処理単位毎にウインドウを表示して、そのウインドウ内で処理を行うようになっている。
【０００３】
一般に、このウインドウの表示では、コンピュータを使用するユーザの指定によって、多数のウインドウを表示画面上に同時に開くことが出来るが、表示画面は物理的に広さが限られているので、開かれたウインドウは、表示画面上に並べて同時に参照できるように表示できるとは限らない。ウインドウは大きさを自在に変更できるとは言え、開いたウインドウの全部を同時に参照できるように小さくして並べたのでは、一つ一つのウインドウが小さくなりすぎて処理が出来ない。このため、ユーザは処理を実行中のウインドウを通常は大きく表示するようにするが、そうすると、同時に開いている他のウインドウは、大きく開いたウインドウの陰に、一部又は全部が隠れてしまう。
【０００４】
いずれにしても、ユーザが同時に参照できるウインドウは限られた数になる。したがって、多数のウインドウを開いた状態では、一番下に隠れているウインドウを参照するときなどには、上に、即ち、画面の手前側に重なっているウインドウから順次内容を調べて行く必要が生じて、実際には参照しないウインドウが邪魔になり、操作性が低下するという問題がある。また、同時に開いているウインドウの数が多いと、入力操作に対するコンピュータの反応動作が遅くなるという欠点も生じてくる。このため、ユーザは不要なウインドウを一つ一つ確認してウインドウを閉じる若しくは最小化する操作を行わなければならない。
【０００５】
この場合、最小化され、画面上からは消去されて、待機状態となったウインドウは、画面の端部に設けられたタスクバー上に表示される。タスクバー上に待機状態になってアイコンとして表示されたウインドウはウインドウ管理情報に基づいてウインドウマネジャーにより管理されており、そのウインドウ管理情報には画面上から消去する前のウインドウのサイズ、位置などが保持されている。ウインドウマネジャーは、待機中のウインドウの再表示が指示されると、ウインドウ管理情報に基づいて消去前と同一の状態で画面上に再表示する。
【０００６】
また、ユーザがウインドウを閉じる操作を行うと、ウインドウマネジャーがそのウインドウのウインドウ管理情報を開放して、即ち、メモリの一時記憶領域から削除して、そのウインドウは完全に画面上だけでなくタスクバー上からも消去される。
【０００７】
【発明が解決しようとする課題】
ところで、従来、待機中のウインドウを画面上の一番手前に、再表示させる、又は他のウインドウに隠されている、あるいは非アクティブにされているウインドウを画面上に表示させてアクティブにする操作と、一旦閉じたウインドウを新たに画面上に開く操作とでは、異なる操作を必要としていた。
【０００８】
すなわち、待機中の又は非アクティブのウインドウをアクティブにして表示ウインドウの表示順序を切り替えるには、タスクバーに表示されている目的のウインドウを示すアイコンを、ポインティングデバイスで指定することにより行っているが、新たにオープンするウインドウは、タスクバーのスタートボタンを操作してメニューを階層的に表示させ、目的のウインドウを示すアイコンを指定することによって、行っている。
【０００９】
これは、現在ユーザが開いているウインドウは、画面上に表示されているものであれタスクバーに待機中のものであれ、ユーザが常にそれらのウインドウを開いていることを認識しているものであるとして、このことを前提にして設定されたものである。
【００１０】
しかしながら、上記の操作は、アクティブにする場合、あるいは新たに開く場合に、それぞれ異なった操作が要求されるものであるため、ユーザにとって煩わしく、操作性の点からも混乱を招きやすく好ましくない。
【００１１】
本発明の課題は、上記従来の実情に鑑み、表示画面に表示されるウインドウ表示を操作性良く制御するウインドウ表示制御装置を提供することである。
【００１２】
【課題を解決するための手段】
以下に、本発明に係わるウインドウ表示制御装置の構成を述べる。先ず、請求項１記載の発明のウインドウ表示制御装置は、複数のウインドウを表示する表示手段と、オープン状態のウインドウのタイトルバー領域に対するポインティングデバイスの指定操作に応答して、オープンされているウインドウを再表示のために選択するメニューを表示するメニュー表示手段と、このメニュー表示手段で表示されているメニューが選択された際に、選択されたメニューと対応するウインドウを最前面に表示する表示制御手段とより構成される。
【００１３】
そして、このウインドウ表示制御装置は、例えば請求項２記載のように、前記メニュー表示手段は、前記オープンされているウインドウの表示順序に従って各ウインドウに対応する前記メニューを並べて表示し、ウインドウの表示順序が変更された際には、この表示順序で並び替えて表示する。
【００１４】
また、このウインドウ表示制御装置は、例えば請求項３記載のように、オープン状態で表示したウインドウを使用しない状態が継続した場合にこのウインドウを待機状態へ移行させる待機移行手段とを備え、前記メニュー表示手段は、オープンされているウインドウのメニューの他に、前記待機状態に移行されたウインドウのメニューを区別して表示する。
【００１５】
例えば、ウインドウが開かれてから使用しない状態が予めユーザによって設定された時間だけ継続した場合は、ウインドウが最小化されて待機状態になり、メニューには、ウインドウが開いているもの、待機状態であるものが区別して表示される。
【００１６】
また、前記メニュー表示手段は、例えば請求項４記載のように、オープンされていないウインドウをオープンするための起動メニューを含んでいる。
【００１７】
更に、請求項５記載の発明の記録媒体は、コンピュータに表示装置の表示画面に表示されるウインドウ表示を制御させる機能を実行させるためのプログラムを記録した記録媒体であって、複数のウインドウを表示する機能と、オープン状態のウインドウのタイトルバー領域に対するポインティングデバイスの指定操作に応答して、オープンされているウインドウを再表示のために選択するメニューを表示する機能と、表示されているメニューが選択された際に、選択されたメニューに対応するウインドウを最前面に表示する機能と、を実行させるためのプログラムを記録したコンピューター読み取り可能な記録媒体。
【００１８】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照しながら説明する。
図１は、一実施の形態におけるコンピュータシステムの構成を示すブロック図である。同図に示すように、このコンピュータシステムは、ＣＰＵ（中央演算処理装置）１と、このＣＰＵ１にバス２を介して接続された外部記憶装置３、送受信装置４、入力部５、表示制御装置６及びＲＡＭ（読み書き自在メモリ）７、並びに上記の表示制御装置６に接続された表示メモリ８及び表示部９で構成されている。
【００１９】
ＣＰＵ１は、内蔵の例えばフラッシュＲＯＭ（電気的に内容を書き直せる読み出し専用メモリ）等に格納されているファームウエアに基づいて各ハード機構部を制御し、外部記憶装置３に搭載されているＯＳ（ユーザの操作環境を設定する基本ソフト）を、順次ＲＡＭ７の所定領域に読み出し、このＯＳに従って全体の動作を制御する。
【００２０】
外部記憶装置３は、内蔵ＨＤＤ、外付けＨＤＤ、ＦＤＤ、ＭＯ、ＣＤ−ＲＯＭ、メモリカード等の記憶媒体のドライブ装置又は着脱装置を備えており、ＣＰＵ１の制御の下に、所望のファイルをこれらの記憶媒体から読み出し又は保管すべきファイルをこれらの記憶媒体に格納する。これらのファイルには、各種タスク毎に対応するアプリケーションソフトのファイル、これらのアプリケーションソフトによって作成されたデータファイルや、ＯＳ用のあるいは制御専用のアプリケーションソフト用の各種管理情報ファイルが格納されている。
【００２１】
送受信装置４は、例えばＲＳ−２３２Ｃ、セントロニクス、ＵＳＢ等の規格のＩ／Ｏ（入出力）インターフェースを備えて周辺機器と接続してこれら周辺機器とＣＰＵ１との信号の送受信を中継し、あるいは、モデム、モデムカード、又はモジュール等を接続するためのコネクタを備えて、通信回線と接続し、所望のネットワークシステムと通信が可能であるように構成されている。
【００２２】
入力部５は、特には図示しないが、キーボードやマウス装置、トラックボール装置、スティックポイント装置、又はフラットポイント装置等のポインティングデバイスを備えており、入力情報をＣＰＵ２に通知する。
【００２３】
表示制御装置６は、ＣＰＵ１からの制御の下に、画面上に表示すべき入力情報あるいはその入力情報に対応する各種の処理内容等からなる画像データを表示メモリに８にイメージ展開し、そのイメージ展開した画像データを表示部９の表示画面に表示するよう表示部９を制御する。
【００２４】
表示部９は、ＣＲＴ又はＬＣＤなどの表示装置あるいはプラズマディスプレイを備えており、表示制御装置６の制御の下に表示画面上に、上記の画像データを表示する。
【００２５】
ＲＡＭ７は、ＣＰＵ１の制御により、外部記憶装置３から読み出されたＯＳ用のあるいは制御専用のアプリケーションソフト用の各種管理情報ファイルやその他の各種中間データファイル、あるいはアプリケーションソフトファイを一時的に記憶する。
【００２６】
同図に示す例では、中間データファイルでは、ウインドウ表示用データが表示データとして展開されている。尚、演算途中のデータのような一般中間データは不図示の一時領域に記憶される。また、同図の例では、管理情報ファイルとしてウインドウ管理情報、メニュー管理情報、・・・が展開されている。また、アプリケーションソフトファイルでは、制御専用のアプリケーションソフトとしてウインドウプロシジャが展開されている。
【００２７】
上記のウインドウ管理情報は、一度は画面上に開かれたことのあるタスク別のウインドウＡ、ウインドウＢ、・・・、ウインドウＥ、ウインドウＦ、・・・の、画面上に表示する場合の情報からなっており、ウインドウのサイズ（幅Ｗ、高さＨ）、画面左上つまりウインドウの左上角の表示座標（横方向ｘ、縦方向ｙ）、及び表示順を示すデータ（順番ｎ）から成っている。順番ｎは、ｎ＝１、２、・・・、ｎであり、１番（ｎ＝１）はアクティブになっているウインドウ、２番（ｎ＝２）以上は、番号が大きいほど表示順序が後になるウインドウである。
【００２８】
ウインドウプロシジャは、開かれているウインドウ又は待機中のウインドウからの通知に応じて各ウインドウが処理すべきデータの処理を実行すると共に、ウインドウのサイズや表示位置に変更があったときは、その変更に基づいて、そのウインドウに係わるウインドウ管理情報内の、サイズ、表示座標、表示順等の各データを更新し、この更新したデータに基づいてウインドウを表示する。
【００２９】
図２は、上記のウインドウ管理情報及びメニュー管理情報が係わるメニューファイルのデータ構成を示す図である。同図に示すように、メニューファイル１０は、ウインドウメニュー領域１１と、プログラムメニュー領域１２と、設定データ領域１３とに分かれている。
【００３０】
ウインドウメニュー領域１１には、左端の「名称」欄に、ウインドウの名称が「ＷｉｎＡ」、「ＷｉｎＢ」、「ＷｉｎＣ」というように同図の例では「ＷｉｎＧ」までが格納されており、その右の「状態」欄には、上記名称のウインドウが開かれているものには「ｏ」、待機中のものには「ｗ」、及び一旦開いた後閉じられたものには「ｃ」の記号が、それぞれ対応する位置に格納されている。
【００３１】
その右の「ｗｔ」欄には、ウインドウが開かれてから使用しない状態が継続した経過時間が１０分単位で、例えば「０．４」（４分）、「１．０」（１０分）、・・・、「２．０」（２０分）というように格納されている。待機中の「ＷｉｎＦ」の「ｗｔ」欄の経過時間「２．０」は、後述するように予めユーザによって設定された許容経過時間が２０分であることを示しており、「ＷｉｎＦ」が開かれていたときに、使用されないまま２０分が経過したために、ウインドウが最小化されて待機状態になったことを示している。閉じた「ＷｉｎＧ」の「ｗｔ」欄の経過時間「２．０」も上記と同様に待機状態になったときまでの経過時間を示している。
【００３２】
また、「ｗｔ」欄の右の「ｃｔ」欄には、待機状態になってからの経過時間が同じく１０分単位で格納されている。例えば待機状態の「ＷｉｎＦ」の「ｃｔ」欄には経過時間「１．５」が格納されており、「ＷｉｎＦ」が待機状態になってから使用されないまま１５分が経過したことを示している。
【００３３】
また、閉じた「ＷｉｎＧ」の「ｃｔ」欄の「３．０」は、これも後述するように予めユーザによって設定された許容経過時間が３０分であることを示しており、「ＷｉｎＧ」が待機中であったときに、使用されないまま３０分が経過したために、ウインドウが閉じられたことを示している。
【００３４】
その右の「ウインドウ管理情報」欄には、前述した、ウインドウのサイズデータ（Ｗ、Ｈ）、表示座標データ（ｘ、ｙ）、及び表示順データ（ｎ）が格納されている。
【００３５】
また、プログラムメニュー領域１２には、右端の名称欄にプログラムの名称が例えば「ＰｒｏｇＷ」、「ＰｒｏｇＸ」、・・・というように格納されており、その右の「リンク先」欄には、プログラムのリンク先が格納されている。
【００３６】
また、設定データ領域１３には、「ｗｔ ｓｅｔ」設定欄、「ｃｔ ｓｅｔ」設定欄、及び「ｎ」設定欄が設けられている。これらの設定欄のうち、「ｗｔｓｅｔ」と「ｃｔ ｓｅｔ」の設定欄には、例えば「１」〜「５」の５段階の時間が設定される。同図の例では、「ｗｔ ｓｅｔ」欄には「２」が格納されており、これにより、開かれたウインドウが使用されない状態の許容経過時間が２０分に設定されている。ウインドウメニュー１１の「状態」欄が「ｗ」又は「ｃ」となっているウインドウ「ＷｉｎＦ」及び「ＷｉｎＧ」の「ｗｔ」欄が前述したように「２．０」となっているのは、上記「ｗｔ ｓｅｔ」設定欄の「２」の設定に従っているからである。
【００３７】
また、「ｃｔ ｓｅｔ」欄には「３」が格納されている。これにより、待機状態になったウインドウが更に使用されないままの状態の許容経過時間が３０分に設定されている。ウインドウメニュー１１の「状態」欄が「ｃ」となっているウインドウ「ＷｉｎＧ」の「ｃｔ」欄が前述したように「３．０」となっているのは、上記「ｃｔ ｓｅｔ」設定欄の「３」の設定に従っているからである。
【００３８】
そして、「ｎ」欄には、画面上に開かれるウインドウの許容数が「４」〜「７」の範囲で設定される。同図の例では「５」が格納されている。これにより、開かれるウインドウの数が五つに設定されている。ウインドウメニュー１１の「状態」欄が「ｏ」となっているウインドウが「ＷｉｎＡ」から「ＷｉｎＥ」まで５個であるのは、上記「ｎ」欄の「５」の設定に従っているからである。
【００３９】
図３は、上記の構成において、ウインドウプロシジャを起動した画面上においてマウスカーソル（以下、ポインティングデバイスを代表してマウスカーソルで説明する）の右ボタンをクリックしたときのメニュー表示の処理動作を説明するフローチャートである。
【００４０】
図４は、上記の右ボタンクリックにより表示されたメニューを選択した際の処理動作を説明するフローチャートである。図５(a) は、図３のフローチャートの処理におけるメニュー表示の例を示す図であり、同図(b) は、図４のフローチャートの処理における画面表示の例を示す図である。上記の図３、図４及び図５(a),(b) を用いて、ウインドウプロシジャの処理動作を説明する。
【００４１】
図３において、マウスカーソルの右ボタンのクリックに対応して処理が開始される。先ず、マウスカーソルの位置を取得し（ステップＳ０１）、続いて、その取得したマウスカーソルの位置が、ウインドウ内であるか否かを判別する（ステップＳ０２）。そして、例えば図５(a) のウインドウ１４の表示例に示すように、マウスカーソル１９の位置がウインドウ１４内にあれば（Ｓ０２がＹ）、次に、このウインドウ１４がアクティブか否かを判別する（ステップＳ０３）。
【００４２】
尚、図５(a) に示す例では、画面２７にはウインドウ１４が表示されており、ウインドウ１４のタイトルバー１５の左端にはタイトル表示位置１６に、このウインドウのタイトル（データ又はプログラムのファイル名）が表示され、右端には、最小化ボタン１７と、閉じ（クローズ）ボタン１８が表示されている。
【００４３】
上記ステップＳ０３の判別で、このウインドウ１４がアクティブで無いときは（Ｓ０３がＮ）、このウインドウ１４をアクティブに設定し、このウインドウ１４のウインドウ管理情報のウインドウの表示順序を一位へ変更し、他のウインドウ（図５(a) の例ではウインドウ１４の陰になって見えないウインドウ２２，２３，２４，２５）を二位以下に順に更新する（ステップＳ０４）。
【００４４】
続いて、マウスカーソル１９の位置がウインドウ１４のタイトルバー１５の領域内であるか否かを判別する（ステップＳ０５）。尚、上記ステップＳ０３の判別でこのウインドウ１４がアクティブになっているときは（Ｓ０３がＹ）直ちに、このステップＳ０５の処理に移る。
【００４５】
このステップＳ０５の判別で、マウスカーソル１９の位置がウインドウ１４のタイトルバー１５の領域内であれば（Ｓ０５がＹ）、次に、ウインドウ管理情報内の表示順序にしたがってメニュー管理情報内のウインドウメニューをその表示順に並び替える（ステップＳ０６）（図２参照）。続いて、メニュー管理情報よりメニューを生成し（ステップＳ０７）、例えば図５(a) に示すように、メニュー２０を、カーソル１９の位置に表示し、そのメニュー２０の中に、ウインドウが開いているもの（ｏ）、待機状態であるもの（ｗ）、閉じて（クローズして）いるもの（ｃ）を区別して表示し、更に起動可能な所定数のプログラムも表示して（ステップＳ０８）、処理を終了する。
【００４６】
また、上記ステップＳ０５の判別で、マウスカーソル１９の位置がウインドウ１４のタイトルバー１５の領域内で無いときは（Ｓ０５がＮ）、他のメニューを表示する処理を行って（ステップＳ０９）、処理を終了する。
【００４７】
また、ステップＳ０２の判別で、マウスカーソルの位置がウインドウ内に無いときは（Ｓ０２がＮ）、続いて、そのマウスカーソルの位置がディスクトップ内の空白領域２６にあるか否かを判別し（ステップＳ１１）、空白領域２６なら（Ｓ１１がＹ）、ステップＳ０６の処理に移り、他方、空白領域２６では無いときは（Ｓ１１がＮ）、他のメニューを表示する処理を行って、処理を終了する。
【００４８】
このように、マウスカーソル１９がウインドウ１４のタイトルバー１５の領域内にあるか、あるいは、ディスクトップ内の空白領域２６にあるときに、マウスの右ボタンをクリックすると、図２に示したメニューファイルに係わるメニュー２０が画面上に表示される。メニュー２０には、ウインドウが開いているもの（ｏ）、待機状態であるもの（ｗ）、閉じて（クローズして）いるもの（ｃ）が一目で分かるように区別して表示され、更に起動可能な所定数のプログラムも表示される。なお、メニューにウインドウが開いているもの、待機状態であるもの、閉じているものを符号ｏ、ｗ、ｃで表示したが、符号ではなくメニューの色や濃淡で表示しても良い。
【００４９】
したがって、マウスカーソル１９をウインドウ１４のタイトルバー１５の領域内、または、ディスクトップ内の空白領域に移動させて（ウインドウが一つも表示されていない場合にはこの操作を行う）、マウスの右ボタンをクリックし、表示されたメニュー２０から所望のウインドウ又はプログラムを選択してクリックするという同一操作だけで、待機中またはクローズ中のウインドウをアクティブにすることも、新たにプログラムを起動することも、容易に可能となる。
【００５０】
そのように、待機中またはクローズ中のウインドウをアクティブにする、又は新たにプログラムを起動する場合の処理を、以下に、更に説明する。図４において、上記のマウスカーソル１９が、メニュー２０内を移動して、ウインドウ又はプログラムのメニューが選択され、クリックされたとき、この処理が開始される。先ず、クリックされたメニューがプログラムメニューか否かを判別する（ステップＳ１０１）。
【００５１】
そして、プログラムメニューで無いときは（Ｓ１０１がＮ）、続いて、ウインドウが開いて（オープンして）いるか（図２のメニューファイル１０のクリックされたウインドウに対応する状態欄のデータが「ｏ」になっているか）否かを判別する（ステップＳ１０２）。
【００５２】
そして、オープンしていれば、このウインドウの表示順序を最前面（一位）に変更し（ステップＳ１０３）、他のウインドウを二位以下に順に更新して（ステップＳ１０４）、その更新したこのウインドウのウインドウ管理情報に基づいてウインドウを表示する（ステップＳ１０５）。
【００５３】
このように、ユーザは、開いているウインドウ、自動的に待機状態若しくは閉じられたウインドウを簡単な操作でメニュー２０として表示させることができる。そして、アクティブにしたいウインドウをメニュー２０から任意に選択することが出来る。メニュー２０から選択されたウインドウは、画面上に、元のサイズで元の位置に、アクティブウインドウとして最前面に表示される。
【００５４】
続いて、ウインドウプロシジャは、このウインドウに対応するメニュー管理情報を設定する。すなわち、状態欄に「ｏ」を設定し、ｗｔ欄に「０」を設定し、ｃｔ欄に「０」を設定してそれぞれの経過時間を初期設定して（ステップＳ１０６）、処理を終了する。
【００５５】
また、上記ステップＳ１０２の判別で、ウインドウが閉じて（クローズして）いる場合は（Ｓ１０２がＮ）、続いて、ウインドウが待機状態（ウエイト「ｗ」）か否かを判別し（ステップＳ１０７）、待機状態であれば（Ｓ１０７がＹ）、直ちに上記のステップＳ１０５の処理に移行する。
【００５６】
他方、このウインドウが待機状態でないときは（Ｓ１０７がＮ）、このウインドウに対応するメニュ管理情報からウインドウ管理情報へ戻し（図１参照）、ウインドウ管理情報を生成してから（ステップＳ１０８）、上記のステップＳ１０５の処理に移行する。
【００５７】
また、ステップＳ１０１の判別で、プログラムメニューであるときは、そのリンク先のプログラム（図２参照）を起動した後（ステップＳ１０９）、このウインドウに対応するウインドウ管理情報を生成し（ステップＳ１１０）、上記のステップＳ１０５の処理に移行する。
【００５８】
このように、ウインドウ又はプログラムが新たに選択されたことにより、その選択に対応して、図２に示したメニューファイル１０の内容（表示順序及びウインドウの設定状態）が書き換えられ、その書き換えられた内容で、メニュー２０が表示される。そして、図２で概略説明したように、経過時間が監視され、その経過時間に基づいて、更にメニューファイル１０の内容が書き換えられる。
【００５９】
図６は、そのようなメニュー管理情報とウインドウ情報を更新する処理のフローチャートである。尚、この処理は、一定時間ごとに行われる。先ず、オープンしているウインドウの数はｎ個以上か否かを判別する（ステップＳ２０１）。この「ｎ」は、図２に示したメニューファイル１０の設定データ領域１３の「ｎ」欄に設定されている数値である。
【００６０】
上記の判別で「オープンしているウインドウの数」＜ｎであれば（Ｓ２０１がＮ）、その場合は直ちに処理を終了するが、「オープンしているウインドウの数」≧ｎであれば（Ｓ２０１がＹ）、その場合は、オープンしているウインドウの待機までの期間データ（オープン中の経過時間データ）を更新する（ステップＳ２０２）。
【００６１】
続いて、その更新した経過時間データが「ｗｔ」を超えたか否かを判別する（ステップＳ２０３）。この「ｗｔ」は、図２に示したメニューファイル１０の設定データ領域１３の「ｗｔ ｓｅｔ」欄に設定されている時間データである。
【００６２】
そして、上記ステップＳ２０３の判別で、更新した経過時間データが「ｗｔ」を超えていれば（Ｓ２０３がＹ）、このウインドウに対応するメニュー管理情報を更新する。すなわち、状態を待機状態へ設定し、つまりメニューファイル１０のウインドウメニュー領域１１の対応するウインドウの「状態」欄のデータを「ｏ」から「ｗ」に更新し、ｗｔを最大値へ設定し、つまり、同じく「ｗｔ」欄のデータを、設定データ領域１３の「ｗｔ ｓｅｔ」欄に設定されている値「２」を用いて「２．０」に更新し、ｃｔを初期値へ設定する。つまり、同じく「ｃｔ」欄のデータを、ゼロから計時可能なように「０」に初期化する。
【００６３】
続いて、このウインドウの表示を画面上から消去し、画面のタスクバー上に最小化して、ウインドウを待機状態とする（ステップＳ２０５）。そして、このウインドウに対応するウインドウ管理情報を更新する。すなわち、元のサイズ、表示位置等を、ウインドウメニュー領域１１の対応するウインドウの「ウインドウ管理情報」欄に記憶する（ステップＳ２０６）。
【００６４】
そして、待機中のウインドウが有るか否かを判別する（ステップＳ２０７）。尚、上記ステップＳ２０３の判別で、更新した経過時間データが「ｗｔ」を超えていないときは（Ｓ２０３がＮ）、直ちに、このステップＳ２０７の判別処理に移行する。
【００６５】
このステップＳ２０７の判別で、待機中のウインドウが有るときは（Ｓ２０７がＹ）、先ず、待機しているウインドウのクローズまでの期間データ（待機中の経過時間データ）を更新し（ステップＳ２０８）、続いて、その更新した経過時間データが「ｃｔ」を超えたか否かを判別する（ステップＳ２０９）この判別で、更新した経過時間データが「ｃｔ」を超えていれば（Ｓ２０９がＹ）、更に、このウインドウのデータに未更新データがあるか否かを判別する（ステップＳ２１０）。この処理は、このウインドウで入力処理中のデータがあって、そのデータがまだデータファイルに退避されていないか否かを判別する処理である。
【００６６】
そして、未更新データが無いときは（Ｓ２１０が無し）、このウインドウを閉じても支障は無いので、続いて、このウインドウに対応するウインドウ管理情報をメニュー管理情報へ保存し（ステップＳ２１１）、更に、このウインドウに対応するメニュー管理情報を更新する。
【００６７】
すなわち、状態をクローズへ設定し、つまりメニューファイル１０のウインドウメニュー領域１１の対応するウインドウの「状態」欄のデータを「ｗ」から「ｃ」に変更し、ｗｔ及びｃｔを最大値へ設定し、つまり、同じく「ｗｔ」欄のデータを、設定データ領域１３の「ｗｔ ｓｅｔ」欄に設定されている値「２」を用いて「２．０」に更新し、同じく「ｃｔ」欄のデータを、設定データ領域１３の「ｃｔ ｓｅｔ」欄に設定されている値「３」を用いて「３．０」に更新する。そして、このウインドウに対応するウインドウ管理情報を削除する（ステップＳ２１３）。
【００６８】
この後、オープンされているウインドウが有るか否かを判別し（ステップＳ２１４）、無ければ（Ｓ２１４がＮ）、この処理を終了するが、オープンされているウインドウが有れば（Ｓ２１４がＹ）、その場合はステップＳ２０１の処理に戻って、ステップＳ２０１以下を繰り返す。
【００６９】
また、上記ステップＳ２１０の判別で、未更新データがあれば（Ｓ２１０が有り）、たとえ経過時間データが「ｃｔ」を超えていても、このウインドウを閉じる訳にはいかないと判断して、上述したステップＳ２１１〜Ｓ２１３の処理を行うことなく、直ちにステップＳ２１４の判別処理に移行する。
【００７０】
このように、データの更新などが必要なウインドウは、使用しない状態が継続した場合に自動的に待機状態にはするが、その経過時間が長期化しても自動的に閉じることとは行わない。
【００７１】
また、上記ステップＳ２０９の判別で、更新した経過時間データが「ｃｔ」を超えていないときも （Ｓ２０９がＮ）、直ちにステップＳ２１４に移行する。尚、ウインドウが待機状態になるまでの時間（「ｗｔ ｓｅｔ」欄に設定される時間データ）やウインドウを閉じるまでの時間（「ｃｔ ｓｅｔ」欄に設定される時間データ）はユーザが任意にパラメータ（時間データ）を設定することにより更新可能にすることが好ましい。
【００７２】
このような、ユーザによる設定は、図５(a) に示すように、メニュー２０の下端に「ｐｒｏｐｅｒｔｙ」メニューを表示するようにし、この「ｐｒｏｐｅｒｔｙ」をクリックすることにより、例えば図５(b) に示すようなデータ入力用ウインドウ２１を表示させて、ユーザが所望のパラメータを入力出来るようにするとよい。同図(b) に示す例では、「ｗｔ ｓｅｔ＝ 」、「ｃｔ ｓｅｔ＝ 」及び「ｎ＝ 」の入力行が表示されており、それぞれ「＝」の右側に、「ｗｔ ｓｅｔ」欄に設定するデータ、「ｃｔ ｓｅｔ」欄に設定するデータ、及び「ｎ」欄に設定するデータを入力できるようになっている。同様に、図５(a) に示すメニュー２０の下端の「ｐｒｏｐｅｒｔｙ」メニューをクリックして、同図(b) に示す「Ｐｒｏｇ設定」を選択することにより、プログラムメニュー領域１２に、任意のプログラムの名称とそのリンク先を対応付けて格納し、このようにして格納されたプログラムの名称がメニュー２０に表示されるのである。
【００７３】
また、この場合、上述したように自動的にウインドウを待機状態若しくは閉じ状態にするのは、ウインドウの数が多すぎる場合に有効であるので、ウインドウの数が少ないときは、図６のステップＳ２０１の判別「Ｎ」の場合に示すように、ウインドウを待機状態若しくは閉じ状態にする処理を行わせないようにするとよい。
【００７４】
一般的には、ウインドウの数は５〜７個程度でよく、これ以上になるとユーザの操作性が低下するので、自動的なウインドウ制御を実行するようにする。尚、自動的にウインドウを待機状態若しくは閉じる状態にするウインドウの数はユーザが任意に設定可能とすることが好ましい。
【００７５】
尚、メニュー表示には、ウインドウのタイトルやフォルダのパスを含めるようにしてもよい。また、メニュー表示は、コンピュータの電源オフ又は起動時にリセットするか、あるいはユーザの指示、例えばメニューのプロパティで削除を指定して、リセットするようにしてもよい。
【００７６】
また、メニュー表示によく使用するソフト、例えばクイック起動ソフトを起動するためのメニューを追加してもよい。但しこの場合は、このメニューがリセットされないように設定する。
【００７７】また、メニュー表示の内容は、ユーザが任意に設定できるようにすることが好ましい。
【００７８】
【発明の効果】
本発明によれば、オープン状態のウインドウを視認しながらこのウインドウのタイトルバー領域に対する操作によりウインドウを再表示するためのメニューが表示されるので、操作性が向上するとともに、表示されたメニューの視認性も高まり、ユーザーインターフェースが向上する。そして、このメニューに、待機状態へ移行させたウインドウのメニューや新たにウインドウをオープンする起動メニューを含ませた場合は、これらのメニューも含めてその操作性が向上する。
【００７９】
また、オープンされているウインドウの表示順序に従って各ウインドウに対応する前記メニューを並べて表示し、ウインドウの表示順序が変更された際には、この表示順序で並び替えて表示することにより、ウインドウの表示順序とメニューの並び順を対応付けることができる。
【図面の簡単な説明】
【図１】一実施の形態におけるコンピュータシステムの構成を示すブロック図である。
【図２】ウィンドウ管理情報及びメニュー管理情報が係わるメニューファイルのデータ
構成を示す図である。
【図３】ウィンドウプロシジャを起動した画面上においてメニュー表示の処理動作を説
明するフローチャートである。
【図４】表示されたメニューを選択した際の処理動作を説明するフローチャートである
。
【図５】(a) は図３のフローチャートの処理における画面表示の例を示す図、(b) は図
４のフローチャートの処理における画面表示の例を示す図である。
【図６】ウィンドウプロシジャによるウィンドウ管理情報及びメニュー管理情報の更新
処理のフローチャートである。
【符号の説明】
１    ＣＰＵ
２    バス
３    外部記憶装置
４    送受信装置
５    入力部
６    表示制御装置
７    ＲＡＭ
８    表示メモリ
９    表示部
１０  メニューファイル
１１  ウィンドウメニュー領域
１２  プログラムメニュー領域
１３  設定データ領域
１４  ウィンドウ
１５  タイトルバー
１６  タイトル表示位置
１７  最小化ボタン
１８  閉じ（クローズ）ボタン
１９  マウスカーソル
２０  メニュー
２１  データ入力用ウィンドウ