(57)【要約】【課題】新たにウィンドウを表示する際に、他のウィンドウに重ならないように既に表示されているウィンドウを縮小しつつ、縮小するウィンドウを少なくする。【解決手段】ＣＰＵ１０２は複数のウィンドウが表示部１０７に表示されている状態において、新たにプログラムの実行が指示されると、実行を指示されたプログラムのウィンドウを、既に表示されているウィンドウに重ねることなく表示できるか判断する。ＣＰＵ１０２は、新たに表示するウィンドウが表示済みのウィンドウに重なる場合には、既に表示されているウィンドウのうち、最もサイズの大きなウィンドウを最小化して表示するとともに、実行を指示されたプログラムのウィンドウを表示部１０７に表示させる。【選択図】図２
2009031862.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションプログラムを記憶したプログラム記憶手段と、
ユーザにより操作される操作手段と、
前記アプリケーションプログラムに対応して表示手段に表示されたウィンドウのサイズを記憶するサイズ記憶手段と、
前記プログラム記憶手段に記憶されたアプリケーションプログラムをユーザが前記操作手段にした操作に応じて実行する実行手段と、
前記実行手段により実行されたアプリケーションプログラムに対応したウィンドウを表示手段に表示させる表示制御手段であって、前記実行手段がアプリケーションプログラムの実行を始める際に前記表示手段に複数のウィンドウが表示されている場合、前記表示手段に既に表示されている複数のウィンドウと、前記実行手段により実行されるアプリケーションプログラムに対応したウィンドウとを重複させることなく前記表示手段の表示領域内に表示できない場合には、前記表示手段に既に表示されている各ウィンドウのサイズを前記サイズ記憶手段から読み出し、読み出したサイズが最大であるウィンドウのサイズを最小化して前記表示手段に表示させる表示制御手段と
を有する情報処理装置。
【請求項２】
前記表示制御手段は、サイズが最大であるウィンドウのサイズを最小化しても複数のウィンドウを重複させることなく前記表示手段の表示領域内に表示できない場合には、読み出したサイズが大であるウィンドウから順次ウィンドウのサイズを最小化し、一のウィンドウのサイズを最小化する毎に、最小化したウィンドウと、最小化されていないウィンドウと、前記実行手段により実行されるアプリケーションプログラムのウィンドウとを重複させることなく前記表示手段の表示領域内に表示可能であるか判断し、表示可能であると判断した場合には、最小化されたウィンドウと、最小化されていないウィンドウと、前記実行手段により実行されるアプリケーションプログラムのウィンドウとを前記表示手段に表示させること
を特徴とする請求項１に記載の情報処理装置。
【請求項３】
アプリケーションプログラムを記憶した記憶手段と、
ユーザにより操作される操作手段と、
表示手段に表示されたウィンドウのサイズをユーザが前記操作手段にした操作に応じて変更するサイズ変更手段と、
前記サイズ変更手段によりサイズを変更されたウィンドウのサイズを記憶するサイズ記憶手段と、
前記記憶手段に記憶されたアプリケーションプログラムをユーザが前記操作手段にした操作に応じて実行する実行手段と、
前記実行手段により実行されたアプリケーションプログラムに対応したウィンドウを表示手段に表示させる表示制御手段であって、前記サイズ変更手段がウィンドウのサイズを変更する際に前記表示手段に複数のウィンドウが表示されている場合、表示されているウィンドウにおいて前記サイズ変更手段によりサイズ変更されないウィンドウと、前記サイズ変更手段によりサイズ変更されるウィンドウとを重複させることなく前記表示手段の表示領域内に表示できない場合には、前記表示手段に表示されているウィンドウにおいて前記サイズ変更手段によりサイズ変更されない各ウィンドウのサイズを前記サイズ記憶手段から読み出し、読み出したサイズが最大であるウィンドウのサイズを最小化して前記表示手段に表示させる表示制御手段と
を有する情報処理装置。
【請求項４】
前記表示制御手段は、サイズが最大であるウィンドウのサイズを最小化しても複数のウィンドウを重複させることなく前記表示手段の表示領域内に表示できない場合には、読み出したサイズが大であるウィンドウから順次ウィンドウのサイズを最小化し、一のウィンドウのサイズを最小化する毎に、最小化したウィンドウと、最小化されていないウィンドウと、前記サイズ変更手段によりサイズ変更されたウィンドウとを重複させることなく前記表示手段の表示領域内に表示可能であるか判断し、表示可能であると判断した場合には、最小化したウィンドウと、最小化されていないウィンドウと、前記サイズ変更手段によりサイズ変更されたウィンドウとを前記表示手段に表示させること
を特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記表示制御手段は、前記表示手段に表示させる複数のウィンドウが重複しないように各ウィンドウを前記表示手段に表示させることを特徴とする請求項１または請求項３に記載の情報処理装置。
【請求項６】
コンピュータを、
ユーザにより操作される操作手段と、
プログラム記憶手段に記憶されたアプリケーションプログラムをユーザが前記操作手段にした操作に応じて実行する実行手段と、
前記アプリケーションプログラムに対応して表示手段に表示されたウィンドウのサイズを記憶するサイズ記憶手段と、
前記実行手段により実行されたアプリケーションプログラムに対応したウィンドウを表示手段に表示させる表示制御手段であって、前記実行手段がアプリケーションプログラムの実行を始める際に前記表示手段に複数のウィンドウが表示されている場合、前記表示手段に既に表示されている複数のウィンドウと、前記実行手段により実行されるアプリケーションプログラムに対応したウィンドウとを重複させることなく前記表示手段の表示領域内に表示できない場合には、前記表示手段に既に表示されている各ウィンドウのサイズを前記サイズ記憶手段から読み出し、読み出したサイズが最大であるウィンドウのサイズを最小化して前記表示手段に表示させる表示制御手段
として機能させるプログラム。
【請求項７】
コンピュータを、
ユーザにより操作される操作手段と、
プログラム記憶手段に記憶されたアプリケーションプログラムをユーザが前記操作手段にした操作に応じて実行する実行手段と、
表示手段に表示されたウィンドウのサイズをユーザが前記操作手段にした操作に応じて変更するサイズ変更手段と、
前記サイズ変更手段によりサイズを変更されたウィンドウのサイズを記憶するサイズ記憶手段と、
前記実行手段により実行されたアプリケーションプログラムに対応したウィンドウを表示手段に表示させる表示制御手段であって、前記サイズ変更手段がウィンドウのサイズを変更する際に前記表示手段に複数のウィンドウが表示されている場合、表示されているウィンドウにおいて前記サイズ変更手段によりサイズ変更されないウィンドウと、前記サイズ変更手段によりサイズ変更されるウィンドウとを重複させることなく前記表示手段の表示領域内に表示できない場合には、前記表示手段に表示されているウィンドウにおいて前記サイズ変更手段によりサイズ変更されない各ウィンドウのサイズを前記サイズ記憶手段から読み出し、読み出したサイズが最大であるウィンドウのサイズを最小化して前記表示手段に表示させる表示制御手段
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータ装置のグラフィカルユーザインターフェースに関する。
【背景技術】
【０００２】
オペレーティングシステム上でアプリケーションプログラムを実行するコンピュータ装置の中には、複数のアプリケーションプログラムを並行して実行し、ユーザインターフェースとなるウィンドウをアプリケーション毎に表示するものがあるが、多数のプログラムを実行し、ウィンドウの数が多くなると表示画面が繁雑になってしまう。この場合、ユーザは使用の優先順位の低いアプリケーションのウィンドウをアイコン化して表示画面を整理する。
【０００３】
しかしながら、ユーザがアイコン化するウィンドウを選び、アイコン化する操作を行うことは、ユーザにとって面倒な作業であることから、このような面倒さを解消する装置として、例えば、特許文献１に開示されている情報表示装置が考案されている。
特許文献１に開示されている情報表示装置は、複数のアイコンが表示されている状態において、さらにアイコンを表示させる場合、既に表示されているアイコンの面積を縮小して画面に表示する。この技術を利用すれば、新たにウィンドウを表示させる際には、他のウィンドウが縮小されるのでウィンドウを重ねることなく表示させることができる。
【０００４】
【特許文献１】特開２００５−４３９６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
特許文献１に開示されている技術を利用すれば、ウィンドウが自動で縮小されて各ウィンドウが重ならずに表示される。しかしながら、新たにウィンドウを開くたびに次々にウィンドウが縮小されてしまうと、一つのウィンドウにおいて情報を表示できる面積が小さくなり、ユーザにとって不便となる。
【０００６】
本発明は、上述した背景の下になされたものであり、その目的は、新たにウィンドウを表示する際に、他のウィンドウに重ならないように既に表示されているウィンドウを縮小しつつ、縮小するウィンドウを少なくすることにある。
【課題を解決するための手段】
【０００７】
上述した課題を解決するために本発明は、アプリケーションプログラムを記憶したプログラム記憶手段と、ユーザにより操作される操作手段と、前記アプリケーションプログラムに対応して表示手段に表示されたウィンドウのサイズを記憶するサイズ記憶手段と、前記プログラム記憶手段に記憶されたアプリケーションプログラムをユーザが前記操作手段にした操作に応じて実行する実行手段と、前記実行手段により実行されたアプリケーションプログラムに対応したウィンドウを表示手段に表示させる表示制御手段であって、前記実行手段がアプリケーションプログラムの実行を始める際に前記表示手段に複数のウィンドウが表示されている場合、前記表示手段に既に表示されている複数のウィンドウと、前記実行手段により実行されるアプリケーションプログラムに対応したウィンドウとを重複させることなく前記表示手段の表示領域内に表示できない場合には、前記表示手段に既に表示されている各ウィンドウのサイズを前記サイズ記憶手段から読み出し、読み出したサイズが最大であるウィンドウのサイズを最小化して前記表示手段に表示させる表示制御手段とを有する情報処理装置を提供する。
【０００８】
この構成においては、前記表示制御手段は、サイズが最大であるウィンドウのサイズを最小化しても複数のウィンドウを重複させることなく前記表示手段の表示領域内に表示できない場合には、読み出したサイズが大であるウィンドウから順次ウィンドウのサイズを最小化し、一のウィンドウのサイズを最小化する毎に、最小化したウィンドウと、最小化されていないウィンドウと、前記実行手段により実行されるアプリケーションプログラムのウィンドウとを重複させることなく前記表示手段の表示領域内に表示可能であるか判断し、表示可能であると判断した場合には、最小化されたウィンドウと、最小化されていないウィンドウと、前記実行手段により実行されるアプリケーションプログラムのウィンドウとを前記表示手段に表示させてもよい。
【０００９】
また、本発明は、アプリケーションプログラムを記憶した記憶手段と、ユーザにより操作される操作手段と、表示手段に表示されたウィンドウのサイズをユーザが前記操作手段にした操作に応じて変更するサイズ変更手段と、前記サイズ変更手段によりサイズを変更されたウィンドウのサイズを記憶するサイズ記憶手段と、前記記憶手段に記憶されたアプリケーションプログラムをユーザが前記操作手段にした操作に応じて実行する実行手段と、前記実行手段により実行されたアプリケーションプログラムに対応したウィンドウを表示手段に表示させる表示制御手段であって、前記サイズ変更手段がウィンドウのサイズを変更する際に前記表示手段に複数のウィンドウが表示されている場合、表示されているウィンドウにおいて前記サイズ変更手段によりサイズ変更されないウィンドウと、前記サイズ変更手段によりサイズ変更されるウィンドウとを重複させることなく前記表示手段の表示領域内に表示できない場合には、前記表示手段に表示されているウィンドウにおいて前記サイズ変更手段によりサイズ変更されない各ウィンドウのサイズを前記サイズ記憶手段から読み出し、読み出したサイズが最大であるウィンドウのサイズを最小化して前記表示手段に表示させる表示制御手段とを有する情報処理装置を提供する。
【００１０】
この構成においては、前記表示制御手段は、サイズが最大であるウィンドウのサイズを最小化しても複数のウィンドウを重複させることなく前記表示手段の表示領域内に表示できない場合には、読み出したサイズが大であるウィンドウから順次ウィンドウのサイズを最小化し、一のウィンドウのサイズを最小化する毎に、最小化したウィンドウと、最小化されていないウィンドウと、前記サイズ変更手段によりサイズ変更されたウィンドウとを重複させることなく前記表示手段の表示領域内に表示可能であるか判断し、表示可能であると判断した場合には、最小化したウィンドウと、最小化されていないウィンドウと、前記サイズ変更手段によりサイズ変更されたウィンドウとを前記表示手段に表示させてもよい。
【００１１】
また、上記構成においては、前記表示制御手段は、前記表示手段に表示させる複数のウィンドウが重複しないように各ウィンドウを前記表示手段に表示させてもよい。
【００１２】
また、本発明は、コンピュータを、ユーザにより操作される操作手段と、プログラム記憶手段に記憶されたアプリケーションプログラムをユーザが前記操作手段にした操作に応じて実行する実行手段と、前記アプリケーションプログラムに対応して表示手段に表示されたウィンドウのサイズを記憶するサイズ記憶手段と、前記実行手段により実行されたアプリケーションプログラムに対応したウィンドウを表示手段に表示させる表示制御手段であって、前記実行手段がアプリケーションプログラムの実行を始める際に前記表示手段に複数のウィンドウが表示されている場合、前記表示手段に既に表示されている複数のウィンドウと、前記実行手段により実行されるアプリケーションプログラムに対応したウィンドウとを重複させることなく前記表示手段の表示領域内に表示できない場合には、前記表示手段に既に表示されている各ウィンドウのサイズを前記サイズ記憶手段から読み出し、読み出したサイズが最大であるウィンドウのサイズを最小化して前記表示手段に表示させる表示制御手段として機能させるプログラムを提供する。
【００１３】
また、本発明は、コンピュータを、ユーザにより操作される操作手段と、プログラム記憶手段に記憶されたアプリケーションプログラムをユーザが前記操作手段にした操作に応じて実行する実行手段と、表示手段に表示されたウィンドウのサイズをユーザが前記操作手段にした操作に応じて変更するサイズ変更手段と、前記サイズ変更手段によりサイズを変更されたウィンドウのサイズを記憶するサイズ記憶手段と、前記実行手段により実行されたアプリケーションプログラムに対応したウィンドウを表示手段に表示させる表示制御手段であって、前記サイズ変更手段がウィンドウのサイズを変更する際に前記表示手段に複数のウィンドウが表示されている場合、表示されているウィンドウにおいて前記サイズ変更手段によりサイズ変更されないウィンドウと、前記サイズ変更手段によりサイズ変更されるウィンドウとを重複させることなく前記表示手段の表示領域内に表示できない場合には、前記表示手段に表示されているウィンドウにおいて前記サイズ変更手段によりサイズ変更されない各ウィンドウのサイズを前記サイズ記憶手段から読み出し、読み出したサイズが最大であるウィンドウのサイズを最小化して前記表示手段に表示させる表示制御手段として機能させるプログラムを提供する。
【発明の効果】
【００１４】
本発明によれば、新たにウィンドウを表示する際に、他のウィンドウに重ならないように既に表示されているウィンドウを縮小しつつ、縮小するウィンドウを少なくすることができる。
【発明を実施するための最良の形態】
【００１５】
［実施形態の構成］
図１は、本発明の実施形態に係る情報処理装置の一例である折畳み型の携帯電話機１の外観図である。図１に示したように、この携帯電話機１は、第１筐体２Ａと第２筐体２Ｂとを有する。第１筐体２Ａと第２筐体２Ｂは、各々の縁端部近傍においてヒンジ３を介して連結されている。この携帯電話機１の利用者は、図１に示すように両筐体を開いた状態で当該携帯電話機１を使用して音声通話やデータ通信を行なう。
【００１６】
第２筐体２Ｂには、利用者により操作される複数の操作キー群４や、ユーザの音声を入力するためのマイクロホン５が配設されている。また、第２筐体２Ｂの内部には、当該携帯電話機１の動作を制御するＣＰＵ（Central Processing Unit）やＣＰＵの作業エリアとして使用されるＲＡＭ（Random Access Memory）、ＣＰＵにより実行される各種プログラムを記憶する不揮発性メモリといった各種の電子部品（図示略）が収容されている。一方、第１筐体２Ａには、音声通話時の音声を出力するスピーカ６、無線基地局との間で無線通信を行なうためのアンテナ７、文字や画像を表示するディスプレイ装置８などが配設されている。
【００１７】
図２は、携帯電話機１のハードウェア構成を示したブロック図である。図２に示したように、携帯電話機１の各部はバス１０１により接続されている。通信部１０８はアンテナ７を備えており、携帯電話機１が行う通信を中継する無線基地局と音声通信やデータ通信を行う。操作部１０６は、数字や文字の入力を行うためのテンキー、発呼，クリア，終話を指示する各種キーや、メニュー操作を行うためのキー、電源のオン／オフを行うための電源キー等を備えた操作キー群４を有している。携帯電話機１のユーザは、この操作部１０６に設けられたキーを操作して携帯電話機１へ各種指示を入力する。表示部１０７は、ディスプレイ装置８を備えており、文字や画像、携帯電話機１を操作するためのメニュー画面等を表示する。
【００１８】
ＲＯＭ（Read Only Memory）１０３にはＩＰＬ（Initial Program Loader）、オペレーティングシステム（以下、ＯＳと称する）の機能を実現させるＯＳプログラム、Ｊａｖａ（登録商標）の実行環境を実現するＪａｖａプラットフォームプログラムが記憶されている。記憶部１０５は、図示を省略した不揮発性メモリを有しており、音楽の再生機能を実現させるアプリケーションプログラム（プログラム名「music」）、ゲームの機能を実現させるアプリケーションプログラム（プログラム名「game_1」、「game_2」）などの各種プログラムを記憶している。なお、これらのアプリケーションプログラムは、Ｊａｖａプログラミング言語を用いて作成されたプログラム（バイトコード）を含むＪＡＲ（Java Archive）ファイルと、当該ＪＡＲファイルに関するデータを記述したＡＤＦ（Application Descriptor File）とからなる。
【００１９】
また、記憶部１０５は、ウィンドウテーブルＴＢ１を記憶している。図３は、ウィンドウテーブルＴＢ１のフォーマットを例示した図である。ウィンドウテーブルＴＢ１は、「プログラム名」フィールドと、「ウィンドウサイズ」フィールドを有しており、「プログラム名」フィールドには、ＣＰＵ１０２が実行したアプリケーションプログラムのプログラム名が格納される。また、「ウィンドウサイズ」フィールドの各セルには、同じレコードに格納されているプログラム名のプログラムに係るウィンドウのサイズ（ウィンドウの縦のサイズ×ウィンドウの横のサイズ）が格納される。
【００２０】
携帯電話機１においては、図示せぬ電源から電力が供給されるとＲＯＭ１０３に記憶されているＩＰＬがＣＰＵ１０２により実行される。ＣＰＵ１０２がＩＰＬを実行すると、ＲＯＭ１０３に記憶されているＯＳプログラムがＣＰＵ１０２により実行され、操作部１０６からの入力や表示部１０７への画面出力といった入出力機能、記憶部１０５へのアクセス、記憶部１０５に記憶されている各種プログラムの実行、音声通信機能やデータ通信機能など、携帯電話機としての基本的な機能が実現する。
【００２１】
また、ＯＳプログラムが実行されると、携帯電話機１においては、複数のプログラムを並行して実行するマルチタスク機能やＧＵＩ（Graphical User Interface）機能が実現する。携帯電話機１は、ユーザからの指示に応じてアプリケーションプログラムを実行すると、ユーザとアプリケーションプログラムとのインターフェースとなるウィンドウを、実行したプログラム毎に表示部１０７に表示する。そして、ユーザが操作部１０６を操作することにより、ユーザからの入力が引き渡されるウィンドウを切り替えることができ、ウィンドウにフォーカスがある状態においては、ユーザが操作部１０６を操作することにより、ウィンドウの表示位置や表示サイズを変更することができる。
【００２２】
また、ＣＰＵ１０２は、ＯＳプログラムを実行した後、Ｊａｖａプラットフォームプログラムを実行する。すると、図４に例示したＪａｖａ実行環境１１４がＯＳ上に実現し、記憶部１０５の不揮発性メモリには、第１ストレージ１１５と第２ストレージ１１６とが確保される。Ｊａｖａ実行環境１１４は、クラスライブラリ１１７、ＪＶＭ（Java Virtual Machine）１１８およびＪＡＭ（Java Application Manager）１１９からなる。クラスライブラリ１１７は、特定の機能を有するプログラムモジュール（クラス）群を１つのファイルに結合したものである。ＪＶＭ１１８は、Ｊａｖａアプリケーションプログラムとして提供されるバイトコードを解釈して実行する機能を有する。ＪＡＭ１１９は、Ｊａｖａアプリケーションプログラムのダウンロードやインストール、起動・終了などを管理する機能を有する。
【００２３】
第１ストレージ１１５は、ＪＡＭ１１９の管理の下にダウンロードされるＪａｖａアプリケーションプログラム（ＪａｒファイルとＡＤＦ）を格納する領域である。第２ストレージ１１６は、Ｊａｖａアプリケーションプログラムの実行の際に生成されたデータをその終了後に格納しておくための領域であり、インストールされたＪａｖａアプリケーションプログラム毎に個別の格納領域が割り当てられるようになっている。そして、あるＪａｖａアプリケーションプログラムに割り当てられた格納領域のデータは、そのＪａｖａアプリケーションプログラムが実行されている間のみ書き換え可能となっており、別のＪａｖａアプリケーションプログラムが書き換えを行い得ないようになっている。
【００２４】
このＪａｖａ実行環境１１４が実現している状態において、ユーザが操作部１０６を操作してＪａｖａアプリケーションプログラムの実行を指示すると、第１ストレージに格納されているＪａｖａアプリケーションプログラムがＪＶＭ１１８により解釈されて実行され、プログラムに対応したウィンドウが表示部１０７に表示される。
【００２５】
［実施形態の動作］
（複数のアプリケーションプログラムを実行した時の動作）
次に、本実施形態において、アプリケーションプログラムを複数実行した時の動作について説明する。まず、ユーザが操作部１０６のキーを操作してプログラム名「game_1」のアプリケーションプログラムの実行を携帯電話機１に対して指示すると、ＣＰＵ１０２は、実行を指示されたプログラムを記憶部１０５から読み出して実行する。ここで、ＣＰＵ１０２は、アプリケーションプログラムに係るウィンドウを表示する際に図５に示した処理を行う。具体的には、まず、ＣＰＵ１０２は、表示部１０７に他のプログラムのウィンドウが表示されているか否かを判断する（ステップＳＡ１）。ここで、ウィンドウが一つも表示されていない場合（ステップＳＡ１；ＮＯ）、ＣＰＵ１０２は、所定のサイズでウィンドウを表示部１０７に表示させる（ステップＳＡ５）。
【００２６】
次に、ユーザが操作部１０６のキーを操作してプログラム名「game_2」のアプリケーションプログラムの実行を携帯電話機１に対して指示すると、ＣＰＵ１０２は、実行を指示されたプログラムを記憶部１０５から読み出して実行する。ここで、ＣＰＵ１０２は、アプリケーションプログラムに係るウィンドウを表示する際、表示部１０７に他のプログラムのウィンドウが表示されているか否かを判断する（ステップＳＡ１）。ここでは、プログラム名が「game_1」のアプリケーションプログラムに係るウィンドウが既に表示されているため、ステップＳＡ１でＹＥＳと判断される。
【００２７】
次にＣＰＵ１０２は、既に表示されているウィンドウと、実行を指示されたプログラムのウィンドウとを重ねずに表示部１０７に表示させられるか否かを判断する（ステップＳＡ２）。具体的には、ＣＰＵ１０２は、表示部１０７の表示領域のサイズと同じサイズの仮想表示領域を生成し、この仮想表示領域に各プログラムのウィンドウを配置していく。まず、ＣＰＵ１０２は、図６に示したようにプログラム名「game_1」のプログラムのウィンドウＷ１を仮想表示領域に配置する。次にＣＰＵ１０２は、実行を指示されたプログラム名「game_2」のプログラムのウィンドウＷ２の配置する。
【００２８】
ここで、図６に示したように、仮想表示領域において、各プログラムのウィンドウが重ならないようにウィンドウを配置できる場合（ステップＳＡ２；ＹＥＳ）、ＣＰＵ１０２は、仮想表示領域の配置と同様にして、プログラム名「game_1」のプログラムのウィンドウと、プログラム名「game_2」のプログラムのウィンドウを表示部１０７に表示させる（ステップＳＡ５）。
【００２９】
次に、ユーザが操作部１０６のキーを操作してプログラム名「music」のアプリケーションプログラムの実行を携帯電話機１に対して指示すると、ＣＰＵ１０２は、実行を指示されたプログラムを記憶部１０５から読み出して実行する。ここで、ＣＰＵ１０２は、アプリケーションプログラムに係るウィンドウを表示する際、表示部１０７に他のプログラムのウィンドウが表示されているか否かを判断する（ステップＳＡ１）。ここでは、プログラム名が「game_1」のアプリケーションプログラムに係るウィンドウＷ１と、プログラム名が「game_2」のアプリケーションプログラムに係るウィンドウＷ２とが既に表示されているため、ステップＳＡ１でＹＥＳと判断される。
【００３０】
次にＣＰＵ１０２は、既に表示されているウィンドウと、実行を指示されたプログラムのウィンドウとを重ねずに表示部１０７に表示させられるか否かを判断する（ステップＳＡ２）。具体的には、ＣＰＵ１０２は、仮想表示領域に各プログラムのウィンドウを配置していく。まず、ＣＰＵ１０２は、図７に示したようにプログラム名「game_1」のプログラムのウィンドウＷ１を仮想表示領域に配置し、プログラム名「game_2」のプログラムのウィンドウＷ２を仮想表示領域に配置する。次にＣＰＵ１０２は、実行を指示されたプログラム名「music」のプログラムのウィンドウＷ３の配置する。ここで、図７に示したように、各プログラムのウィンドウが重ならないように配置できない場合には（ステップＳＡ２；ＮＯ）、ＣＰＵ１０２は最小化するウィンドウを選択する（ステップＳＡ３）。
【００３１】
具体的には、ＣＰＵ１０２は、先に表示しているウィンドウＷ１のサイズ（ａ×ｂ）と、ウィンドウＷ２のサイズ（ｃ×ｄ）をウィンドウテーブルＴＢ１から読み出す。そして、読み出したウィンドウのサイズを比較し、最もサイズの大きなウィンドウを特定する。ここでは、図７に示したように、ウィンドウＷ２の方がサイズが大きいので、ＣＰＵ１０２は、最小化するウィンドウとしてウィンドウＷ２を選択する。
【００３２】
ＣＰＵ１０２は、最小化するウィンドウを選択すると、このウィンドウを最小化し、最小化した時のウィンドウサイズ（ｃ１×ｄ１）をプログラム名「game_2」のレコードのウィンドウサイズのセルに格納する（ステップＳＡ４）。そして、ＣＰＵ１０２は、処理の流れをステップＳＡ２へ戻す。
【００３３】
するとＣＰＵ１０２は、各プログラムのウィンドウを重ねずに表示部１０７に表示させられるか否か再度判断する（ステップＳＡ２）。まず、ＣＰＵ１０２は、上述した処理で最小化されたウィンドウＷ２を図９に示したように仮想表示領域に配置し、次にプログラム名「game_1」のプログラムのウィンドウＷ１を仮想表示領域に配置する。そして、ＣＰＵ１０２は、実行を指示されたプログラム名「music」のプログラムのウィンドウＷ３を配置する。ここで、図９に示したように、仮想表示領域において、各プログラムのウィンドウが重ならないように配置できる場合には（ステップＳＡ２；ＹＥＳ）、ＣＰＵ１０２は、仮想表示領域の配置と同様にして、各プログラムのウィンドウを表示部１０７に表示させる（ステップＳＡ５）。
【００３４】
なお、再度ステップＳＡ２へ処理を戻した時にステップＳＡ２でＮＯと判断した場合、ＣＰＵ１０２は、最小化するウィンドウを選択するが、ここでは、この時点で最小化されていないウィンドウのサイズのみがウィンドウテーブルＴＢ１から読み出される。そして、最小化されていないウィンドウの中でサイズが最大のウィンドウが最小化されるウィンドウとして選択される。
【００３５】
このように本実施形態によれば、新たにウィンドウを表示する際にウィンドウが重ならないように配置できない場合には、サイズの大きいウィンドウがまず最小化されて表示領域が確保される。ここで、サイズの大きなウィンドウから最小化されるので、最小化されるウィンドウの数を少なくしてウィンドウの表示領域を確保することができる。
【００３６】
（複数ウィンドウ表示時にウィンドウのサイズ変更をした時の動作）
次に、複数のウィンドウが表示されている状態からウィンドウのサイズを変更した時の動作について説明する。なお、以下の説明においては、図１０に示したように表示部１０７にプログラム名「game_1」のプログラムのウィンドウＷ１１、プログラム名「game_2」のプログラムのウィンドウＷ２１、プログラム名「music」のプログラムのウィンドウＷ３１が表示されている状態から、ウィンドウのサイズを変更する時の動作について説明する。
【００３７】
まず、ユーザが操作部１０６のキーを操作し、プログラム名「music」のプログラムのウィンドウＷ３１のサイズ変更を携帯電話機１に対して指示すると、ＣＰＵ１０２は、ウィンドウＷ３１のサイズを変更する。そしてＣＰＵ１０２は、サイズを変更されたウィンドウのサイズをウィンドウテーブルＴＢ１に格納する（図８：ステップＳＢ１）。ここで、ＣＰＵ１０２は、プログラム名「music」のプログラムのウィンドウＷ３１のサイズが「ｅ×ｆ」から「ｅ１×ｆ１」に変更された場合、この変更後のウィンドウサイズ「ｅ１×ｆ１」をプログラム名「music」のレコードの「ウィンドウサイズ」のセルに格納する。
【００３８】
次にＣＰＵ１０２は、サイズ変更を指示されたウィンドウ以外のウィンドウが表示部１０７に表示されているか否かを判断する（ステップＳＢ２）。ここで、サイズ変更を指示されたウィンドウ以外にも、表示部１０７にはウィンドウが表示されているため、ＣＰＵ１０２はステップＳＢ２でＹＥＳと判断する。
【００３９】
次にＣＰＵ１０２は、サイズ変更後のウィンドウＷ３１と他のウィンドウとを重ねずに表示部１０７に表示させられるか否かを判断する（ステップＳＢ３）。具体的には、ＣＰＵ１０２は、表示部１０７の表示領域のサイズと同じサイズの仮想表示領域を生成し、この仮想表示領域に各ウィンドウを配置していく。まず、ＣＰＵ１０２は、サイズ変更がされなかったプログラム名「game_1」のプログラムのウィンドウＷ１１を、仮想表示領域に配置し、次に、サイズ変更がされなかったプログラム名「game_2」のプログラムのウィンドウＷ２１を仮想表示領域へ配置する。次にＣＰＵ１０２は、プログラム名「music」のプログラムのウィンドウＷ３１の仮想表示領域への配置を試みる。ここで、図１１に示したように、サイズ変更がされたプログラム名「music」のプログラムのウィンドウＷ３１を配置した場合に、各プログラムのウィンドウが重ならないように配置できない場合には（ステップＳＢ３；ＮＯ）、ＣＰＵ１０２は最小化するウィンドウを選択する（ステップＳＢ４）。
【００４０】
具体的には、ＣＰＵ１０２は、サイズ変更されていないウィンドウＷ１１のサイズ（ａ×ｂ）と、ウィンドウＷ２１のサイズ（ｃ×ｄ）をウィンドウテーブルＴＢ１から読み出す。そして、読み出したウィンドウのサイズを比較し、最もサイズの大きなウィンドウを特定する。ここでは、図１１に示したように、ウィンドウＷ２１の方がサイズが大きいので、ＣＰＵ１０２は、最小化するウィンドウとしてウィンドウＷ２１を選択する。
【００４１】
ＣＰＵ１０２は、最小化するウィンドウを選択すると、このウィンドウを最小化し、最小化した時のウィンドウサイズ（ｃ１×ｄ１）をプログラム名「game_2」のレコードのウィンドウサイズのセルに格納する（ステップＳＢ５）。そして、ＣＰＵ１０２は、処理の流れをステップＳＢ３へ戻す。
【００４２】
するとＣＰＵ１０２は、各プログラムのウィンドウを重ねずに表示部１０７に表示させられるか否か再度判断する（ステップＳＢ３）。まず、ＣＰＵ１０２は、上述した処理で最小化されたウィンドウＷ２１を図１２に示したように仮想表示領域に配置し、次にプログラム名「game_1」のプログラムのウィンドウＷ１１を仮想表示領域に配置する。そして、ＣＰＵ１０２は、サイズ変更されたウィンドウＷ３１を配置する。ここで、図１２に示したように、仮想表示領域において、各プログラムのウィンドウが重ならないように配置できる場合には（ステップＳＢ３；ＹＥＳ）、ＣＰＵ１０２は、仮想表示領域の配置と同様にして、各プログラムのウィンドウを表示部１０７に表示させる（ステップＳＢ６）。
【００４３】
なお、再度ステップＳＢ３へ処理を戻した時にステップＳＢ３でＮＯと判断した場合、ＣＰＵ１０２は、最小化するウィンドウを選択するが、ここでは、この時点で最小化されていないウィンドウのサイズのみがウィンドウテーブルＴＢ１から読み出される。そして、最小化されていないウィンドウの中でサイズが最大のウィンドウが最小化されるウィンドウとして選択される。
【００４４】
以上説明したように本実施形態によれば、複数のウィンドウが表示されている状態においてウィンドウのサイズが変更された時に、ウィンドウが重ならないように配置できない場合には、サイズの大きいウィンドウがまず最小化されるされるので、最小化されるウィンドウの数を少なくしてウィンドウの表示領域を確保することができる。
【００４５】
［変形例］
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限定されることなく、他の様々な形態で実施可能である。例えば、上述の実施形態を以下のように変形して本発明を実施してもよい。
【００４６】
上述した動作を行う情報処理装置は、パーソナルコンピュータ装置や、ＰＤＡ（Personal Digital Assistants）など、複数のプログラムを並行して実行し、プログラム毎にユーザとのインターフェースとなるウィンドウを表示するものであれば、携帯電話機に限定されず、他のコンピュータ装置であってもよい。
【００４７】
上述した実施形態においては、ウィンドウが最小化されているが、最も小さい所定のサイズに最小化するのではなく、ウィンドウをアイコン（プログラムの機能を表わす絵柄）化して表示するようにしてもよい。
【図面の簡単な説明】
【００４８】
【図１】本発明の一実施形態に係る携帯電話機の外観図である。
【図２】同携帯電話機のハードウェア構成を示したブロック図である。
【図３】同携帯電話機が記憶しているウィンドウテーブルＴＢ１のフォーマットを示した図である。
【図４】携帯電話機において実現するＪａｖａ実行環境の構成を示した図である。
【図５】ＣＰＵ１０２が行う処理の流れを示したフローチャートである。
【図６】仮想表示領域におけるウィンドウの配置を示した図である。
【図７】仮想表示領域におけるウィンドウの配置を示した図である。
【図８】ＣＰＵ１０２が行う処理の流れを示したフローチャートである。
【図９】仮想表示領域におけるウィンドウの配置を示した図である。
【図１０】ウィンドウの配置を示した図である。
【図１１】仮想表示領域におけるウィンドウの配置を示した図である。
【図１２】仮想表示領域におけるウィンドウの配置を示した図である。
【符号の説明】
【００４９】
１・・・携帯電話機、２Ａ・・・第１筐体、２Ｂ・・・第２筐体、３・・・ヒンジ、４・・・操作キー群、５・・・マイクロホン、６・・・スピーカ、７・・・アンテナ、８・・・ディスプレイ装置、１０１・・・バス、１０２・・・ＣＰＵ、１０３・・・ＲＯＭ、１０４・・・ＲＡＭ、１０５・・・記憶部、１０６・・・操作部、１０７・・・表示部、１０８・・・通信部
【図１】
2009031862.tif 000003
【図２】
2009031862.tif 000004
【図３】
2009031862.tif 000005
【図４】
2009031862.tif 000006
【図５】
2009031862.tif 000007
【図６】
2009031862.tif 000008
【図７】
2009031862.tif 000009
【図８】
2009031862.tif 000010
【図９】
2009031862.tif 000011
【図１０】
2009031862.tif 000012
【図１１】
2009031862.tif 000013
【図１２】
2009031862.tif 000014