(57)【要約】【課題】スケーリングにより限られた大きさの画面となった場合でも、該画面に複数含まれる表示しきれないボタンへの操作を容易にし、ディスプレイ領域の有効利用を可能とすること。【解決手段】制御部１０２が、ウィンドウのサイズが変更された際に、該変更されたサイズとボタンのサイズとに基づいて、前記変更されたウィンドウに配置可能なボタンの数を算出し、該算出された数のボタンを前記ウィンドウ内に配置されるボタンから選択して前記ウィンドウ上に配置し、ボタンの初期配置情報に基づいて、前記配置されなかった１又は複数のボタンにそれぞれ対応付けられた１又は複数のサブボタンを、前記配置されたボタンに付加し、前記サブボタンに指示がなされると、該サブボタンが付加されたボタンを、該サブボタンに対応付けられた他のボタンに変更配置するように制御する構成を特徴とする。【選択図】図１
2008134901.tif 000002
【特許請求の範囲】
【請求項１】
表示手段に表示されるウィンドウ内に配置される１又は複数のボタンを指示手段により指示することによりボタンに対応付けられた操作の入力が可能な情報処理装置であって、
前記ウィンドウに配置される各ボタンの配置情報を記憶する記憶手段から前記各ボタンの配置情報を取得する取得手段と、
前記ウィンドウのサイズが変更された際に、該変更されたウィンドウのサイズに基づいて、前記サイズ変更されたウィンドウに配置可能なボタンの数を算出する算出手段と、
前記算出手段により算出された数のボタンを前記ウィンドウ内に配置されるボタンから選択して前記ウィンドウ上に配置する配置手段と、
前記取得手段により取得されたボタンの配置情報に基づいて、前記配置手段により配置されなかった１又は複数のボタンにそれぞれ対応付けられた１又は複数のサブボタンを、前記配置手段により配置されたボタンに付加する第１の付加手段と、
前記指示手段により前記サブボタンに第１の指示がなされると、該サブボタンが付加されたボタンを、該サブボタンに対応付けられた他のボタンに変更配置する変更手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記取得手段は、前記ウィンドウに配置される各ボタンのサイズを記憶する記憶手段から前記各ボタンのサイズを取得するものであり、
前記算出手段は、前記ウィンドウのサイズが変更された際に、該変更されたウィンドウのサイズと前記取得手段により取得されたボタンのサイズとに基づいて、前記サイズ変更されたウィンドウに配置可能なボタンの数を算出することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記ウィンドウに配置される各ボタンのサイズ及び配置情報を記憶する記憶手段に記憶させるデータベース作成手段をもつことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記変更手段により変更配置されたボタン以外の１又は複数のボタンにそれぞれ対応付けられた１又は複数のサブボタンを、前記変更手段により変更配置されたボタンに付加する第２の付加手段を設けたことを特徴とする請求項１乃至３のいずれかに記載の情報処理装置。
【請求項５】
前記第１の付加手段，前記第２の付加手段は、ボタンにサブボタンを付加する際、該ボタンから見て該サブボタンに対応するボタンが存在する方向を示す位置に付加することを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記第１の付加手段，前記第２の付加手段は、１方向に対して、所定数までサブボタンを付加するものであり、前記所定数を超えたため付加しないサブボタンが存在する場合には、該付加しないサブボタンと同一方向に付加したサブボタンを異なる視覚形態に変更する、ことを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記第２の付加手段は、前記配置手段又は前記変更手段により配置されているボタンに対応するサブボタンを指示不可能な形態に変更する、ことを特徴とする請求項４乃至６のいずれかに記載の情報処理装置。
【請求項８】
前記記憶手段は、前記ウィンドウに配置される各ボタンの前記指示手段により積算指示回数をも記憶するものであり、
前記配置手段は、前記記憶手段に記憶される積算指示回数の多い順に前記算出手段により算出された数のボタンを選択して前記ウィンドウ上に配置する、ことを特徴とする請求項１乃至７のいずれかに記載の情報処理装置。
【請求項９】
前記指示手段により前記サブボタンに第２の指示がなされると、該サブボタンに対応するボタンを識別可能な情報を表示するサブボタン対応情報表示手段を設けたことを特徴とする請求項１乃至８のいずれかに記載の情報処理装置。
【請求項１０】
表示手段に表示されるウィンドウ内に配置される１又は複数のボタンを指示手段により指示することによりボタンに対応付けられた操作の入力が可能な情報処理装置の制御方法であって、
前記ウィンドウに配置される各ボタンの配置情報を記憶する記憶手段から前記各ボタンの配置情報を取得する取得ステップと、
前記ウィンドウのサイズが変更された際に、該変更されたウィンドウのサイズに基づいて、前記サイズ変更されたウィンドウに配置可能なボタンの数を算出する算出ステップと、
前記算出ステップにより算出された数のボタンを前記ウィンドウ内に配置されるボタンから選択して前記ウィンドウ上に配置する配置ステップと、
前記取得ステップにより取得されたボタンの配置情報に基づいて、前記配置ステップで配置されなかった１又は複数のボタンにそれぞれ対応付けられた１又は複数のサブボタンを、前記配置ステップで配置されたボタンに付加する第１の付加ステップと、
前記サブボタンが前記指示手段により指示された際に、該サブボタンが付加されたボタンを、該サブボタンに対応付けられた他のボタンに変更配置する変更ステップと、
前記変更ステップで変更配置されたボタン以外の１又は複数のボタンにそれぞれ対応付けられた１又は複数のサブボタンを、前記変更ステップで変更配置されたボタンに付加する第２の付加ステップと、
を有することを特徴とする情報処理装置の制御方法。
【請求項１１】
請求項１乃至９のいずれかに記載された情報処理装置としてコンピュータを機能させるための、又は、請求項１０に記載された情報処理装置の制御方法をコンピュータに実行させるためのプログラム。
【請求項１２】
請求項１乃至９のいずれかに記載された情報処理装置としてコンピュータを機能させるためのプログラム、又は、請求項１０に記載された情報処理装置の制御方法をコンピュータに実行させるためのプログラムをコンピュータが読み取り可能に記憶した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表示手段に表示されるウィンドウ内に配置される１又は複数のボタンを指示手段により指示することによりボタンに対応付けられた操作の入力が可能な情報処理装置および情報処理装置の制御方法およびプログラムおよび記録媒体に関する。
【背景技術】
【０００２】
現代、ＰＤＡ・携帯電話・ポータブルＰＣなどの情報処理装置が市場に存在するが、これらのコンピュータは小型のものが一般的で、表示ディスプレイも領域の限られたものがほとんどである。また、デスクトップ型の大きな表示領域のディスプレイの場合でも、マルチウィンドウの操作により表示領域が限られてしまう場合がある。
【０００３】
このように、限られたディスプレイ画面領域を有効に活用する技術が必要とされている。
【０００４】
特許文献１には、スケーリングにより縮小されたアプリケーションウィンドウ（表示領域）にあわせて、全てのアイコンを縮小し表示する技術が提案されている。
【０００５】
特許文献２には、アイコンに複数機能を含ませ、ユーザが代替動作を要求した際にアイコンの外観及び機能を変更することで、制限されたディスプレイ画面を有効利用できる技術が提案されている。
【特許文献１】特開２００２−５５８０７号公報
【特許文献２】特開２００１−１４０７９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、特許文献１の技術では、表示領域のリサイズによりアイコンが縮小されるためアイコンの識別ができない場合があるという問題点があった。
【０００７】
また、特許文献２の技術では、ＰＤＡ等の予め定められた画面に予め定められたアイコンが表示される場合には適用可能であるが、リアルタイムの表示領域の変更にともない表示可能なアイコンの数も変化してしまう一般のウィンドウのアイコン表示には適用できないという問題点があった。
【０００８】
本発明は、上記の問題点を解決するためになされたもので、本発明の目的は、スケーリングにより限られた大きさの画面となった場合でも、該画面に複数含まれる表示しきれないボタン（アイコン）への操作を容易にし、ディスプレイ領域の有効利用を可能とする仕組みを提供することである。
【課題を解決するための手段】
【０００９】
本発明は、表示手段に表示されるウィンドウ内に配置される１又は複数のボタンを指示手段により指示することによりボタンに対応付けられた操作の入力が可能な情報処理装置であって、前記ウィンドウに初期配置される各ボタンのサイズ及び初期配置情報を取得し記憶手段に記憶させるデータベース作成手段と、前記ウィンドウのサイズが変更された際に、該変更されたウィンドウのサイズと前記記憶手段に記憶されたボタンのサイズとに基づいて、前記サイズ変更されたウィンドウに配置可能なボタンの数を算出する算出手段と、前記算出手段により算出された数のボタンを前記ウィンドウ内に配置されるボタンから選択して前記ウィンドウ上に配置する配置手段と、前記記憶手段に記憶されたボタンの初期配置情報に基づいて、前記配置手段により配置されなかった１又は複数のボタンにそれぞれ対応付けられた１又は複数のサブボタンを、前記配置手段により配置されたボタンに付加する第１の付加手段と、前記指示手段により前記サブボタンに第１の指示がなされると、該サブボタンが付加されたボタンを、該サブボタンに対応付けられた他のボタンに変更配置する変更手段と、を有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、スケーリングにより限られた大きさのウィンドウとなった場合でも、該ウィンドウに複数含まれるボタンへの操作を容易にし、ディスプレイ領域の有効利用を可能にすることができる等の効果を奏する。
【発明を実施するための最良の形態】
【００１１】
図１は、本発明の一実施形態を示す情報処理装置を適用可能なコンピュータシステムの一例を示すブロック図であり、（ａ）はコンピュータシステムの制御構成に対応し、（ｂ）は、コンピュータシステムのハードウェア構成に対応する。
【００１２】
図１（ａ）において、１００はコンピュータシステムである。１０１は操作部であり、各種操作を行うためのものであり、例えばディスプレイ１０６に表示されるウィンドウのサイズを変更する操作や、上記ウィンドウ内に表示されるボタン等（後述するサブボタンへの指示も含む）を指示する操作等を行うためのものである。
【００１３】
１０２は制御部であり、操作部１０１からの操作に応じて、コンピュータシステム１００を統括制御する。１０３はボタン配置制御部であり、制御部１０２からの指示によりウィンドウに表示するボタンの位置と数を計算するとともにサブボタンを作成する。１０４は画面制御部であり、制御部１０２からの指示によりボタンをウィンドウに表示する。
【００１４】
１０５はデータベースであり、後述する図９の基本ボタン情報データベース，隣接ボタン情報データベース等から構成され、上記ウィンドウに表示するボタンの情報を格納する。
【００１５】
図１（ｂ）において、１１０はＣＰＵであり、コンピュータシステム１００を統括制御する。１１１はＲＡＭ（Random Access Memory）であって、ＣＰＵ１１０が実行するプログラムのワークエリアや一時的に保持するデータのバッファとして利用する。
【００１６】
１１２はＲＯＭ（Read Only Memory）であって、ＣＰＵ１１０が実行するプログラムの保存等を行う。１１３は外部メモリであって、ＣＰＵ１１０が実行する各種プログラムや各データの保持を行うものであり、具体的にはハードディスクドライブやＤＶＤドライブ等である。
【００１７】
１１４は入力装置であって、この装置を通じてＣＰＵ１１０にデータなどの入力を行うためのものであり、具体的には、キーボードやポインティングデバイス（マウス，タッチパネル等）等のである。
【００１８】
１１５は通信インターフェースであって、ＬＡＮなどの伝送路と端末とを接続する部分である。
【００１９】
なお、図１（ａ）の操作部１０１は、入力装置１１４により構成される。また、制御部１０２，ボタン配置制御部１０３，画面制御部１０４は、ＣＰＵ１１０が外部メモリ１１３に格納されるプログラムをＲＡＭ１１１上にロードして実行することにより実現される。また、データベース１０５は、外部メモリ１１３内に構築される。
【００２０】
なお、本実施形態におけるボタンに関する制御は全て、図１に示した制御部１０２，ボタン配置制御部１０３，画面制御部１０４の制御（即ちＣＰＵ１１０が外部メモリ１１３に格納されるプログラムをＲＡＭ１１１上で実行しての制御）により行われるものとする。
【００２１】
なお、コンピュータシステム１００は、ＰＤＡ、携帯電話等のモバイル機器であってもよい。
【００２２】
以下、図２〜図８を用いて各種例を示し、本発明の情報処理装置で用いるサブボタン付きボタンについて説明する。
【００２３】
図２は、本発明の情報処理装置で用いるサブボタン付き基本ボタンの一例を示す模式図である。なお、図２では、前提として、ウィンドウサイズ変更後のウィンドウはボタン１個分のサイズとした場合を考えるものとする。
【００２４】
図２に示すように、ウィンドウサイズ変更前のウィンドウにボタンが、位置関係２０１に示すように存在しているものとする（なお、この位置関係を初期配置情報という）。そして、基本ボタンをボタン１（２０５）に設定した場合、ウィンドウサイズ変更後、そのウィンドウは２０２のように表示制御される。
【００２５】
ウィンドウ２０２において、２３３は基本ボタンとしてのボタン１（２０５）に対応する。２１４〜２１８はサブボタンである。サブボタン２１４は、位置関係２０１に示すボタン２（２０６）への遷移機能を有するサブボタンを表す。サブボタン２１５は、位置関係２０１に示すボタン３（２０７）への遷移機能を有する。サブボタン２１６は、位置関係２０１に示すボタン５（２０６）への遷移機能を有する。
【００２６】
サブボタン２１８は、位置関係２０１に示すボタン４（２０８）への遷移機能を有する。サブボタン２１７は、位置関係２０１に示すボタン７（２１１）への遷移機能を有する。
【００２７】
なお、基本ボタンをボタン２（２０６）に設定した場合、ウィンドウサイズ変更後、そのウィンドウは２０３のように表示制御される。
【００２８】
ウィンドウ２０３において、２３４は基本ボタンとしてのボタン２（２０６）に対応する。２１９〜２２４はサブボタンである。サブボタン２１９は、位置関係２０１に示すボタン１（２０５）への遷移機能を有する。サブボタン２２０は、位置関係２０１に示すボタン４（２０８）への遷移機能を有する。サブボタン２２１は、位置関係２０１に示すボタン５（２０６）への遷移機能を有する。
【００２９】
サブボタン２２２は、位置関係２０１に示すボタン８（２１２）への遷移機能を有する。サブボタン２２３は、位置関係２０１に示すボタン６（２１０）への遷移機能を有する。サブボタン２２４は、位置関係２０１に示すボタン３（２０７）への遷移機能を有する。
【００３０】
また、基本ボタンをボタン５（２０９）に設定した場合、ウィンドウサイズ変更後、そのウィンドウは２０４のように表示制御される。
【００３１】
ウィンドウ２０４において、２３５は基本ボタンとしてのボタン５（２０９）に対応する。２２５〜２３１はサブボタンである。サブボタン２２５は、位置関係２０１に示すボタン１（２０５）への遷移機能を有する。サブボタン２２６は、位置関係２０１に示すボタン４（２０８）への遷移機能を有する。サブボタン２２７は、位置関係２０１に示すボタン７（２１１）への遷移機能を有する。サブボタン２２８は、位置関係２０１に示すボタン８（２１２）への遷移機能を有する。
【００３２】
サブボタン２２９は、位置関係２０１に示すボタン９（２１３）への遷移機能を有する。サブボタン２３０は、位置関係２０１に示すボタン６（２１０）への遷移機能を有する。サブボタン２３１は、位置関係２０１に示すボタン３（２０７）への遷移機能を有するサブボタンを表す。
【００３３】
図３は、ウィンドウサイズ変更後にサブボタン付き基本ボタンがどのように変化するかの一例を示す模式図である。
【００３４】
図３において、３０１はリサイズ前のウィンドウを示し、３０２，３０３，３０４，３０５はリサイズ後のウィンドウを示す。
【００３５】
まずウィンドウ３０１を、ボタン１列分のサイズにリサイズすると、ウィンドウは３０２のように表示制御される。
【００３６】
さらにウィンドウ３０２をボタン１つ分のサイズにリサイズすると、ウィンドウは３０３のように表示制御される。
【００３７】
そして、ウィンドウ３０３でサブボタン３０６を押下指示（第１の指示）することにより、３０４のように、ウィンドウに表示されるボタンが押下指示されたサブボタン３０６の遷移機能に対応するボタンに遷移する。
【００３８】
同様に、ウィンドウ３０４でサブボタン３０７を押下指示することにより、３０５のように、ウィンドウに表示されるボタンが押下指示されたサブボタン３０７の遷移機能に対応するボタンに遷移する。
【００３９】
なお、図中、網掛け表示されているサブボタン（実際は赤表示等される）は複数ボタンを示すが、この複数ボタンについては後述する図６で説明する。
【００４０】
図４は、サブボタンを押下する事による進行先が既に表示されている場合のサブボタンの制御方法を説明する模式図である。
【００４１】
図４において、４０１はリサイズ前のウィンドウを示し、４０２，４０３はリサイズ後のウィンドウを示す。
【００４２】
まず、ウィンドウ４０１をリサイズすると、ウィンドウは４０２に示すように表示制御される。そして、ウィンドウ４０２において、サブボタン４０３を押下指示すると、ウィンドウに表示されるボタンが４０４に示すように押下指示されたサブボタン４０３の遷移機能に対応するボタンに遷移する。このときサブボタン４０６の遷移先はボタン４０５となっており、既に表示されているボタンに対応する。このため、サブボタン４０６は、押下指示できないように半透明化する（グレーアウトする）ように表示制御される。ここでは、既に表示されているボタンに対応するサブボタンを半透明化する構成を示したが、既に表示されているボタンに対応するサブボタンを削除するように構成してもよい。
【００４３】
なお、サブボタン上にカーソルが重ねられた場合（第２の指示がなされた場合）、制御部１０２は、そのサブボタンが遷移するボタンの名称を示すラベルを表示するように構成してもよい。例えば、サブボタン４０３を押下指示すると、制御部１０２により"「ボタン５」へ"のラベルが表示されるように制御される。
【００４４】
図５は、基本ボタンに付いているサブボタンがそれぞれどのボタンと対応しているかを説明する模式図である。
【００４５】
図５に示すように、ウィンドウサイズ変更前のウィンドウにボタンが、位置関係５０３に示すように存在しているものとする。そして、基本ボタンを「基本ボタン」５０４に設定した場合、ウィンドウサイズ変更後、そのウィンドウは５０１のように表示制御される。
【００４６】
ウィンドウ５０１において、５０２は、基本ボタン５０４に対応するボタンである。５０５ａ〜５０５ｄはボタン５０２に付加されたサブボタンである。
【００４７】
サブボタン５０５のうち、右方向にあるボタン（２個）５０５ａ，５０５ｂは、位置関係５０３において、基本ボタン５０４の右方向にあるボタンへの遷移機能を有する。そして、右方向にあるボタン５０５ａが「右１」ボタンへの遷移機能を有し、右方向にあるボタン５０５ｂが「右２」ボタンへの遷移機能を有する。なお、基本ボタン５０４の右方向に１つしかボタンがない場合には、右方向にあるボタンは１つしか表示されないように制御される。
【００４８】
また、サブボタン５０５のうち、右下方向にあるボタン（１個）５０５ｃは、位置関係５０３において、基本ボタン５０４の右下方向にある「右下」ボタンへの遷移機能を有する。なお、基本ボタン５０４の右下方向に複数のボタンがある場合には、右下方向にあるボタンは２つ表示されるように制御される。
【００４９】
また、サブボタン５０５のうち、下方向にあるボタン（１個）５０５ｄは、位置関係５０３において、基本ボタン５０４の下方向にある「下」ボタンへの遷移機能を有する。なお、基本ボタン５０４の下方向に複数のボタンがある場合には、下方向にあるボタンは２つ表示されるように制御される。
【００５０】
なお、上述した図４では、サブボタン４０３を押下指示された場合に、「ボタン４」のみが「ボタン５」に遷移される場合について説明した。しかし、サブボタン４０３を押下指示された場合に、「ボタン１」，「ボタン７」も「ボタン２」，「ボタン８」へ遷移されるように構成してもよい。
【００５１】
即ち、右（左）方向にあるサブボタンが押下指示された場合ボタン全体が列で右（左）方向に遷移し、上（下）方向にあるサブボタンが押下指示された場合ボタン全体が行で上（下）方向に遷移するように構成してもよい。
【００５２】
また、右下（右上，左下，左上）にあるサブボタンが押下指示された場合ボタン全体が固まりで右下（右上，左下，左上）方向に遷移するように構成してもよい。
【００５３】
図６は、特定の方向にボタンが複数ある場合の表示方法の一例を示す模式図である。
【００５４】
図６に示すように、ウィンドウサイズ変更前のウィンドウにボタンが、位置関係６０２に示すように存在しているものとする。そして、基本ボタンを「基本ボタン」６０３に設定し、ウィンドウサイズをボタン1個分の領域に変更した場合、ウィンドウは６０１のように表示制御される。
【００５５】
ウィンドウ６０１において、サブボタン６０７は、「下１」ボタン６０４への遷移機能を有し、サブボタン６０８は「下２」ボタン６０５への遷移機能を有する。
【００５６】
なお、位置関係６０２において、「基本ボタン」の下方向のボタン６０４，６０５，６０６は、サブボタンの作成限界数（本実施形態では「２」）を超えているので、サブボタン６０８は色を変え、サブボタン６０８の下にさらに表示されないサブボタンが存在することを表現するものとする（これを複数ボタンと呼ぶ）。なお、本実施形態ではサブボタンの作成限界を「２」とするが「２」以上であってもよい。また、複数ボタンは、色を変更するようにしても、形状を変更するようにしてもよく、視覚形態を変更してユーザに複数のボタンがあることを知らせる方法であればどのような表示方法を用いてもよい。
【００５７】
図７は、サブボタン押下時のアクションの一例を示す模式図である。
【００５８】
図７に示すように、ウィンドウサイズ変更前のウィンドウにボタンが、位置関係７０３に示すように存在しているものとする。そして、基本ボタンを「基本ボタン」７０７に設定し、ウィンドウサイズをボタン１個分の領域に変更した場合、ウィンドウは７０１のように表示制御される。
【００５９】
ウィンドウ７０１において、サブボタン７０５を押下した場合、７０２に示すように、ウィンドウに表示されるボタンが押下指示されたサブボタン７０４の遷移機能に対応する「ボタン２」に遷移する。
【００６０】
なお、ウィンドウ７０１の「ボタン１」７０４は、位置関係７０３に示す「ボタン１」７０７と同じ動作機能を持ち、ウィンドウ７０２の「ボタン２」７０６は位置関係７０３の「ボタン２」７０８と同じ動作機能を持つ。
【００６１】
図８は、サブボタン押下時のアクションの他の例を示す模式図である。
【００６２】
図８に示すように、ウィンドウサイズ変更前のウィンドウにボタンが、位置関係８０３に示すように存在しているものとする。そして、基本ボタンを「基本ボタン」８０７に設定し、ウィンドウサイズをボタン1個分の領域に変更した場合、ウィンドウは８０１のように表示制御される。
【００６３】
ウィンドウ８０１において、サブボタン８０５を押下した場合、８０２に示すように、ウィンドウに表示されるボタンが押下指示されたサブボタン８０５の遷移機能に対応する「押下後のボタン」に遷移する。
【００６４】
なお、ウィンドウ８０１の「ボタン１」８０４は、位置関係８０３に示す「ボタン１」８０７と同じ動作機能を持ち、ウィンドウ８０２の「押下後のボタン」８０６は、位置関係８０３の「押下後のボタン」８０８と同じ動作機能を持つ。
【００６５】
以下、図９，図１０を参照して、図１に示したデータベース１０５のデータ構成について説明する。
【００６６】
図９は、図１に示したデータベース１０５のデータテーブル構成を説明するデータテーブル構成図である。
【００６７】
図９において、９０１は基本ボタン情報テーブルであり、ウィンドウ内全てのボタンのボタン情報を格納する基本ボタン情報データベースを構成するテーブルに相当する。この基本ボタン情報テーブル９０１は、ＩＤ９０１ａ，ボタン名９０１ｂ，ボタン位置９０１ｃ，ボタンサイズ９０１ｄ，隣接ボタン情報ＩＤ９０１ｅ，押下カウンタ９０１ｆから構成される。
【００６８】
なお、ＩＤ９０１ａは、ボタンを識別するＩＤを示す。ボタン名９０１ｂは、ボタンの名称を示す。ボタン位置９０１ｃは、画面の中のボタン座標位置を示す。ボタンサイズ９０１ｄは、ボタンの縦と横の長さを示す。隣接ボタン情報ＩＤ９０１ｅは、隣接ボタン情報テーブルの対応レコードを示すＩＤを示す。押下カウンタ９０１ｆは、ボタンが押下された積算数を示す。なお、制御部１０２は、ボタンが押下指示される毎に、該押下指示されたボタンの基本ボタン情報データベース内の押下カウンタ９０１ｆをインクリメントするように制御する。
【００６９】
９０２は隣接ボタン情報テーブルであり、初期配置状態において、該当するボタンに隣接しているボタンのＩＤを格納する隣接ボタン情報データベースを構成するテーブルに相当する。この隣接ボタン情報テーブル９０２は、ＩＤ９０２ａ，上ＩＤ９０２ｂ，下ＩＤ９０２ｃ，左ＩＤ９０２ｄ，右ＩＤ９０２ｅ，左上ＩＤ９０２ｆ，左下ＩＤ９０２ｇ，右上ＩＤ９０２ｈ，右下ＩＤ９０２ｉから構成される。
【００７０】
なお、ＩＤ９０２ａは、隣接ボタン情報テーブルのレコードを識別するＩＤである。上ＩＤ９０２ｂは、上方向に隣接する基本ボタンのＩＤを示す。下ＩＤ９０２ｃは、下方向に隣接する基本ボタンのＩＤを示す。左ＩＤ９０２ｄは、左方向に隣接する基本ボタンのＩＤを示す。右ＩＤ９０２ｅは、右方向に隣接する基本ボタンのＩＤを示す。
【００７１】
左上ＩＤ９０２ｆは、左上方向に隣接する基本ボタンのＩＤを示す。左下ＩＤ９０２ｇは、左下方向に隣接する基本ボタンのＩＤを示す。右上ＩＤ９０２ｈは、右上方向に隣接する基本ボタンのＩＤを示す。右下ＩＤ９０２ｉは、右下方向に隣接する基本ボタンのＩＤを示す。
【００７２】
そして、制御部１０２，ボタン配置制御部１０３，画面制御部１０４は、上記基本ボタン情報テーブル９０１，隣接ボタン情報テーブル９０２を用いてボタンの配置、サブボタンの生成、遷移制御等の各種制御を行う。
【００７３】
例えば、制御部１０２が、あるボタンの隣接ボタンの情報を参照する場合は、基本ボタン情報テーブル９０１の隣接ボタン情報ＩＤ９０１ｅ項目の値と、隣接ボタン情報テーブル９０２のＩＤ９０２ａ項目の値が一致する隣接ボタン情報テーブル９０２のレコードを検索して、参照する。
【００７４】
なお、図９中、矢印９０３は、基本ボタン情報テーブル９０１の隣接ボタン情報ＩＤ９０１ｅ項目から隣接ボタン情報テーブル９０２のＩＤを参照することを模式的に示している。
【００７５】
図１０は、図９に示した基本ボタン情報テーブル９０１，隣接ボタン情報テーブル９０２の使用例を示した図である。
【００７６】
図１０に示すように、ウィンドウにボタンが、１００１のような位置関係で配置されているものとする。そして、このウィンドウ１００１内の各ボタンの情報が格納されている基本ボタン情報テーブル９０１の例を１００２に示す。
【００７７】
例１００２において、１００４はウィンドウ１００１の「ボタン１」についての情報を格納した基本ボタン情報テーブルのレコードである。同様に、１００５，１００６，１００７は、それぞれウィンドウ１００１の「ボタン２」，「ボタン３」，「ボタン４」の情報を格納した基本ボタン情報テーブルのレコードである。
【００７８】
１００３は、ウィンドウ１００１のようなボタン配置であった場合に、そのウィンドウ内の各ボタンの隣接ボタン情報が格納されている隣接ボタン情報テーブル９０２の例である。
【００７９】
例１００３において、１００８は「ボタン１」の隣接ボタンの情報を格納した隣接ボタン情報テーブルのレコードである。
【００８０】
なお、ウィンドウ１００１に示すように、「ボタン１」の隣接ボタンは、右方向に「ボタン２」、下方向には「ボタン３」、右斜め下方向には「ボタン４」、その他の方向は無しという状態であることが分かる。
【００８１】
よって、「ボタン１」の隣接ボタンの情報を格納した隣接ボタン情報テーブルのレコード１００８には、下ＩＤ項目１００９に「ボタン３」のＩＤである「０３」、右ＩＤ項目１０１０に「ボタン２」のＩＤである「０２」、右下ＩＤ項目１０１１に「ボタン４」のＩＤである「０４」、その他の項目に「無し」という情報がそれぞれ格納されている。
【００８２】
以下、図１１を参照して、本発明を適用したアプリケーションの例を説明する。
【００８３】
図１１は、本発明を適用したアプリケーションの一例を示した模式図である。
【００８４】
図１１（ａ）において、１１０３は、ディスプレイ１０６に最大表示したアプリケーション画面を示す。そして、アプリケーション画面１１０３に、ツールなどのサブウィンドウ１１０５が表示されているものとする。
【００８５】
このような場合、サブウィンドウ１１０５がアプリケーション画面１１０３と重なり見えない部分が多くできてしまう。
【００８６】
図１１（ｂ）に示すように、サブウィンドウ画面１１０５をスケーリングで縮小することにより、アプリケーション画面１１０３との重なりを少なくすることができる。
【００８７】
そこで、ユーザが操作部１０１からサブウィンドウ１１０５のリサイズ指示を入力する。すると、制御部１０２は、このリサイズ指示に応じて、サブウィンドウ１１０５の縮小後のウィンドウサイズ(縦、横)を取得し、表示できるボタン数を計算し、該計算結果に基づいてサブウィンドウ１１０５を表示するように制御する。このケースでは、図１１（ｂ）に示すように、変更後、サブウィンドウ１１０５は、ボタン２つは入るが３つは入らないウィンドウサイズとなっている。
【００８８】
以下、図１２〜図１５のフローチャートを参照して、本発明の情報処理装置において、ＯＳの管理するウィンドウが表示された際、ウィンドウサイズが変更された際、及びアプリケーションが起動された際に実行される、ウィンドウサイズに合わせたサブボタン付きボタンを作成しボタンを再配置する処理について説明する。
【００８９】
図１２は、本発明における第１の制御処理手順の一例を示すフローチャートであり、ＯＳの管理するウィンドウが表示された際、ウィンドウサイズが変更された際、及びアプリケーションが起動された際に実行されるウィンドウサイズに合わせたサブボタン付きボタンを作成しボタンを再配置する処理に対応する。なお、このフローチャートの処理は、図１に示したＣＰＵ１１０が外部メモリ１１３に格納されたプログラムをＲＡＭ１１１上にロードして実行することにより実現される制御部１０２，ボタン配置制御部１０３，画面制御部１０４により実行される。
【００９０】
まず、コンピュータシステム１００において、ＯＳの管理するウィンドウが表示された、ウィンドウサイズが変更された、又は、アプリケーションが起動されると、制御部１０２は、本フローチャートの処理を開始する。
【００９１】
まず、ステップＳ１００において、制御部１０２は、表示されたＯＳの管理するウィンドウ、ウィンドウサイズが変更されたウィンドウ、又は、起動されたアプリケーションについてのデータベースが既に存在するか否かを判定し、まだデータベースが存在しないと判定した場合には、ステップＳ１０１に処理を進める。
【００９２】
ステップＳ１０１において、制御部１０２は、上記アプリケーションのウィンドウ内にあるボタンの位置やサイズ等を該アプリケーションから取得し、必要な項目（図９の基本ボタン情報テーブル９０１，隣接ボタン情報テーブル９０２に示した項目）のデータをデータベース１０５に格納する（データベース化する）。以下、これらを基本ボタン情報データベース，隣接ボタン情報データベースと呼ぶ。なお、隣接ボタン情報データベースに格納される隣接ボタン情報は、各ボタンの座標や位置情報に基づいて制御部１０２が決定される。そして、ステップＳ１０２に処理を進める。
【００９３】
一方、ステップＳ１００で、上記データベースが既に存在すると判断した場合には、制御部１０２は、そのままステップＳ１０２に処理を進める。
【００９４】
ステップＳ１０２では、制御部１０２は、ウィンドウのリサイズのイベントがあった（ウィンドウサイズが変更された）か否かを判定し、ウィンドウのリサイズのイベントが無かった（ウィンドウサイズが変更されなかった）と判定した場合には、そのまま本フローチャートの処理を終了させる。
【００９５】
一方、ステップＳ１０２で、ウィンドウのリサイズのイベントがあった（ウィンドウサイズが変更された）と判定した場合には、制御部１０２は、ステップＳ１０３に処理を進める。
【００９６】
ステップＳ１０３では、制御部１０２は、ボタン配置制御部１０３に、リサイズされたウィンドウサイズにより表示できるボタン数およびボタンの位置を計算しサブボタンを生成する処理（ボタン位置及び数を自動計算する処理）を実行させる。なお、この処理（ボタン位置及び数を自動計算する処理）の詳細は、後述する図１３に示す。
【００９７】
次に、ステップＳ１０４において、制御部１０２は、画面制御部１０４にステップＳ１０３でサブボタンが設置されたボタンをリサイズ後のウィンドウに設置させてディスプレイ１０６に表示させるように制御する。詳細には、画面制御部１０４は、画面制御部１０４が管理するメモリ内に記憶されたボタンをリサイズ後のウィンドウに設置させてディスプレイ１０６に表示させるように制御する。そして、本フローチャートの処理を終了させる。
【００９８】
図１３は、本発明における第２の制御処理手順の一例を示すフローチャートであり、図１２のステップＳ１０３に示したボタン位置及びボタン数を自動計算する処理に対応する。なお、このフローチャートの処理は、図１に示したＣＰＵ１１０が外部メモリ１１３に格納されたプログラムをＲＡＭ１１１上にロードして実行することにより実現されるボタン配置制御部１０３，画面制御部１０４により実行される。
【００９９】
まず、ステップＳ２０１において、ボタン配置制御部１０３は、変更された後のウィンドウサイズを取得する。
【０１００】
次に、ステップＳ２０２において、ボタン配置制御部１０３は、上記ステップＳ２０１で取得したウィンドウサイズが、ボタン１つ分より大きいか否かを判定し、ボタン１つ分より小さいと判定した場合には、ステップＳ２０３に処理を進め、ウィンドウサイズをボタン１つ分が表示可能なサイズに変更する。そして、ステップＳ２０４に処理を進める。
【０１０１】
一方、ステップＳ２０２で、上記ステップＳ２０１で取得したウィンドウサイズが、ボタン１つ分より大きいと判断した場合には、そのままステップＳ２０４に処理を進める。
【０１０２】
そして、ステップＳ２０４では、ボタン配置制御部１０３は、上記ステップＳ２０１で取得したウィンドウサイズで表示することの可能なボタン数を決定する。例えば、図３に示した例の場合、ウィンドウサイズが３０１から３０２にリサイズされた際、ウィンドウの横幅とボタンの幅を基に１行の表示ボタン数を決定する。同じくウィンドウの縦幅とボタンの高さを基に１列の表示ボタン数についても計算する。図３の３０２にリサイズされた場合、上記計算により、ウィンドウ３０２には３行１列のボタン表示が可能と決定される。
【０１０３】
また、別の方法としては、ウィンドウサイズがリサイズされた際、該リサイズされたウィンドウのウィンドウ表示領域外に存在するボタン、または一部ウィンドウ表示領域外に存在するボタンを検知し、表示するボタンの数を計算することも可能である。ボタンのサイズが均一でない場合はこちらの方法を使用するものとする。
【０１０４】
次に、ステップＳ２０５において、ボタン配置制御部１０３は、ステップＳ２０４で決定されたボタン数だけウィンドウに表示される基本ボタンを決定し、該決定した基本ボタンをウィンドウに配置するように画面制御部１０４が管理するメモリ内にセットする。基本ボタンは、基本ボタン情報データベース内の押下カウンタ９０１ｆ項目を参照して決定する。基本的には、押下カウンタ９０１ｆ項目の値が多いボタンから基本ボタンに決定する。押下カウンタ９０１ｆ項目の値が同じ場合には、ＩＤ９０１ａ項目の若いボタンを基本ボタンとする。
【０１０５】
次に、ステップＳ２０６において、ボタン配置制御部１０３は、上記ステップＳ２０５で基本ボタンと決定されたボタンを１つ取得し（以下、カレントの基本ボタンという）、該取得した基本ボタンにサブボタン設置が必要か否かを判定する。なお、この判定は、リサイズされたウィンドウ内に表示可能なボタンの数と基本ボタン情報データベース内のボタンの総数（レコード数）とを比較することにより行う。全てのボタンがリサイズ後のウィンドウに収まる場合は、サブボタン設置は必要ないと判定し、一方、全てのボタンがリサイズ後のウィンドウに収まりきらない場合は、サブボタン設置が必要であると判定する。
【０１０６】
ステップＳ２０６で、ボタンのサブボタン設定が必要ないと判定した場合には、ボタン配置制御部１０３は、ステップＳ２０８に処理を進める。
【０１０７】
一方、ステップＳ２０６で、ボタンのサブボタン設置が必要であると判断した場合には、ボタン配置制御部１０３は、ステップＳ２０７に処理を進める。
【０１０８】
ステップＳ２０７では、ボタン配置制御部１０３は、画面制御部１０４に、カレントの基本ボタンに対して、サブボタン設置処理を実行させる。なお、このサブボタン設定設置の詳細は後述する図１４に示す。
【０１０９】
そして、上記ステップＳ２０７のサブボタン設置処理が終了すると、ステップＳ２０８において、ボタン配置制御部１０３は、全ての基本ボタンについてステップＳ２０６〜Ｓ２０７の処理を終了したか否かを判定し、未だ終了していないと判定した場合には、ステップＳ２０６に処理を戻し、次の基本ボタンに処理を移行させる。
【０１１０】
一方、ステップＳ２０８で、全ての基本ボタンについてステップＳ２０６〜Ｓ２０７の処理を終了したと判断した場合には、ボタン配置制御部１０３は、本フローチャートの処理を終了させる。
【０１１１】
図１４は、本発明における第３の制御処理手順の一例を示すフローチャートであり、図１３のステップＳ２０７に示したサブボタン設置処理に対応する。なお、このフローチャートの処理は、図１に示したＣＰＵ１１０が外部メモリ１１３に格納されたプログラムをＲＡＭ１１１上にロードして実行することにより実現される画面制御部１０４により実行される。
【０１１２】
まず、ステップＳ３０１において、画面制御部１０４は、処理対象となっている基本ボタンの「上、下、左、右、右上、右下、左上、左下」の８方向に、サブボタンが必要か否かを判定する。なお、サブボタンの有無の判定は、最初に基本ボタン情報データベースと隣接ボタン情報データベースからボタンの上、下、左、右、右下、右上、左下、左上の８方向に存在するボタン数を求める。このデータを基にサブボタンを設置の有無を判定する。
【０１１３】
そして、上記ステップＳ３０１で、基本ボタンの「上、下、左、右、右上、右下、左上、左下」の８方向のいずれのサブボタンも必要ないと判定した場合には、そのまま本フローチャートの処理を終了させる。
【０１１４】
一方、上記ステップＳ３０１で、基本ボタンの「上、下、左、右、右上、右下、左上、左下」の８方向のいずれかにサブボタンが必要であると判断した場合には、ステップＳ３０２に処理を進める。
【０１１５】
ステップＳ３０２では、画面制御部１０４は、サブボタンが必要と判定された方向に対して各方向に対応した表示方法で、基本ボタンにサブボタンを設置する（サブボタンをボタンとして作成し、画面制御部１０４が管理するメモリ内にセットされた基本ボタンに設置するようにセットする）。
【０１１６】
次に、ステップＳ３０３において、画面制御部１０４は、上記ステップＳ３０２で設置したサブボタンにおいて色変えが必要か否かを判定する。なお、色変えの有無の判定も、上記ステップＳ３０２で求めた上、下、左、右、右下、右上、左下、左上の８方向に存在するボタン数を基に行う。
【０１１７】
そして、上記ステップＳ３０３で、上記ステップＳ３０２で設置したサブボタンにおいて色変えが必要ないと判断した場合には、画面制御部１０４は、そのまま本フローチャートの処理を終了させる。
【０１１８】
一方、上記ステップＳ３０３で、上記ステップＳ３０２で設置したサブボタンにおいて色変えが必要と判断した場合には、画面制御部１０４は、ステップＳ３０４に処理を進める。
【０１１９】
ステップＳ３０４では、画面制御部１０４は、上記ステップＳ３０３で色変えが必要と判断されたサブボタンの色を変更する。
【０１２０】
次に、ステップＳ３０５において、画面制御部１０４は、上記ステップＳ３０２で設置したサブボタンのいずれかに半透明化が必要かを判定する。なお、半透明化の必要有無の判定は、サブボタンの遷移先となるボタンが既に基本ボタンとして表示されているか否かで行う。
【０１２１】
ステップＳ３０５で、上記ステップＳ３０２で設置したサブボタンのいずれにも半透明化が必要ないと判定した場合には、画面制御部１０４は、そのまま本フローチャートの処理を終了させる。
【０１２２】
一方、ステップＳ３０５で、上記ステップＳ３０２で設置したサブボタンのいずれかに半透明化が必要であると判定した場合には、画面制御部１０４は、ステップＳ３０６において、上記ステップＳ３０５で半透明化が必要と判定されたサブボタンを半透明にする。そして、本フローチャートの処理を終了させる。
【０１２３】
以下、図１５のフローチャートを参照して、サブボタンが押下された際の処理について説明する。
【０１２４】
図１５は、本発明における第４の制御処理手順の一例を示すフローチャートであり、サブボタンが押下された際の処理に対応する。なお、このフローチャートの処理は、図１に示したＣＰＵ１１０が外部メモリ１１３に格納されたプログラムをＲＡＭ１１１上にロードして実行することにより実現される制御部１０２，画面制御部１０４により実行される。
【０１２５】
まず、ステップＳ４０１において、制御部１０２は、サブボタンが押下指示されたか否かを判定し、押下指示されていないと判定した場合には、そのまま本フローチャートの処理を終了させる。
【０１２６】
一方、ステップＳ４０１で、サブボタンが押下されたと判定した場合には、制御部１０２は、ステップＳ４０２に処理を進める。
【０１２７】
ステップＳ４０２では、制御部１０２は、押されたサブボタンに基づいて、基本ボタン情報データベースと隣接ボタン情報データベースを参照し、移行ボタン（遷移するボタン）を求める。
【０１２８】
次に、ステップＳ４０３では、制御部１０２は、サブボタンが押下された基本のボタンを、ステップＳ４０２で求められた移行ボタンに変更（遷移）するように画面制御部１０４が管理するメモリ内にセットする。
【０１２９】
例えば、図４に示した例では、ウィンドウ４０２のサブボタン４０３が押下指示されると、ウィンドウに表示されるボタンが４０４に示すように押下指示されたサブボタン４０３の遷移機能に対応するボタンに遷移（移行）し、他のボタン（「ボタン１」，「ボタン７」）はそのままとなる。
【０１３０】
次に、ステップＳ４０４において、制御部１０２は、ステップＳ４０３で変更（遷移）した移行ボタンを基本ボタンに決定する。
【０１３１】
次に、ステップＳ４０５において、制御部１０２は、画面制御部１０４に、ステップＳ４０４で決定した基本ボタンに対して、図１４に示したサブボタン設置処理を実行させる。そして、上記ステップＳ２０７のサブボタン設置処理が終了すると、制御部１０２は、本フローチャートの処理を終了させる。
【０１３２】
次に、ステップＳ４０６において、制御部１０２は、画面制御部１０４にステップＳ４０５でサブボタンが設置されたボタンをウィンドウに設置させてディスプレイ１０６に表示させるように制御する。即ち、画面制御部１０４は、画面制御部１０４が管理するメモリ内に記憶されたボタンをウィンドウに設置させてディスプレイ１０６に表示させるように制御する。そして、本フローチャートの処理を終了させる。
【０１３３】
なお、ステップＳ４０３では、押下指示されたボタンのみ遷移する場合について示したが、押下指示されたボタンの周りのボタンも全て遷移するように構成してもよい。即ち、上述した図４では、サブボタン４０３を押下指示された場合に、サブボタンが指示された「ボタン４」のみでなく「ボタン１」，「ボタン４」，「ボタン７」全体が、「ボタン２」，「ボタン５」，「ボタン８」へ遷移されるように構成してもよい。
【０１３４】
即ち、右（左）方向にあるサブボタンが押下指示された場合ボタン全体が列で右（左）方向に遷移し、上（下）方向にあるサブボタンが押下指示された場合ボタン全体が行で上（下）方向に遷移するように構成してもよい。また、右下（右上，左下，左上）にあるサブボタンが押下指示された場合ボタン全体が固まりで右下（右上，左下，左上）方向に遷移するように構成してもよい。
【０１３５】
以上説明したように、スケーリングによる限られた大きさの画面となってしまった場合でも、表示されているボタンに付加されたサブボタンにより、表示されていないボタンへ遷移させることができ、ディスプレイ領域の有効利用を可能にする。
【０１３６】
また、サブボタンを実際のボタンの位置関係を示す位置に付加するので、サブボタンによるボタンの遷移を視覚的に分かるようにすることができる。これにより、ユーザは、普段使い慣れたボタン配置の場合、ボタンの位置関係から実行したいボタンの位置を容易に推測して選択することができる。
【０１３７】
なお、上記実施形態では、ボタンを例として説明したが、操作部による指示によりアイコンに対応付けられた操作の入力が可能なアイコンでも本発明を適用可能である。また、単にファイルを開くようなアイコンであってもよい。
【０１３８】
また、スケーリングによる限られた大きさの画面となってしまった場合でも、表示領域の変更に合わせて表示可能なアイコンの数をリアルタイムに自動計算し、複数機能を含ませたアイコンを再配置することができるので、リアルタイムの表示領域の変更にともない表示可能なアイコンの数が変化する一般のウィンドウのアイコン表示にも適用可能である。
【０１３９】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
【０１４０】
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０１４１】
以下、図１６に示すメモリマップを参照して本発明に係る情報処理装置（コンピュータシステム１００）で読み取り可能なデータ処理プログラムの構成について説明する。
【０１４２】
図１６は、本発明に係る情報処理装置（コンピュータシステム１００）で読み取り可能な各種データ処理プログラムを格納する記録媒体（記憶媒体）のメモリマップを説明する図である。
【０１４３】
なお、特に図示しないが、記録媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報，作成者等も記憶され、かつ、プログラム読み出し側のＯＳ等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【０１４４】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、インストールするプログラムやデータが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【０１４５】
本実施形態における図１２，図１３，図１４，図１５に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、ＣＤ−ＲＯＭやフラッシュメモリやＦＤ等の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【０１４６】
以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【０１４７】
この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【０１４８】
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，ＤＶＤ−ＲＯＭ，磁気テープ，不揮発性のメモリカード，ＲＯＭ，ＥＥＰＲＯＭ，シリコンディスク等を用いることができる。
【０１４９】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１５０】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１５１】
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０１５２】
さらに、本発明を達成するためのソフトウェアによって表されるプログラムをネットワーク上のサーバ，データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０１５３】
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【図面の簡単な説明】
【０１５４】
【図１】本発明の一実施形態を示す情報処理装置を適用可能なコンピュータシステムの一例を示すブロック図である。
【図２】本発明の情報処理装置で用いるサブボタン付き基本ボタンの一例を示す模式図である。
【図３】ウィンドウサイズ変更後にサブボタン付き基本ボタンがどのように変化するかの一例を示す模式図である。
【図４】サブボタンを押下する事による進行先が既に表示されている場合のサブボタンの制御方法を説明する模式図である。
【図５】基本ボタンに付いているサブボタンがそれぞれどのボタンと対応しているかを説明する模式図である。
【図６】特定の方向にボタンが複数ある場合の表示方法の一例を示す模式図である。
【図７】サブボタン押下時のアクションの一例を示す模式図である。
【図８】サブボタン押下時のアクションの他の例を示す模式図である。
【図９】図１に示したデータベース１０５のデータテーブル構成を説明するデータテーブル構成図である。
【図１０】図９に示した基本ボタン情報テーブル９０１，隣接ボタン情報テーブル９０２の使用例を示した図である。
【図１１】本発明を適用したアプリケーションの一例を示した模式図である。
【図１２】本発明における第１の制御処理手順の一例を示すフローチャートである。
【図１３】本発明における第２の制御処理手順の一例を示すフローチャートである。
【図１４】本発明における第３の制御処理手順の一例を示すフローチャートである。
【図１５】本発明における第４の制御処理手順の一例を示すフローチャートである。
【図１６】本発明に係る情報処理装置（コンピュータシステム１００）で読み取り可能な各種データ処理プログラムを格納する記録媒体（記憶媒体）のメモリマップを説明する図である。
【符号の説明】
【０１５５】
１００  コンピュータシステム
１０１  操作部
１０２  制御部
１０３  ボタン配置制御部
１０４  画面制御部
１０５  データベース
１０６  ディスプレイ
１１０  ＣＰＵ
１１３  外部メモリ
１１４  入力装置
９０１  基本ボタン情報テーブル
９０２  隣接ボタン情報テーブル
【図１】
2008134901.tif 000003
【図２】
2008134901.tif 000004
【図３】
2008134901.tif 000005
【図４】
2008134901.tif 000006
【図５】
2008134901.tif 000007
【図６】
2008134901.tif 000008
【図７】
2008134901.tif 000009
【図８】
2008134901.tif 000010
【図９】
2008134901.tif 000011
【図１０】
2008134901.tif 000012
【図１１】
2008134901.tif 000013
【図１２】
2008134901.tif 000014
【図１３】
2008134901.tif 000015
【図１４】
2008134901.tif 000016
【図１５】
2008134901.tif 000017
【図１６】
2008134901.tif 000018