(57)【特許請求の範囲】
【請求項１】
画面に表示される複数のオブジェクトの表示順を座標入力手段を用いてユーザが変更することを可能にする情報処理装置のコンピュータを、
前記複数のオブジェクトのうちのサブセットを構成するオブジェクトを、予め設定された表示順で並ぶように前記画面内に行列表示するオブジェクト表示手段と、
前記座標入力手段によって指示された前記画面上の位置を指示位置として検出する指示位置検出手段と、
前記画面内に表示されている前記サブセットのうちの任意のオブジェクト上の点を起点として前記指示位置が移動したときに、予め定められた判定基準に従って、第１の処理方法又は第２の処理方法を選択する処理方法選択手段と、
前記処理方法選択手段によって前記第１の処理方法が選択されたときに、前記複数のオブジェクトを前記指示位置の移動に応じてスクロール表示させるスクロール手段と、
前記処理方法選択手段によって前記第２の処理方法が選択されたときに、前記任意のオブジェクトを前記指示位置に応じて移動させるオブジェクト移動手段と、
前記オブジェクト移動手段による前記任意のオブジェクトの移動中に前記指示位置が検出されなくなったときに、最後に検出された指示位置が他のオブジェクト上である場合には、前記任意のオブジェクトと当該他のオブジェクトとを入れ替え、最後に検出された指示位置がオブジェクトの配置されていないオブジェクト非配置領域内の位置である場合には、前記任意のオブジェクトを当該オブジェクト非配置領域に配置すると共に、当該任意のオブジェクトが移動前に配置されていたオブジェクト配置領域をオブジェクト非配置領域に変更するオブジェクト入替手段として機能させる、情報処理プログラム。
【請求項２】
前記オブジェクト表示手段は、前記サブセットを構成するオブジェクトが配置されたオブジェクト配置領域と、オブジェクトが配置されていないオブジェクト非配置領域とを前記画面内に表示し、
前記オブジェクト入替手段は、
前記最後に検出された指示位置に応じて、前記オブジェクト配置領域及び前記オブジェクト非配置領域のいずれが指定されたかを判別する判別手段と、
前記オブジェクト配置領域が指定されたと前記判別手段によって判別された場合に、前記任意のオブジェクトと当該オブジェクト配置領域内に配置されている他のオブジェクトとを入れ替え、前記オブジェクト非配置領域が指定されたと前記判別手段によって判別された場合に、前記オブジェクト移動手段によって移動された前記任意のオブジェクトを前記オブジェクト非配置領域に配置すると共に、前記任意のオブジェクトが移動前に配置されていたオブジェクト配置領域をオブジェクト非配置領域に変更する入替処理手段とを含む、請求項１に記載の情報処理プログラム。
【請求項３】
前記判別手段は、前記最後に検出された指示位置が前記オブジェクト配置領域内である場合は当該オブジェクト配置領域が指定されたと判別し、前記最後に検出された指示位置が前記オブジェクト非配置領域内である場合は当該オブジェクト非配置領域が指定されたと判別し、前記最後に検出された指示位置が前記オブジェクト配置領域内でも前記オブジェクト非配置領域内でもない場合は、前記オブジェクト配置領域及び前記オブジェクト非配置領域のうち前記最後に検出された指示位置により近い領域が指定されたと判別する、請求項２に記載の情報処理プログラム。
【請求項４】
前記コンピュータを、
前記サブセットを構成するオブジェクトの行数又は列数を変更する行列数変更手段と、
前記行列数変更手段によって変更された行数又は列数に応じて、前記オブジェクト表示手段により前記画面内に表示される各オブジェクトの表示位置を変更するオブジェクト表示変更手段として更に機能させる、請求項１に記載の情報処理プログラム。
【請求項５】
前記コンピュータを、前記行列数変更手段によって変更された行数又は列数を記憶する行列数記憶手段として更に機能させ、
前記オブジェクト表示手段は、当該情報処理プログラムの起動時に、前記サブセットを構成するオブジェクトを前記行列数記憶手段に記憶されている行数又は列数で前記画面内に行列表示する、請求項４に記載の情報処理プログラム。
【請求項６】
前記コンピュータを、第１ボタン及び第２ボタンを前記画面内に表示するボタン表示手段として更に機能させ、
前記行列数変更手段は、前記指示位置検出手段によって検出された指示位置が前記第１ボタン上であった場合には前記行数又は列数を増加させ、前記指示位置検出手段によって検出された指示位置が前記第２ボタン上であった場合には前記行数又は列数を減少させる、請求項４に記載の情報処理プログラム。
【請求項７】
前記コンピュータを、前記オブジェクト入替手段によってオブジェクトの入れ替えが行われた場合に、入れ替え後のオブジェクトの表示順を記憶する表示順記憶手段として更に機能させ、
前記オブジェクト表示手段は、当該情報処理プログラムの起動時に、前記表示順記憶手段に記憶されている表示順で、前記サブセットを構成する各オブジェクトを前記画面内に行列表示する、請求項１に記載の情報処理プログラム。
【請求項８】
前記オブジェクト表示手段は、前記サブセットを構成する各オブジェクトが予め設定された表示順に従って行方向に並ぶように、１列目から順に、各オブジェクトを並べて表示する、請求項１に記載の情報処理プログラム。
【請求項９】
前記オブジェクト表示手段は、前記サブセットを構成するオブジェクトを一行表示又は一列表示可能なものであって、
前記コンピュータを、前記画面内に表示されているオブジェクトの行数及び列数が共に２以上であるか否かを判定する行列数判定手段として更に機能させ、
前記オブジェクト入替手段は、前記行列数判定手段によって前記行数及び列数が共に２以上であると判定されると、前記最後に検出された指示位置が他のオブジェクト上である場合、又は当該他のオブジェクト上ではないが当該他のオブジェクトの近傍である場合に、前記任意のオブジェクトと当該他のオブジェクトとを入れ替える、請求項４に記載の情報処理プログラム。
【請求項１０】
前記オブジェクト表示手段は、前記サブセットを構成するオブジェクトを一行表示又は一列表示可能なものであって、
前記コンピュータを、前記画面内に表示されているオブジェクトの行数及び列数が共に２以上であるか否かを判定する行列数判定手段として更に機能させ、
前記オブジェクト入替手段は、
前記行列数判定手段によって前記行数及び列数が一方でも２以上ではないと判定された場合に、前記最後に検出された指示位置が他のオブジェクト上であるか、又は他の２つのオブジェクトの間であるかを判別する位置判別手段と、
前記位置判別手段によって前記他のオブジェクト上であると判別された場合には前記任意のオブジェクトと当該他のオブジェクトとを入れ替え、前記位置判別手段によって前記他の２つのオブジェクトの間であると判別された場合には当該２つのオブジェクト間に前記任意のオブジェクトを挿入する入替処理手段とを含む、請求項４に記載の情報処理プログラム。
【請求項１１】
前記コンピュータを、前記任意のオブジェクトを含む２以上のオブジェクトを選択するオブジェクト選択手段として更に機能させ、
前記オブジェクト移動手段は、前記処理方法選択手段によって前記第２の処理方法が選択されたときに、前記オブジェクト選択手段によって選択された２以上のオブジェクトを前記指示位置に応じて移動させ、
前記オブジェクト入替手段は、前記オブジェクト移動手段による２以上のオブジェクトの移動中に前記指示位置が検出されなくなったときに、最後に検出された指示位置に応じて、前記２以上のオブジェクトと他の２以上のオブジェクトとを入れ替える、請求項１に記載の情報処理プログラム。
【請求項１２】
前記処理方法選択手段は、前記指示位置が第１の方向へ移動した場合には前記第１の処理方法を選択し、前記指示位置が前記第１の方向とは異なる第２の方向へ移動した場合には前記第２の処理方法を選択する、請求項１に記載の情報処理プログラム。
【請求項１３】
前記処理方法選択手段は、前記指示位置が最初に検出されてから所定時間を経過する前に当該指示位置が移動した場合には前記第１の処理方法を選択し、前記所定時間を経過した後に前記指示位置が移動した場合には前記第２の処理方法を選択する、請求項１に記載の情報処理プログラム。
【請求項１４】
画面に表示される複数のオブジェクトの表示順を座標入力手段を用いてユーザが変更することを可能にする情報処理装置であって、
前記複数のオブジェクトのうちのサブセットを構成するオブジェクトを、予め設定された表示順で並ぶように前記画面内に行列表示するオブジェクト表示手段と、
前記座標入力手段によって指示された前記画面上の位置を指示位置として検出する指示位置検出手段と、
前記画面内に表示されている前記サブセットのうちの任意のオブジェクト上の点を起点として前記指示位置が移動したときに、予め定められた判定基準に従って、第１の処理方法又は第２の処理方法を選択する処理方法選択手段と、
前記処理方法選択手段によって前記第１の処理方法が選択されたときに、前記複数のオブジェクトを前記指示位置の移動に応じてスクロール表示させるスクロール手段と、
前記処理方法選択手段によって前記第２の処理方法が選択されたときに、前記任意のオブジェクトを前記指示位置に応じて移動させるオブジェクト移動手段と、
前記オブジェクト移動手段による前記任意のオブジェクトの移動中に前記指示位置が検出されなくなったときに、最後に検出された指示位置が他のオブジェクト上である場合には、前記任意のオブジェクトと当該他のオブジェクトとを入れ替え、最後に検出された指示位置がオブジェクトの配置されていないオブジェクト非配置領域内の位置である場合には、前記任意のオブジェクトを当該オブジェクト非配置領域に配置すると共に、当該任意のオブジェクトが移動前に配置されていたオブジェクト配置領域をオブジェクト非配置領域に変更するオブジェクト入替手段とを備える、情報処理装置。
【請求項１５】
画面に表示される複数のオブジェクトの表示順を座標入力手段を用いてユーザが変更することを可能にする情報処理システムであって、
前記複数のオブジェクトのうちのサブセットを構成するオブジェクトを、予め設定された表示順で並ぶように前記画面内に行列表示するオブジェクト表示手段と、
前記座標入力手段によって指示された前記画面上の位置を指示位置として検出する指示位置検出手段と、
前記画面内に表示されている前記サブセットのうちの任意のオブジェクト上の点を起点として前記指示位置が移動したときに、予め定められた判定基準に従って、第１の処理方法又は第２の処理方法を選択する処理方法選択手段と、
前記処理方法選択手段によって前記第１の処理方法が選択されたときに、前記複数のオブジェクトを前記指示位置の移動に応じてスクロール表示させるスクロール手段と、
前記処理方法選択手段によって前記第２の処理方法が選択されたときに、前記任意のオブジェクトを前記指示位置に応じて移動させるオブジェクト移動手段と、
前記オブジェクト移動手段による前記任意のオブジェクトの移動中に前記指示位置が検出されなくなったときに、最後に検出された指示位置が他のオブジェクト上である場合には、前記任意のオブジェクトと当該他のオブジェクトとを入れ替え、最後に検出された指示位置がオブジェクトの配置されていないオブジェクト非配置領域内の位置である場合には、前記任意のオブジェクトを当該オブジェクト非配置領域に配置すると共に、当該任意のオブジェクトが移動前に配置されていたオブジェクト配置領域をオブジェクト非配置領域に変更するオブジェクト入替手段とを備える、情報処理システム。
【請求項１６】
画面に表示される複数のオブジェクトの表示順を座標入力手段を用いてユーザが変更することを可能にする情報処理方法であって、
前記複数のオブジェクトのうちのサブセットを構成するオブジェクトを、予め設定された表示順で並ぶように前記画面内に行列表示するステップと、
前記座標入力手段によって指示された前記画面上の位置を指示位置として検出するステップと、
前記画面内に表示されている前記サブセットのうちの任意のオブジェクト上の点を起点として前記指示位置が移動したときに、予め定められた判定基準に従って、第１の処理方法又は第２の処理方法を選択するステップと、
前記第１の処理方法が選択されたときに、前記複数のオブジェクトを前記指示位置の移動に応じてスクロール表示させるステップと、
前記第２の処理方法が選択されたときに、前記任意のオブジェクトを前記指示位置に応じて移動させるステップと、
前記任意のオブジェクトの移動中に前記指示位置が検出されなくなったときに、最後に検出された指示位置が他のオブジェクト上である場合には、前記任意のオブジェクトと当該他のオブジェクトとを入れ替え、最後に検出された指示位置がオブジェクトの配置されていないオブジェクト非配置領域内の位置である場合には、前記任意のオブジェクトを当該オブジェクト非配置領域に配置すると共に、当該任意のオブジェクトが移動前に配置されていたオブジェクト配置領域をオブジェクト非配置領域に変更するステップとを含む、情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理プログラム、情報処理装置、情報処理システム、及び情報処理方法に関し、より特定的には、ユーザが座標入力手段を用いて行った操作に応じた情報処理を行う情報処理装置に実行させる情報処理プログラム、情報処理装置、情報処理システム、及び情報処理方法に関する。
【背景技術】
【０００２】
従来、サムネイル画像やアイコン等の複数のオブジェクトを画面に表示し、それらの表示順をユーザが自由に変更できるようにしたものがある。例えば特許文献１には、複数のアイコンのいずれかをユーザがドラッグ操作によって別のアイコンに重ね合わせるように移動させたときに、移動したアイコンとそのアイコンが重ね合わされたアイコンとを入替表示することが開示されている。
【０００３】
また、オブジェクトが多数存在して画面に収まらないような場合に、一部のオブジェクトを画面に表示し、残りのオブジェクトについてはユーザによるスクロール操作に応じて画面に表示させることも一般的に行われている。そして、このようなスクロール操作とアイコンの表示順の変更とを両立可能なものもある。例えば特許文献２に記載の装置では、画面に複数のアイコンが水平方向に一列に並べて表示されており、ユーザがスティックを画面にタッチさせたまま水平方向にスライドさせることで、アイコン列を水平方向にスクロールさせることが可能である。また、ユーザがスティックを画面にタッチしたまま垂直方向にスライドさせることで、そのスティックによって指示されたアイコンのみを移動させたり、そのアイコンを他の２つのアイコンの間に挿入させたりすることも可能である。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−１４６３３４号公報
【特許文献２】特開２００９−２６５９２９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、特許文献１に記載の端末では、ドラッグ操作によって２つのアイコンを入れ替えることは可能であるが、ドラッグ操作によってアイコンの入れ替えと複数のアイコンのスクロールとを選択することはできなかった。また、特許文献２に記載の装置では、ドラッグ操作によって複数のアイコンのスクロールと特定のアイコンを別の２つのアイコンの間に挿入する処理とを選択することは可能であるが、ドラッグ操作によって複数のアイコンのスクロールとアイコンの入れ替えとを選択することはできなかった。
【０００６】
ところで、特許文献２に記載の装置では、画面に表示されるアイコンの表示順が予め決められている。このため、図２６（Ａ）に例示されるようにアイコンを行列表示（ここでは２行４列表示）することを考えた場合、以下のような問題が生じるおそれがある。すなわち、「２」の番号が付されたアイコンを、「７」の番号が付されたアイコンと「８」の番号が付されたアイコンとの間に挿入した場合、図２６（Ａ）及び（Ｂ）に示されるように、１行目の左から２番目に配置されていた「３」の番号が付されたアイコンが「２」の番号が付されたアイコンが元々配置されていた２行目の左から１番目の位置へ移動し、２行目の左から２番目に配置されていた「４」の番号が付されたアイコンが「３」の番号が付されたアイコンが元々配置されていた１行目の左から２番目の位置へ移動する。そして、１行目の左から３番目に配置されていた「５」の番号が付されたアイコンが２行目の左から２番目の位置へ移動する。このように、予め表示順が定められている複数のアイコンを行列表示することを考えた場合、任意のアイコンを他の２つのアイコン間に挿入すると、各オブジェクトの位置関係を大きく崩してしまうおそれがある。
【０００７】
それ故に、本発明の目的は、ユーザが複数のオブジェクトのスクロールとオブジェクトの入れ替えとを簡単に選択することができ、且つ各オブジェクトの位置関係を大きく崩すことなく任意のオブジェクトを所望の位置に配置することができる情報処理プログラム、情報処理装置、情報処理システム、及び情報処理方法を提供することである。
【課題を解決するための手段】
【０００８】
本発明に係る情報処理プログラムは、画面に表示される複数のオブジェクトの表示順を座標入力手段を用いてユーザが変更することを可能にする情報処理装置のコンピュータを、オブジェクト表示手段、指示位置検出手段、処理方法選択手段、スクロール手段、オブジェクト移動手段、及びオブジェクト入替手段として機能させる。オブジェクト表示手段は、複数のオブジェクトのうちのサブセットを構成するオブジェクトを、予め設定された表示順で並ぶように画面内に行列表示する。指示位置検出手段は、座標入力手段によって指示された画面上の位置を指示位置として検出する。処理方法選択手段は、画面内に表示されているサブセットのうちの任意のオブジェクト上の点を起点として指示位置が移動したときに、予め定められた判定基準に従って、第１の処理方法又は第２の処理方法を選択する。スクロール手段は、処理方法選択手段によって第１の処理方法が選択されたときに、複数のオブジェクトを指示位置の移動に応じてスクロール表示させる。オブジェクト移動手段は、処理方法選択手段によって第２の処理方法が選択されたときに、任意のオブジェクトだけを指示位置に応じて移動させる。オブジェクト入替手段は、オブジェクト移動手段による任意のオブジェクトの移動中に指示位置が検出されなくなったときに、最後に検出された指示位置に応じて、任意のオブジェクトと他のオブジェクトとを入れ替える。
【０００９】
上記構成によれば、ユーザが座標入力手段（タッチパネルやマウス等）による画面上の指示位置を移動させることにより、第１の処理方法又は第２の処理方法が選択される。このため、ユーザが複数のオブジェクト（アイコンやサムネイル画像等）のスクロールとオブジェクトの入れ替えとを簡単に選択することが可能になる。なお、第１の処理方法又は第２の処理方法を選択するための判定基準は特に限定されるものではない。例えば、指示位置の移動方向に応じて処理方法を選択する方法、指示位置が最初に検出されてから移動し始めるまでの経過時間に応じて処理方法を選択する方法、指示位置が最初に検出されてから最後に検出されるまでの経過時間に応じて処理方法を選択する方法等が挙げられる。
【００１０】
ところで、画面には、サブセットを構成するオブジェクトが行列表示される。ここで、行列表示とは、行数及び列数がいずれも２以上となるようにオブジェクトをマトリクス状に表示することを意味する。行列表示の一例としては、横に４つ並んだオブジェクトの組を縦に２つ並べた２行４列表示や、横に５つ並んだオブジェクトの組を縦に３つ並べた３行５列表示が挙げられる。このように行列表示されるオブジェクトは、予め設定された表示順で並ぶように画面に表示される。このため、あるオブジェクトを別の２つのオブジェクトの間に挿入するといった処理を行った場合、オブジェクトが移動してできた領域を埋めるように各オブジェクトの表示位置が変化し、その結果、サブセットを構成する各オブジェクトの位置関係が大きく崩れてしまうことになる。このため、予め表示順が設定されたオブジェクトを行列表示する場合には、オブジェクトを別の２つのオブジェクトの間に挿入するといった処理は好ましくない。これに対して、上記構成によれば、第２の処理方法が選択された場合には任意のオブジェクトと他のオブジェクトとが入れ替えられるので、ユーザは、任意のオブジェクトと他のオブジェクトを除く各オブジェクトの位置関係を大きく崩すことなく、任意のオブジェクトを所望の位置に配置することが可能になる。  
【００１１】
オブジェクト表示手段は、サブセットを構成するオブジェクトが配置されたオブジェクト配置領域と、オブジェクトが配置されていないオブジェクト非配置領域とを画面内に表示し、オブジェクト入替手段は、判別手段及び入替処理手段を含んでいてもよい。判別手段は、最後に検出された指示位置に応じて、オブジェクト配置領域及びオブジェクト非配置領域のいずれが指定されたかを判別する。オブジェクト配置領域が指定されたと判別手段によって判別された場合、入替処理手段は、任意のオブジェクトとオブジェクト配置領域内に配置されている他のオブジェクトとを入れ替える。一方、オブジェクト非配置領域が指定されたと判別手段によって判別された場合、入替処理手段は、オブジェクト移動手段によって移動された任意のオブジェクトをオブジェクト非配置領域に配置すると共に、任意のオブジェクトが移動前に配置されていたオブジェクト配置領域をオブジェクト非配置領域に変更する。
【００１２】
この構成によれば、ユーザは、座標入力手段による指示位置を第２の方向へ移動させた際に、指示位置検出手段によって最後に検出される指示位置を変化させることにより、オブジェクトの入れ替えと、オブジェクト非配置領域へのオブジェクトの移動とを簡単に選択することが可能になる。
【００１３】
判別手段による判別は、以下のように行われてもよい。すなわち、判別手段は、最後に検出された指示位置がオブジェクト配置領域内である場合は、オブジェクト配置領域が指定されたと判別する。また、判別手段は、最後に検出された指示位置がオブジェクト非配置領域内である場合は、オブジェクト非配置領域が指定されたと判別する。また、判別手段は、最後に検出された指示位置がオブジェクト配置領域内でもオブジェクト非配置領域内でもない場合は、オブジェクト配置領域及びオブジェクト非配置領域のうち最後に検出された指示位置により近い領域が指定されたと判別する。
【００１４】
この構成によれば、最後に検出された指示位置がオブジェクト配置領域とオブジェクト非配置領域とのどちらでもない場合であっても、これら２つの領域のいずれかが指定されたと判別手段によって判別される。したがって、指示位置検出手段によって最後に検出された指示位置がどのような位置であっても、オブジェクトの入れ替え、又はオブジェクト非配置領域へのオブジェクトの移動を確実に行うことが可能になる。
【００１５】
コンピュータを、行列数変更手段及びオブジェクト表示変更手段として更に機能させてもよい。行列数変更手段は、サブセットを構成するオブジェクトの行数又は列数を変更する。オブジェクト表示変更手段は、行列数変更手段によって変更された行数又は列数に応じて、オブジェクト表示手段により画面内に表示される各オブジェクトの表示位置を変更する。
【００１６】
この構成によれば、サブセットを構成するオブジェクトとして画面内に表示されるオブジェクトの行数又は列数が変更されて、画面内に表示されるオブジェクトの表示位置が変更される。
【００１７】
コンピュータを、行列数変更手段によって変更された行数又は列数を記憶する行列数記憶手段として更に機能させてもよい。この場合、オブジェクト表示手段は、情報処理プログラムの起動時に、サブセットを構成するオブジェクトを行列数記憶手段に記憶されている行数又は列数で画面内に行列表示する。
【００１８】
この構成によれば、情報処理プログラムの終了前に行列数変更手段によって変更された行数又は列数と同じ行列数で、情報処理プログラムの起動時に各オブジェクトを行列表示することが可能になる。すなわち、例えばユーザの選択に基づいてオブジェクトの行数又は列数が変更された場合に、その変更を情報処理プログラムの次回起動時におけるオブジェクトの表示にも反映させることが可能になる。
【００１９】
コンピュータを、第１ボタン及び第２ボタンを画面内に表示するボタン表示手段として更に機能させてもよい。この場合、行列数変更手段は、指示位置検出手段によって検出された指示位置が第１ボタン上であった場合には行数又は列数を増加させ、指示位置検出手段によって検出された指示位置が第２ボタン上であった場合には行数又は列数を減少させる。
【００２０】
ここで、第１ボタン及び第２ボタンは、機能的に互いに対をなすボタンである。このため、第１ボタンが行数を増加させるボタンとして機能する場合には第２ボタンは行数を減少させるボタンとして機能し、第１ボタンが列数を増加させるボタンとして機能する場合には第２ボタンは列数を減少させるボタンとして機能する。
【００２１】
この構成によれば、ユーザは、複数のオブジェクトのスクロールとオブジェクトの入れ替えとを簡単に選択することができるだけでなく、サブセットを構成するオブジェクトのレイアウト（すなわち行数又は列数）を簡単に変更することが可能になる。
【００２２】
コンピュータを、オブジェクト入替手段によってオブジェクトの入れ替えが行われた場合に、入れ替え後のオブジェクトの表示順を記憶する表示順記憶手段として更に機能させてもよい。この場合、オブジェクト表示手段は、情報処理プログラムの起動時に、表示順記憶手段に記憶されている表示順で、サブセットを構成する各オブジェクトを画面内に行列表示する。
【００２３】
この構成によれば、情報処理プログラムの終了前にオブジェクト入替手段によってオブジェクトの入れ替えが行われた後の表示順で、情報処理プログラムの起動時にサブセットを構成する各オブジェクトを表示することが可能になる。すなわち、例えばユーザの選択に基づいてオブジェクトの表示順が変更された場合に、その変更を情報処理プログラムの次回起動時におけるオブジェクトの表示にも反映させることが可能になる。
【００２４】
オブジェクト表示手段は、サブセットを構成する各オブジェクトが予め設定された表示順に従って行方向に並ぶように、１列目から順に、各オブジェクトを並べて表示してもよい。
【００２５】
サブセットを構成するオブジェクトは、１列目から順に、予め設定された表示順に従って行方向に並ぶように行列表示される。このため、任意のオブジェクトを別のオブジェクト間に挿入した場合には、その任意のオブジェクトを挿入するための領域を確保するために、各オブジェクトの表示位置を変化させる必要が生じる。本発明は、このような場合に適用されると好適である。
【００２６】
オブジェクト表示手段は、サブセットを構成するオブジェクトを一行表示又は一列表示可能なものであって、コンピュータを、画面内に表示されているオブジェクトの行数及び列数が共に２以上であるか否かを判定する行列数判定手段として更に機能させてもよい。この場合、オブジェクト入替手段は、行列数判定手段によって行数及び列数が共に２以上であると判定された場合に、最後に検出された指示位置が他のオブジェクト上であるか否かに拘わらず、任意のオブジェクトと他のオブジェクトとを入れ替える。
【００２７】
ユーザによる座標入力手段の操作によっては、指示位置検出手段によって最後に検出される指示位置が、他のオブジェクトと別のオブジェクトとの間となる場合も起こり得る。上記構成によれば、画面内に表示されているオブジェクトの行数及び列数が共に２以上である場合に、最後に検出された指示位置が他のオブジェクト上であるか否かに拘わらず任意のオブジェクトと他のオブジェクトとが入れ替えられるので、プレイヤにオブジェクトの入れ替えをより簡単に選択させることが可能になるだけでなく、オブジェクトを行列表示する場合には好ましくないオブジェクトの挿入ではなくオブジェクトの入れ替えを確実に行うことが可能になる。
【００２８】
オブジェクト表示手段は、サブセットを構成するオブジェクトを一行表示又は一列表示可能なものであって、コンピュータを、画面内に表示されているオブジェクトの行数及び列数が共に２以上であるか否かを判定する行列数判定手段として更に機能させてもよい。この場合、オブジェクト入替手段は、位置判別手段及び入替処理手段を含む。位置判別手段は、行列数判定手段によって行数及び列数が一方でも２以上ではないと判定された場合に、最後に検出された指示位置が、他のオブジェクト上であるか、又は他の２つのオブジェクトの間であるかを判別する。入替処理手段は、位置判別手段によって他のオブジェクト上であると判別された場合には任意のオブジェクトと他のオブジェクトとを入れ替え、位置判別手段によって他の２つのオブジェクトの間であると判別された場合には２つのオブジェクト間に任意のオブジェクトを挿入する。
【００２９】
画面内に表示されているオブジェクトが横一列又は縦一列に並んでいる場合、任意のオブジェクトが他の２つのオブジェクトの間に挿入されたとしても、各オブジェクトの表示位置が横方向又は縦方向にずれるだけでそれらの位置関係が大きく崩れることはない。上記構成によれば、オブジェクトが一行表示又は一列表示される場合には、最後に検出された指示位置が他のオブジェクト上であるか否かに応じて、任意のオブジェクトと他のオブジェクトとの入れ替えと、任意のオブジェクトの挿入とが切り替えられる。したがって、ユーザは、オブジェクトが一行表示又は一列表示される場合でも、各オブジェクトの位置関係を大きく崩すことなく任意のオブジェクトを所望の位置に配置することが可能である。
【００３０】
コンピュータを、任意のオブジェクトを含む２以上のオブジェクトを選択するオブジェクト選択手段として更に機能させてもよい。この場合、オブジェクト移動手段は、処理方法選択手段によって第２の処理方法が選択されたときに、オブジェクト選択手段によって選択された２以上のオブジェクトを指示位置に応じて移動させる。オブジェクト入替手段は、オブジェクト移動手段による２以上のオブジェクトの移動中に指示位置が検出されなくなったときに、最後に検出された指示位置に応じて、２以上のオブジェクトと他の２以上のオブジェクトとを入れ替える。
【００３１】
画面内に多数のオブジェクトが表示されており、各オブジェクトのレイアウトを大幅に変更する場合、指示位置を第２の方向へ移動させる操作をユーザが何度も繰り返す必要がある。これに対して、上記構成がこのような場合に適用されることで、オブジェクトの大幅なレイアウト変更を容易に行うことが可能となる。
【００３２】
処理方法選択手段は、指示位置が第１の方向へ移動した場合には第１の処理方法を選択し、指示位置が第１の方向とは異なる第２の方向へ移動した場合には第２の処理方法を選択してもよい。
【００３３】
この構成によれば、ユーザが座標入力手段を用いて指示位置の移動方向を変化させるだけで、複数のオブジェクトのスクロールとオブジェクトの入れ替えとを簡単に選択することが可能になる。
【００３４】
処理方法選択手段は、指示位置が最初に検出されてから所定時間を経過する前に指示位置が移動した場合には第１の処理方法を選択し、所定時間を経過した後に指示位置が移動した場合には第２の処理方法を選択してもよい。
【００３５】
この構成によれば、ユーザが座標入力手段を用いて指示位置を移動させるまでの時間を変化させるだけで、複数のオブジェクトのスクロールとオブジェクトの入れ替えとを簡単に選択することが可能になる。
【００３６】
ところで、例えば指示位置が第１の方向へ移動した場合には複数のオブジェクトを第１の方向へスクロールさせ、指示位置が第１の方向とは異なる第２の方向へ移動した場合には任意のオブジェクトを他のオブジェクトと入れ替えるようにすると、指示位置を第２の方向へ移動させた場合にはオブジェクトの入れ替えが選択されるので、複数のオブジェクトを第２の方向へスクロール表示させることはできない。これに対して、上記構成によれば、指示位置が最初に検出されてから所定時間が経過する前に指示位置を移動させれば、その移動方向に関わらず第１の処理方法が選択される。このため、例えば、所定時間が経過する前に指示位置が第１の方向へ移動した場合には複数のオブジェクトを第１の方向へスクロール表示させ、所定時間が経過する前に指示位置が第２の方向へ移動した場合には複数のオブジェクトを第２の方向へスクロール表示させるというように、複数のオブジェクトを２以上の方向へスクロール可能な構成を採用することが可能になる。
【００３７】
本発明は、画面に表示される複数のオブジェクトの表示順を座標入力手段を用いてユーザが変更することを可能にする情報処理装置として捉えることもできる。この情報処理装置は、オブジェクト表示手段、指示位置検出手段、処理方法選択手段、スクロール手段、オブジェクト移動手段、及びオブジェクト入替手段を備える。オブジェクト表示手段は、複数のオブジェクトのうちのサブセットを構成するオブジェクトを、予め設定された表示順で並ぶように画面内に行列表示する。指示位置検出手段は、座標入力手段によって指示された画面上の位置を指示位置として検出する。処理方法選択手段は、画面内に表示されているサブセットのうちの任意のオブジェクト上の点を起点として指示位置が移動したときに、予め定められた判定基準に従って、第１の処理方法又は第２の処理方法を選択する。スクロール手段は、処理方法選択手段によって第１の処理方法が選択されたときに、複数のオブジェクトを指示位置の移動に応じてスクロール表示させる。オブジェクト移動手段は、処理方法選択手段によって第２の処理方法が選択されたときに、任意のオブジェクトだけを指示位置に応じて移動させる。オブジェクト入替手段は、オブジェクト移動手段による任意のオブジェクトの移動中に指示位置が検出されなくなったときに、最後に検出された指示位置に応じて、任意のオブジェクトと他のオブジェクトとを入れ替える。
【００３８】
また、本発明は、画面に表示される複数のオブジェクトの表示順を座標入力手段を用いてユーザが変更することを可能にする情報処理システムとして捉えることもできる。この情報処理システムは、オブジェクト表示手段、指示位置検出手段、処理方法選択手段、スクロール手段、オブジェクト移動手段、及びオブジェクト入替手段を備える。オブジェクト表示手段は、複数のオブジェクトのうちのサブセットを構成するオブジェクトを、予め設定された表示順で並ぶように画面内に行列表示する。指示位置検出手段は、座標入力手段によって指示された画面上の位置を指示位置として検出する。処理方法選択手段は、画面内に表示されているサブセットのうちの任意のオブジェクト上の点を起点として指示位置が移動したときに、予め定められた判定基準に従って、第１の処理方法又は第２の処理方法を選択する。スクロール手段は、処理方法選択手段によって第１の処理方法が選択されたときに、複数のオブジェクトを指示位置の移動に応じてスクロール表示させる。オブジェクト移動手段は、処理方法選択手段によって第２の処理方法が選択されたときに、任意のオブジェクトだけを指示位置に応じて移動させる。オブジェクト入替手段は、オブジェクト移動手段による任意のオブジェクトの移動中に指示位置が検出されなくなったときに、最後に検出された指示位置に応じて、任意のオブジェクトと他のオブジェクトとを入れ替える。
【００３９】
また、本発明は、画面に表示される複数のオブジェクトの表示順を座標入力手段を用いてユーザが変更することを可能にする情報処理方法として捉えることもできる。この情報処理方法では、以下の処理が実行される。まず、複数のオブジェクトのうちのサブセットを構成するオブジェクトが、予め設定された表示順で並ぶように画面内に行列表示される。次に、座標入力手段によって指示された画面上の位置が指示位置として検出される。そして、画面内に表示されているサブセットのうちの任意のオブジェクト上の点を起点として指示位置が移動したときに、予め定められた判定基準に従って、第１の処理方法又は第２の処理方法が選択される。この処理の結果、第１の処理方法が選択されたときには、複数のオブジェクトが指示位置の移動に応じてスクロール表示される。一方、第２の処理方法が選択されたときには、任意のオブジェクトだけが指示位置に応じて移動される。そして、任意のオブジェクトの移動中に指示位置が検出されなくなったときに、最後に検出された指示位置に応じて、任意のオブジェクトと他のオブジェクトとが入れ替えられる。
【発明の効果】
【００４０】
本発明によれば、ユーザが複数のオブジェクトのスクロールとオブジェクトの入れ替えとを簡単に選択することができる。また、第２の処理方法が選択された場合には任意のオブジェクトと他のオブジェクトとが入れ替えられるので、ユーザは、各オブジェクトの位置関係を大きく崩すことなく任意のオブジェクトを所望の位置に配置することができる。
【図面の簡単な説明】
【００４１】
【図１】開いた状態のゲーム装置１０の正面図
【図２】開いた状態のゲーム装置１０の右側面図
【図３Ａ】閉じた状態のゲーム装置１０の左側面図
【図３Ｂ】閉じた状態のゲーム装置１０の正面図
【図３Ｃ】閉じた状態のゲーム装置１０の右側面図
【図３Ｄ】閉じた状態のゲーム装置１０の背面図
【図４】ゲーム装置１０の内部構成の一例を示すブロック図
【図５】下側ＬＣＤ１２の画面に表示される画像の一例を示す図
【図６】アイコン５１の表示順を示す図
【図７】下側ＬＣＤ１２の画面に表示される画像の一例を示す図
【図８】下側ＬＣＤ１２の画面に表示される画像の一例を示す図
【図９】下側ＬＣＤ１２の画面に表示される画像の一例を示す図
【図１０】下側ＬＣＤ１２の画面に表示される画像の一例を示す図
【図１１】下側ＬＣＤ１２の画面に表示される画像の一例を示す図
【図１２】下側ＬＣＤ１２の画面に表示される画像の一例を示す図
【図１３】アイコン５１の表示順を示す図
【図１４】下側ＬＣＤ１２の画面に表示される画像の一例を示す図
【図１５】下側ＬＣＤ１２の画面に表示される画像の一例を示す図
【図１６】下側ＬＣＤ１２の画面に表示される画像の一例を示す図
【図１７】アイコン５１の表示順を示す図
【図１８】下側ＬＣＤ１２の画面に表示される画像の一例を示す図
【図１９】下側ＬＣＤ１２の画面に表示される画像の一例を示す図
【図２０】下側ＬＣＤ１２の画面に表示される画像の一例を示す図
【図２１】メインメモリ３２のメモリマップ
【図２２】起動モード時にＣＰＵ３１１によって実行される処理の一例を示すフローチャート
【図２３】表示変更モード時にＣＰＵ３１１によって実行される処理の一例を示すフローチャート
【図２４】ドラッグモード時にＣＰＵ３１１によって実行される処理の一例を示すフローチャート
【図２５】起動モード時にＣＰＵ３１１によって実行される処理の変形例を示すフローチャート
【図２６】アイコンを行列表示した場合の問題点について説明するための図
【発明を実施するための形態】
【００４２】
以下、適宜図面を参照しつつ、本発明の一実施形態に係る情報処理プログラムを実行する情報処理装置について説明する。なお、本発明の情報処理プログラム及び情報処理装置は任意のコンピュータシステムに適用可能であるが、本実施形態では、情報処理装置の一例としての携帯型のゲーム装置１０において、外部メモリ４５に記録されている情報処理プログラムが実行される場合を例に説明する。
【００４３】
［ゲーム装置１０の構成］
図１は、開いた状態のゲーム装置１０の正面図である。図２は、開いた状態のゲーム装置１０の右側面図である。図３Ａは、閉じた状態のゲーム装置１０の左側面図である。図３Ｂは、閉じた状態のゲーム装置１０の正面図である。図３Ｃは、閉じた状態のゲーム装置１０の右側面図である。図３Ｄは、閉じた状態のゲーム装置１０の背面図である。
【００４４】
ゲーム装置１０は、画像を撮像する撮像部を有しており、撮像された画像を画面に表示したり、撮像された画像のデータを保存したりすることが可能である。また、ゲーム装置１０は、交換可能なメモリカード（外部メモリ４５）内に記憶されたプログラム、又はサーバや他のゲーム装置から受信したプログラムを実行可能である。ゲーム装置１０は、これらのプログラムを実行することにより、仮想空間に設定された仮想カメラで撮像した画像をコンピュータグラフィックス処理して生成した画像を画面に表示することもできる。
【００４５】
ゲーム装置１０は、下側ハウジング１１及び上側ハウジング２１を備える。上側ハウジング２１は、下側ハウジング１１に対して開閉可能に連結されている。このため、ゲーム装置１０は、折り畳みが可能である。このゲーム装置１０は、図１に例示されるように開いた状態で使用され、未使用時には閉じた状態（図３Ａ〜図３Ｄ参照）で保管される。
【００４６】
［下側ハウジング１１の構成］
下側ハウジング１１には、下側ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ：液晶表示装置）１２、タッチパネル１３、各操作ボタン１４Ａ〜１４Ｌ（図１、図３Ａ〜図３Ｄ）、アナログスティック１５、ＬＥＤ１６Ａ，１６Ｂ、挿入口１７、及びマイクロフォン用孔１８が設けられている。
【００４７】
下側ＬＣＤ１２は、縦方向よりも横方向に長い表示画面を有しており、下側ハウジング１１の内側面１１Ｂにおける中央に設けられている。下側ＬＣＤ１２の画素数は、特に限定されるものではないが、一例として、２５６ｄｏｔ×１９２ｄｏｔ（横×縦）である。下側ＬＣＤ１２は、後述する上側ＬＣＤ２２とは異なり、画像を（立体視可能ではなく）平面的に表示する表示装置である。
【００４８】
なお、本実施形態では表示装置としてＬＣＤを用いているが、例えばＥＬ（Ｅｌｅｃｔｒｏ  Ｌｕｍｉｎｅｓｃｅｎｃｅ：電界発光）を利用した表示装置など、他の任意の表示装置を利用してもよい。
【００４９】
図１に示されるように、ゲーム装置１０は、座標入力手段として機能するタッチパネル１３を備えている。タッチパネル１３は、下側ＬＣＤ１２の画面上を覆うように装着されている。本実施形態では、タッチパネル１３は、例えば抵抗膜方式のタッチパネルが用いられる。ただし、タッチパネル１３は、抵抗膜方式に限らず、例えば静電容量方式等、任意の押圧式のタッチパネルを用いることができる。本実施形態では、タッチパネル１３として、下側ＬＣＤ１２の解像度と同解像度（検出精度）のものを利用する。ただし、必ずしもタッチパネル１３の解像度と下側ＬＣＤ１２の解像度とが一致している必要はない。
【００５０】
下側ハウジング１１の上側面には挿入口１７（図１及び図３Ｄに示す破線）が設けられている。挿入口１７は、タッチパネル１３に対する操作を行うために用いられるタッチペン２８を収納することができる。なお、タッチパネル１３に対する入力は通常タッチペン２８を用いて行われるが、タッチペン２８に限らず、ユーザの指でタッチパネル１３に対する入力を行うことも可能である。
【００５１】
各操作ボタン１４Ａ〜１４Ｌは、所定の入力を行うための入力装置である。図１に示されるように、下側ハウジング１１の内側面１１Ｂには、各操作ボタン１４Ａ〜１４Ｌのうち、十字ボタン１４Ａ、ボタン１４Ｂ、ボタン１４Ｃ、ボタン１４Ｄ、ボタン１４Ｅ、電源ボタン１４Ｆ、セレクトボタン１４Ｊ、ＨＯＭＥボタン１４Ｋ、及びスタートボタン１４Ｌが設けられている。ボタン１４Ａ〜１４Ｅ、セレクトボタン１４Ｊ、ＨＯＭＥボタン１４Ｋ、及びスタートボタン１４Ｌには、ゲーム装置１０が実行するプログラムに応じた機能が適宜割り当てられる。例えば、十字ボタン１４Ａは選択操作等に用いられ、各操作ボタン１４Ｂ〜１４Ｅは例えば決定操作やキャンセル操作等に用いられる。また、電源ボタン１４Ｆは、ゲーム装置１０の電源をオン／オフするために用いられる。
【００５２】
アナログスティック１５は、方向を指示するデバイスであり、下側ハウジング１１の内側面１１Ｂにおける下側ＬＣＤ１２の左側に設けられている。このアナログスティック１５及び十字ボタン１４Ａは、下側ハウジング１１を把持したユーザの左手の親指で操作可能な位置に設けられている。アナログスティック１５は、そのキートップが、下側ハウジング１１の内側面１１Ｂに平行にスライドするように構成されており、ゲーム装置１０が実行するプログラムに応じて機能する。
【００５３】
下側ハウジング１１の内側面１１Ｂには、マイクロフォン用孔１８が設けられている。後述するが、下側ハウジング１１の内部には、マイクロフォン用孔１８と対応する位置に音声入力装置としてのマイク４３（図４参照）が設けられている。マイクロフォン用孔１８を介して入力された音がマイク４３によって検出される。
【００５４】
図３Ｂ及び図３Ｄに示されるように、下側ハウジング１１の上面には、Ｌボタン１４Ｇ及びＲボタン１４Ｈが設けられている。Ｌボタン１４Ｇは、下側ハウジング１１の上面の左端部に設けられ、Ｒボタン１４Ｈは、下側ハウジング１１の上面の右端部に設けられている。Ｌボタン１４Ｇ及びＲボタン１４Ｈは、例えば撮像部のシャッターボタン（撮影指示ボタン）として機能する。また、図３Ａに示されるように、下側ハウジング１１の左側面には、音量ボタン１４Ｉが設けられている。音量ボタン１４Ｉは、ゲーム装置１０が備えるスピーカ４４（図４参照）の音量を調整するために用いられる。
【００５５】
図３Ａに示されるように、下側ハウジング１１の左側面には開閉可能なカバー部１１Ｃが設けられている。このカバー部１１Ｃの内側には、ゲーム装置１０とデータ保存用外部メモリ４６（図１参照）とを電気的に接続するためのコネクタ（図示せず）が設けられている。データ保存用外部メモリ４６は、上記コネクタに着脱可能に装着される。データ保存用外部メモリ４６は、例えば、ゲーム装置１０によって撮像された画像のデータを記憶（保存）するために用いられる。なお、上記コネクタおよびそのカバー部１１Ｃは、下側ハウジング１１の右側面に設けられてもよい。
【００５６】
図３Ｄに示されるように、下側ハウジング１１の上面には、挿入口１１Ｄが設けられている。挿入口１１Ｄには、情報処理プログラムを記録した記録媒体としての外部メモリ４５（図１参照）が挿入される。挿入口１１Ｄの内部には、外部メモリ４５が着脱可能に装着されるコネクタ（図示せず）が設けられている。外部メモリ４５がこのコネクタに装着されることによって外部メモリ４５とゲーム装置１０とが電気的に接続され、情報処理プログラムが実行される。なお、上記コネクタ及び挿入口１１Ｄは、下側ハウジング１１の他の面（例えば、右側面等）に設けられてもよい。
【００５７】
図１に示されるように、下側ハウジング１１の下面には、第１ＬＥＤ１６Ａが設けられている。この第１ＬＥＤ１６Ａは、ゲーム装置１０の電源のＯＮ／ＯＦＦ状況をユーザに通知する。図３Ｃに示されるように、下側ハウジング１１の右側面には、第２ＬＥＤ１６Ｂが設けられている。ゲーム装置１０は、他の機器との間で無線通信を行うことが可能に構成されている。第２ＬＥＤ１６Ｂは、ゲーム装置１０の無線通信の確立状況をユーザに通知するものであり、他の機器との無線通信が確立している場合に点灯する。ゲーム装置１０は、例えば、ＩＥＥＥ８０２．１１．ｂ／ｇの規格に準拠した方式により、無線ＬＡＮに接続する機能を有する。下側ハウジング１１の右側面には、この無線通信の機能を有効／無効にする無線スイッチ１９が設けられている（図３Ｃ参照）。
【００５８】
［上側ハウジング２１の構成］
上側ハウジング２１には、上側ＬＣＤ２２、２つの外側撮像部２３（外側左撮像部２３Ａ及び外側右撮像部２３Ｂ）、内側撮像部２４、３Ｄ調整スイッチ２５、及び３Ｄインジケータ２６が設けられている。
【００５９】
図１に示されるように、上側ハウジング２１の内側面（主面）２１Ｂに上側ＬＣＤ２２が設けられている。上側ＬＣＤ２２は、縦方向よりも横方向に長い表示画面を有しており、上側ハウジング２１の中央に設けられている。上側ＬＣＤ２２の画素数は、特に限定されるものではないが、一例として６４０ｄｏｔ×２００ｄｏｔ（横×縦）である。なお、本実施形態では、上側ＬＣＤ２２が液晶表示装置であるが、例えばＥＬを利用した表示装置などが利用されてもよい。
【００６０】
上側ＬＣＤ２２は、立体視可能な画像を表示することが可能な表示装置である。上側ＬＣＤ２２は、実質的に同一の表示領域を用いて左目用画像と右目用画像とを表示することが可能である。具体的には、上側ＬＣＤ２２は、左目用画像と右目用画像とが所定単位で（例えば、１列ずつ）横方向に交互に表示される方式の表示装置である。なお、上側ＬＣＤ２２は、左目用画像と右目用画像とが交互に表示される方式の表示装置であってもよい。また、上側ＬＣＤ２２は、裸眼立体視可能な表示装置である。この場合、上側ＬＣＤ２２は、横方向に交互に表示される左目用画像と右目用画像とを左目および右目のそれぞれに分解して見えるようにレンチキュラー方式やパララックスバリア方式（視差バリア方式）のものが用いられる。本実施形態では、上側ＬＣＤ２２は、パララックスバリア方式のものとする。上側ＬＣＤ２２は、右目用画像と左目用画像とを用いて、裸眼で立体視可能な画像（立体画像）を表示する。すなわち、上側ＬＣＤ２２は、視差バリアを用いてユーザの左目に左目用画像をユーザの右目に右目用画像をそれぞれ視認させることにより、ユーザにとって立体感のある立体画像（立体視可能な画像）を表示することができる。また、上側ＬＣＤ２２は、上記視差バリアを無効にすることが可能であり、視差バリアを無効にした場合は、画像を平面的に表示することができる（上述した立体視とは反対の意味で平面視の画像を表示することができる。
【００６１】
外側撮像部２３は、図３Ｂに示されるように、上側ハウジング２１の外側面（上側ＬＣＤ２２が設けられた主面と反対側の面）２１Ｄに設けられている。この外部撮像部２３は、外側左撮像部２３Ａ及び外側右撮像部２３Ｂから構成されている。外側左撮像部２３Ａ及び外側右撮像部２３Ｂは、それぞれ所定の共通の解像度を有する撮像素子（例えば、ＣＣＤイメージセンサやＣＭＯＳイメージセンサ等）と、レンズとを含む。レンズは、ズーム機構を有するものでもよい。
【００６２】
外側左撮像部２３Ａ及び外側右撮像部２３Ｂの撮像方向は、いずれも外側面２１Ｄの外向きの法線方向である。また、外側左撮像部２３Ａの撮像方向及び外側右撮像部２３Ｂの撮像方向は、互いに平行である。外側左撮像部２３Ａと外側右撮像部２３Ｂとは、ゲーム装置１０が実行するプログラムによって、ステレオカメラとして使用することが可能である。また、プログラムによっては、２つの外側撮像部（外側左撮像部２３Ａ及び外側右撮像部２３Ｂ）のいずれか一方を単独で用いて、外側撮像部２３を非ステレオカメラとして使用することも可能である。また、プログラムによっては、２つの外側撮像部（外側左撮像部２３Ａ及び外側右撮像部２３Ｂ）で撮像した画像を合成して又は補完的に使用することにより撮像範囲を広げた撮像を行うことも可能である。
【００６３】
外側左撮像部２３Ａ及び外側右撮像部２３Ｂは、図１に示されるように、ユーザが上側ＬＣＤ２２の画面を正面から視認した場合に、外側左撮像部２３Ａが左側に位置すると共に外側右撮像部２３Ｂが右側に位置するように設けられている。外側撮像部２３をステレオカメラとして使用する場合、外側左撮像部２３Ａは、ユーザの左目で視認される左目用画像を撮像し、外側右撮像部２３Ｂは、ユーザの右目で視認される右目用画像を撮像する。なお、外側左撮像部２３Ａ及び外側右撮像部２３Ｂの間隔は、人間の両目の間隔程度に設定されている。
【００６４】
内側撮像部２４は、上側ハウジング２１の内側面（主面）２１Ｂに設けられており、外部撮像部２３とは反対方向を撮像する撮像部である。このため、ユーザが上側ＬＣＤ２２を静止した状態で、内側撮像部２４によりユーザの顔を正面から撮像することができる。内側撮像部２４は、所定の解像度を有する撮像素子（例えば、ＣＣＤイメージセンサやＣＭＯＳイメージセンサ等）と、レンズとを含む。レンズは、ズーム機構を有するものでもよい。
【００６５】
図１，図２，図３Ｃに示されるように、上側ハウジング２１の内側面及び右側面の端部に３Ｄ調整スイッチ２５が設けられている。３Ｄ調整スイッチ２５は、上側ＬＣＤ２２に表示された立体視可能な画像（立体画像）の立体感を調整するために用いられる。この３Ｄ調整スイッチ２５は、所定方向（例えば、上下方向）へスライド可能なスライダを有している。例えば、３Ｄ調整スイッチ２５のスライダが最下点位置に配置されている場合、上側ＬＣＤ２２が平面表示モードに設定され、上側ＬＣＤ２２の画面には平面画像が表示される。一方、上記最下点位置より上側にスライダが配置されている場合、上側ＬＣＤ２２は立体表示モードに設定される。この場合、上側ＬＣＤ２２の画面には立体視可能な画像が表示される。ここで、スライダが上記最下点位置より上側に配置されている場合、スライダの位置に応じて、立体画像の見え方が調整される。具体的には、スライダの位置に応じて、右目用画像及び左目用画像における横方向の位置のずれ量が調整される。
【００６６】
図１に示されるように、上側ハウジング２１の内側面２１Ｂに３Ｄインジケータ２６が設けられている。３Ｄインジケータ２６は、上側ＬＣＤ２２が立体表示モードか否かを示す。例えば、３Ｄインジケータ２６は、ＬＥＤであり、上側ＬＣＤ２２の立体表示モードが有効である場合に点灯する。
【００６７】
また、上側ハウジング２１の内側面２１Ｂには、スピーカ孔２１Ｅが形成されており、後述するスピーカ４４（図４参照）からの音声がこのスピーカ孔２１Ｅを介して出力される。
【００６８】
［ゲーム装置１０の内部構成］
次に、図４を参照しつつ、ゲーム装置１０の内部構成について説明する。ここで、図４は、ゲーム装置１０の内部構成の一例を示すブロック図である。
【００６９】
図４に示されるように、ゲーム装置１０は、情報処理部３１、メインメモリ３２、外部メモリインターフェース（外部メモリＩ／Ｆ）３３、データ保存用外部メモリＩ／Ｆ３４、データ保存用内部メモリ３５、無線通信モジュール３６、ローカル通信モジュール３７、リアルタイムクロック（ＲＴＣ）３８、加速度センサ３９、角速度センサ４０、電源回路４１、及びインターフェース回路（Ｉ／Ｆ回路）４２等の電子部品を備えている。これらの電子部品は、電子回路基板上に実装されて下側ハウジング１１（又は上側ハウジング２１）内に収納されている。
【００７０】
情報処理部３１は、所定のプログラムを実行するためのＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３１１、画像処理を行うＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３１２等を含む情報処理手段である。本実施形態では、情報処理プログラムがゲーム装置１０内のメモリ（例えば外部メモリＩ／Ｆ３３に接続された外部メモリ４５やデータ保存用内部メモリ３５）に記憶されている。ＣＰＵ３１１は、この情報処理プログラムを実行することによって、オブジェクトの表示順を変更するといった情報処理を実行する。なお、ＣＰＵ３１１によって実行される情報処理プログラムは、他の機器との通信によって他の機器から取得されてもよい。
【００７１】
情報処理部３１は、ＶＲＡＭ（Ｖｉｄｅｏ  ＲＡＭ）３１３を含む。ＧＰＵ３１２は、ＣＰＵ３１１からの命令に応じて画像をＶＲＡＭ３１３に描画する。そして、ＧＰＵ３１２は、ＶＲＡＭ３１３に描画された画像を上側ＬＣＤ２２及び／又は下側ＬＣＤ１２に出力し、上側ＬＣＤ２２及び／又は下側ＬＣＤ１２に当該画像が表示される。
【００７２】
情報処理部３１には、メインメモリ３２、外部メモリＩ／Ｆ３３、データ保存用外部メモリＩ／Ｆ３４、及びデータ保存用内部メモリ３５が接続される。外部メモリＩ／Ｆ３３は、外部メモリ４５を着脱自在に接続するためのインターフェースである。データ保存用外部メモリＩ／Ｆ３４は、データ保存用外部メモリ４６を着脱自在に接続するためのインターフェースである。
【００７３】
メインメモリ３２は、ＣＰＵ３１１のワーク領域やバッファ領域として用いられる揮発性の記憶手段である。すなわち、メインメモリ３２は、画像処理やゲーム処理で用いられる各種データを一時的に記憶したり、外部（外部メモリ４５や他の機器等）から取得されるプログラムを一時的に記憶したりする。本実施形態では、メインメモリ３２として例えばＰＳＲＡＭ（Ｐｓｅｕｄｏ−ＳＲＡＭ）が用いられる。
【００７４】
外部メモリ４５は、情報処理部３１によって実行されるプログラムを記憶する不揮発性の記憶手段である。外部メモリ４５は、例えば読み取り専用の半導体メモリで構成される。外部メモリ４５が外部メモリＩ／Ｆ３３に接続されると、情報処理部３１は外部メモリ４５に記憶されたプログラムを読み込むことができる。情報処理部３１が読み込んだプログラムを実行することにより、所定の処理が行われる。
【００７５】
データ保存用外部メモリ４６は、不揮発性の読み書き可能なメモリ（例えばＮＡＮＤ型フラッシュメモリ）で構成され、所定のデータを格納するために用いられる。例えば、データ保存用外部メモリ４６には、外側撮像部２３で撮像された画像や他の機器で撮像された画像が記憶される。データ保存用外部メモリ４６がデータ保存用外部メモリＩ／Ｆ３４に接続されると、情報処理部３１はデータ保存用外部メモリ４６に記憶された画像を読み込み、上側ＬＣＤ２２及び／又は下側ＬＣＤ１２に当該画像を表示することができる。
【００７６】
データ保存用内部メモリ３５は、読み書き可能な不揮発性メモリ（例えばＮＡＮＤ型フラッシュメモリ）で構成され、所定のデータを格納するために用いられる。例えば、データ保存用内部メモリ３５には、無線通信モジュール３６を介した無線通信によってダウンロードされたデータやプログラムが格納される。
【００７７】
無線通信モジュール３６は、例えばＩＥＥＥ８０２．１１．ｂ／ｇの規格に準拠した方式により、無線ＬＡＮに接続する機能を有する。ローカル通信モジュール３７は、所定の通信方式（例えば赤外線通信）により同種のゲーム装置との間で無線通信を行う機能を有する。情報処理部３１は、無線通信モジュール３６を用いてインターネットを介して他の機器との間でデータを送受信したり、ローカル通信モジュール３７を用いて同種の他のゲーム装置との間でデータを送受信したりすることができる。
【００７８】
加速度センサ３９は、３軸（本実施形態では、ｘｙｚ軸）方向に沿った直線方向の加速度（直線加速度）の大きさを検出する。加速度センサ３９は、例えば下側ハウジング１１の内部に設けられる。加速度センサ３９は、図１に示されるように、下側ハウジング１１の長手方向をｘ軸、下側ハウジング１１の短手方向をｙ軸、下側ハウジング１１の内側面（主面）１１Ｂに対して垂直な方向をｚ軸として、ゲーム装置１０の各軸方向へ生じる直線加速度の大きさをそれぞれ検出する。なお、加速度センサ３９は、例えば静電容量式の加速度センサとするが、他の方式の加速度センサを用いるようにしてもよい。また、加速度センサ３９は１軸または２軸方向を検出する加速度センサであってもよい。情報処理部３１は、加速度センサ３９が検出した加速度を示すデータ（加速度データ）を受信して、ゲーム装置１０の姿勢や動きを算出する。
【００７９】
角速度センサ４０は、ゲーム装置１０の３軸（本実施形態では、ｘｙｚ軸）周りに生じる角速度をそれぞれ検出し、検出した角速度を示すデータ（角速度データ）を情報処理部３１へ出力する。角速度センサ４０は、例えば下側ハウジング１１の内部に設けられる。情報処理部３１は、角速度センサ４０から出力された角速度データを受信して、ゲーム装置１０の姿勢や動きを算出する。
【００８０】
情報処理部３１には、ＲＴＣ３８及び電源回路４１が接続される。ＲＴＣ３８は、時間をカウントして情報処理部３１に出力する。情報処理部３１は、ＲＴＣ３８によって計時された時間に基づき現在時刻（日付）を計算する。電源回路４１は、ゲーム装置１０が有する電源（下側ハウジング１１に収納される充電式電池）からの電力を制御し、ゲーム装置１０の各部品に電力を供給する。
【００８１】
Ｉ／Ｆ回路４２には、マイク４３、スピーカ４４、及びタッチパネル１３が接続される。具体的には、Ｉ／Ｆ回路４２には、図示しないアンプを介してスピーカ４４が接続される。マイク４３は、ユーザの音声を検知して音声信号をＩ／Ｆ回路４２に出力する。アンプは、Ｉ／Ｆ回路４２からの音声信号を増幅し、音声をスピーカ４４から出力させる。Ｉ／Ｆ回路４２は、マイク４３及びスピーカ４４（アンプ）の制御を行う音声制御回路と、タッチパネル１３の制御を行うタッチパネル制御回路とを含む。音声制御回路は、音声信号に対するＡ／Ｄ変換及びＤ／Ａ変換を行ったり、音声信号を所定の形式の音声データに変換したりする。タッチパネル制御回路は、タッチパネル１３からの信号に基づいて所定の形式のタッチ位置データを生成して情報処理部３１に出力する。タッチ位置データは、タッチパネル１３の入力面において入力が行われた位置（タッチ位置）の座標を示すデータである。なお、タッチパネル制御回路は、タッチパネル１３からの信号の読み込み、及びタッチ位置データの生成を所定時間に１回の割合で行う。情報処理部３１は、タッチ位置データを取得することにより、タッチパネル１３に対して入力が行われたタッチ位置を取得することができる。
【００８２】
操作ボタン１４は、上記各操作ボタン１４Ａ〜１４Ｌからなり、情報処理部３１に接続される。操作ボタン１４から情報処理部３１へは、各操作ボタン１４Ａ〜１４Ｉに対する入力状況（押下されたか否か）を示す操作データが出力される。情報処理部３１は、操作ボタン１４から操作データを取得することによって、操作ボタン１４に対する入力に応じた処理を実行する。
【００８３】
ユーザがタッチパネル１３や操作ボタン１４を用いた所定の操作を行うことにより、使用する撮像部が選択される。情報処理部３１は、この選択結果に応じて、外側撮像部２３及び内側撮像部２４のいずれか一方に対して撮像を指示する。これに対して、外側撮像部２３及び内側撮像部２４は、情報処理部３１からの指示に従って画像を撮像し、撮像した画像データを情報処理部３１に出力する。
【００８４】
下側ＬＣＤ１２及び上側ＬＣＤ２２は、情報処理部３１（ＧＰＵ３１２）の指示に従って画像を表示する。情報処理部３１は、例えば、外部撮像部２３によって撮像された右目用画像と左目用画像とを用いた立体画像（立体視可能な画像）を上側ＬＣＤ２２に表示させる。また、情報処理部３１は、所定のプログラムを起動させるための各種アイコンを含むメニュー画面を下側ＬＣＤ１２に表示させる。このメニュー画面については、後に詳述する。
【００８５】
３Ｄ調整スイッチ２５は、スライダの位置に応じた電気信号を情報処理部３１に出力する。これに対して、情報処理部３１（ＣＰＵ３１１）は、３Ｄ調整スイッチ２５からの電気信号に基づいて上側ＬＣＤ２２の表示モードを設定する。情報処理部３１は、３Ｄインジケータ２６の点灯を制御する。例えば、情報処理部３１は、上側ＬＣＤ２２が立体表示モードである場合、３Ｄインジケータ２６を点灯させる。
【００８６】
なお、上述したハードウェア構成は単なる一例に過ぎず、ゲーム装置１０の構成は適宜変更可能である。
【００８７】
［情報処理プログラムに基づく画面表示の概要］
ゲーム装置１０では、外部メモリ４５からメインメモリ３２にロードされた情報処理プログラムが情報処理部３１のＣＰＵ３１１によって実行される。これにより、下側ＬＣＤ１２に表示される複数のアイコン５１のレイアウトをユーザがタッチパネル１３を用いて自由に変更することが可能になる。以下、図５〜図２０を参照しつつ、情報処理プログラムに基づくゲーム装置１０の動作の概要を説明する。なお、本実施形態では、本発明におけるオブジェクトがアイコン５１である場合を例に説明するが、本発明におけるオブジェクトはアイコンに限定されるものではなく、サムネイル画像やボタン等であってもよい。
【００８８】
図５は、アイコン５１が一行表示されたメニュー画面の一例を示す下側ＬＣＤ１２の画面図である。図６は、アイコン５１の表示順を示す図である。
【００８９】
図５に示されるメニュー画面には、選択可能な３つのアイコン５１（アイコン５１ａ，５１ｂ，５１ｃ）、吹き出し５２、右スライドタブ５３、左スライドタブ５４、行増加ボタン５５（第１ボタンの一例）、及び行減少ボタン５６（第２ボタンの一例）が表示されている。
【００９０】
アイコン５１は、ＣＰＵ３１１によって実行されるプログラムに関連付けられた画像である。ユーザは、下側ＬＣＤ１２の画面に表示されるアイコン５１ａ〜５１ｖの中からアイコンを任意に選択することによって、所望のプログラムをＣＰＵ３１１に実行させることができる。タッチパネル１３がタッチペン２８でタッチされると、そのタッチ位置に位置するアイコン５１（図５ではアイコン５１ｂ）がハイライト（例えば輪郭強調）される。そして、アイコン５１上に位置するタッチペン２８がタッチパネル１３から離されると、そのアイコン５１のハイライトが解除されると共にアイコン５１に対応するプログラムが実行される。なお、以下の説明では、タッチパネル１３がタッチペン２８でタッチされることを「タッチオン」と言い、タッチペン２８がタッチパネル１３から離されることを「タッチオフ」と言う。また、タッチペン２８がタッチオンされた位置を「タッチオン位置」と言い、タッチペン２８がタッチオフされる際にタッチペン２８が最後にタッチされていたタッチパネル１３上の位置を「タッチオフ位置」と言う。
【００９１】
本実施形態では、全部で２２個のアイコン５１（アイコン５１ａ〜５１ｖ）の表示順が設定されており、この表示順に従って、これら２２個のアイコン５１の一部（サブセット）が下側ＬＣＤ１２の画面に表示される。下側ＬＣＤ１２の表示画面には、アイコン表示領域（オブジェクト配置領域）及びアイコン空領域５８（オブジェクト非配置領域）が含まれている。
【００９２】
アイコン表示領域は、下側ＬＣＤ１２の表示画面全域のうち、アイコン５１ａ〜５１ｖのうちのいずれかのアイコンが配置されている領域である。図５に例示されたメニュー画面では、３つのアイコン表示領域にそれぞれアイコン５１ａ、アイコン５１ｂ、及びアイコン５１ｃが配置されている。このように、アイコン表示領域は各アイコン５１が配置されている領域であるため、図には表れていない。
【００９３】
アイコン空領域５８は、アイコン５１が配置されていない領域である。図６に示される例では、２つのアイコン空領域５８が設定されている。具体的には、アイコン５１ｊの次にアイコン空領域５８ａが設定されると共に、アイコン５１ｓの次にアイコン空領域５８ｂが設定されている。このため、アイコン５１ｊ及びアイコン５１ｋが共に下側ＬＣＤ１２の画面に表示される際には、アイコン５１ｊとアイコン５１ｋとの間にアイコン５１が配置されていない空き領域（アイコン空領域５８ａ）が表示されることになる（図８参照）。これは、アイコン空領域５８ｂについても同様である。
【００９４】
このように、ゲーム装置１０では、２２個のアイコン５１ａ〜５１ｖだけでなく、２個のアイコン空領域５８を含めた表示順が設定されている。なお、この設定は、ユーザが任意のアイコン５１と他のアイコン５１とを入れ替えたり、或いは任意のアイコン５１をアイコン空領域５８に移動させたりすることによって適宜変更される。
【００９５】
吹き出し５２は、下側ＬＣＤ１２の画面中央に表示されているアイコン（図５に示される例ではアイコン５１ｂ）に関する説明文（そのアイコンに対応するプログラムの説明など）をユーザに報知する画像である。また、下側ＬＣＤ１２の画面中央に表示されているアイコン以外のアイコンがタッチペン２８でタッチされると、吹き出し５２は、タッチされたアイコンに関する説明文を表示する。
【００９６】
右スライドタブ５３は、下側ＬＣＤ１２の画面の左端に表示され、左スライドタブ５４は、下側ＬＣＤ１２の画面の右端に表示されている。右スライドタブ５３及び左スライドタブ５４は、アイコン空領域５８を含むアイコン５１ａ〜５１ｖを、１つのアイコン行列として左右（水平方向）にスクロールさせるためのものである。右スライドタブ５３及び左スライドタブ５４を用いたアイコン行列のスクロールについては、後に詳述する。
【００９７】
図７は、アイコン５１が２行表示されたメニュー画面の一例を示す下側ＬＣＤ１２の画面図である。図８は、アイコン５１が３行表示されたメニュー画面の一例を示す下側ＬＣＤ１２の画面図である。
【００９８】
図５、図７、及び図８に示されるように、下側ＬＣＤ１２の画面内の上部には、行増加ボタン５５、及び行減少ボタン５６が表示されている。行増加ボタン５５は、下側ＬＣＤ１２の画面内に表示されるアイコン５１の行数を増加させるためのボタンである。ユーザは、タッチペン２８を用いて行増加ボタン５５を選択することにより、下側ＬＣＤ１２の画面内に表示されるアイコン５１の行数を、例えば６行を上限として増加させることができる。なお、アイコン５１が６行表示されると、行増加ボタン５５がグレー色で表示されて、それ以上の行増加が禁止される。
【００９９】
図５に例示されるメニュー画面が下側ＬＣＤ１２に表示されている状態でタッチペン２８により行増加ボタン５５が選択された場合、図７に示されるように、画面上でアイコン行列を構成するアイコン５１の行数が増加すると共に、各アイコンの表示位置が変更される。具体的には、アイコン５１ａの右隣に配置されていたアイコン５１ｂがアイコン５１ａの下に配置され、アイコン５１ｂの右隣に配置されていたアイコン５１ｃがアイコン５１ａの右隣に配置される。そして、画面の端部で一部が表示されていたアイコン５１ｄが、アイコン５１ｃの下に配置され、更に、画面に表示されていなかったアイコン５１ｅ〜５１ｊが画面に表示される。このように、行増加ボタン５５が選択された場合、予め設定された表示順に従って、各アイコン５１が行方向に並ぶように、１列目から順に、並べて表示される。
【０１００】
一方の行減少ボタン５６は、下側ＬＣＤ１２の画面内に表示されるアイコン５１の行数を減少させるためのボタンである。ユーザは、タッチペン２８を用いて行減少ボタン５６を選択することにより、下側ＬＣＤ１２の画面内に表示されるアイコン５１の行数を、１行を下限として減少させることができる。なお、図５に例示されるようにアイコン５１が一行表示されると、行減少ボタン５６がグレー色で表示されて、それ以上の行減少が禁止される。
【０１０１】
次に、図８〜図１０を参照しつつ、アイコン５１のドラッグ操作によるアイコン行列のスクロールについて説明する。ここで、図９は、下側ＬＣＤ１２の画面に表示される画像の一例を示す図であり、アイコン５１ｈが左方向にドラッグされる様子を示す。図１０は、下側ＬＣＤ１２の画面に表示される画像の一例を示す図であり、アイコン５１ｈが左方向にドラッグされた後の状態を示す。
【０１０２】
図８に示される状態において、ユーザがアイコン行列の中のいずれかのアイコン５１をタッチペン２８でタッチしたままタッチペン２８を左方向にスライド（タッチペン２８を画面に接触したまま滑らせる）させた場合には、図８〜図１０に示されるように、アイコン行列がタッチペン２８のスライド量に応じた距離だけ左方向にスクロールする。逆に、ユーザがアイコン行列の中のいずれかのアイコン５１をタッチペンでタッチしたままタッチペン２８を右方向にスライドさせた場合には、アイコン行列がタッチペン２８のスライド量に応じた距離だけ右方向にスクロールする。このように下側ＬＣＤ１２の画面に表示されているアイコン５１（図９に示される例ではアイコン５１ｈ）をタッチペン２８でタッチしてからタッチペン２８を水平方向（本発明の第１方向に相当）にスライドさせることによって、ユーザは、アイコン行列を左右にスクロールさせることができる。なお、アイコン行列の中のアイコン５１に配置されていない領域（複数のアイコン５１の間の領域）をタッチペン２８でタッチしたままタッチペン２８を水平方向にスライドさせた場合も同様に、アイコン行列を左右にスクロールさせることができる。
【０１０３】
続いて、図１１〜図１３を参照しつつ、ドラッグ操作によるアイコン５１の移動について説明する。ここで、図１１は、下側ＬＣＤ１２の画面に表示される画像の一例を示す図であり、アイコン５１ｄがアイコン空領域５８ａ上へドラッグされる様子を示す。図１２は、下側ＬＣＤ１２の画面に表示される画像の一例を示す図であり、アイコン５１ｄとアイコン空領域５８ａの表示位置が入れ替わった状態を示す。言い換えれば、アイコン５１ｄがアイコン空領域５８ａに移動し、移動前のアイコン５１ｄのあった領域がアイコン空領域５８ａに変化した状態でもある。図１３は、アイコン５１ｄとアイコン空領域５８ａとが入れ替わった後のアイコン５１の表示順を示す図である。
【０１０４】
図８に示される状態でユーザが例えばアイコン５１ｄをタッチペン２８でタッチしたままタッチペン２８を所望の方向（図１１に示される例では右斜め下方向）に移動させた場合、図１１に示されるように、アイコン５１ｄがハイライトされた状態でタッチペン２８に追従して移動する。すなわち、ドラッグ操作によって元々配置されていたアイコン表示領域から抜き出されたアイコン５１ｄは、タッチペン２８が下側ＬＣＤ１２の画面（タッチパネル１３）に接触している限り、図８及び図１１に示されるように、タッチペン２８を任意の方向にスライドさせることによってユーザが自由に移動させることができる。
【０１０５】
ユーザがアイコン５１ｄをアイコン空領域５８ａ上までドラッグしてからドロップ（タッチペン２８をタッチパネル１３から離す）すると、アイコン空領域５８ａがアイコン表示領域に変更されて、そのアイコン表示領域にアイコン５１ｄが配置される。その際、アイコン５１ｄのハイライトが解除される。そして、これに伴い、アイコン５１ｄのドラッグ前にアイコン５１ｄが配置されていたアイコン表示領域が、アイコン空領域５８ａに変更される（図８、図１１、及び図１２参照）。その結果、各アイコン５１の表示順も変更されることになる。具体的には、図６及び図１３に示されるように、アイコン５１ｃの次であったアイコン５１ｄの表示順がアイコン５１ｊの次に変更されると共に、アイコン５１ｊの次であったアイコン空領域５８ａの表示順がアイコン５１ｃの次に変更される。
【０１０６】
続いて、図１４〜図１７を参照しつつ、ドラッグ操作によるアイコン５１の入れ替えについて説明する。ここで、図１４は、下側ＬＣＤ１２の画面に表示される画像の一例を示す図であり、アイコン５１ｄがアイコン５１ｎ上へドラッグされる様子を示す。図１５は、下側ＬＣＤ１２の画面に表示される画像の一例を示す図であり、ドラッグされたアイコン５１ｄがアイコン５１ｎ上でドロップされる様子を示す。図１６は、下側ＬＣＤ１２の画面に表示される画像の一例を示す図であり、アイコン５１ｄとアイコン５１ｎとが入れ替わった状態を示す。図１７は、アイコン５１ｄとアイコン５１ｎとが入れ替わった後のアイコン５１の表示順を示す図である。
【０１０７】
図８に示される状態でユーザが例えばアイコン５１ｄをタッチペン２８でタッチしたままタッチペン２８を所望の方向（図１４に示される例では右斜め下方向）に移動させた場合、図１４に示されるように、アイコン５１ｄがタッチペン２８に追従して移動する。すなわち、ドラッグ操作によって元々配置されていたアイコン表示領域から抜き出されたアイコン５１ｄは、タッチペン２８が下側ＬＣＤ１２の画面（タッチパネル１３）に接触している間はユーザが自由に移動させることができる。
【０１０８】
ユーザがアイコン５１ｄをアイコン５１ｎ上までドラッグしてからドロップすると、アイコン５１ｄとアイコン５１ｎとが入れ替えられる（図８、図１４〜図１６参照）。具体的には、アイコン５１ｄが元々配置されていた位置にアイコン５１ｎが配置され、アイコン５１ｎが元々配置されていた位置にアイコン５１ｄが配置される。その結果、図１６及び図１７に示されるように、アイコン５１ｃの次であったアイコン５１ｄの表示順がアイコン５１ｍの次に変更されると共に、アイコン５１ｍの次であったアイコン５１ｎの表示順がアイコン５１ｃの次に変更される。このように、ユーザは、下側ＬＣＤ１２の画面に表示されるアイコン５１の表示順を、タッチパネル１３を用いて変更することができる。
【０１０９】
続いて、図１８〜図２０を参照しつつ、右スライドタブ５３又は左スライドタブ５４を用いたアイコン行列のスクロールについて説明する。ここで、図１８は、アイコン５１ｂが左スライドタブ５４上へドラッグされる様子を示す。図１９は、下側ＬＣＤ１２の画面に表示される画像の一例を示す図であり、アイコン５１ｂが左スライドタブ５４上へドラッグされた直後の状態を示す。図２０は、下側ＬＣＤ１２の画面に表示される画像の一例を示す図であり、アイコン行列のスクロール後にアイコン５１ｂがアイコン５１ｑ上へドラッグされる様子を示す。
【０１１０】
ユーザがタッチペン２８を用いて例えばアイコン５１ｂを左スライドタブ５４上までドラッグすると、アイコン行列が左方向へのスクロールを開始する。このようにして開始されたアイコン行列の左方向へのスクロールは、ユーザによってドラッグされたアイコン（以下「ドラッグアイコン」とも言う。）が左スライドタブ５４上に位置している間は継続され、ドラッグアイコンが左スライドタブ５４上を外れた時点で終了される。これは、ドラッグアイコンを右スライドタブ５３上までドラッグした場合も同様である。
【０１１１】
したがって、アイコン行列をスクロールさせて所望の移動先を画面に表示させた後に、ドラッグアイコンをその所望の移動先までドラッグしてからドロップすることによって、ユーザはドラッグアイコンをドラッグ開始時には画面に表示されていなかったアイコンと入れ替えたり、或いは、ドラッグアイコンを、ドラッグ開始時には画面に表示されていなかったアイコン空領域５８へ移動させたりすることが可能である。図１８〜図２０に示される例では、ドラッグアイコン５１ｂを左スライドタブ５４上までドラッグしてから、ドラッグアイコン５１ｂをアイコン５１ｑまで更にドラッグする様子が示されている。
【０１１２】
このような操作により、ユーザは、任意のアイコン５１をタッチペン２８でタッチしてから、そのアイコン５１をアイコン行列の所望の位置へ移動させるまでの間、タッチペン２８を下側ＬＣＤ１２の画面から一切離す必要がないので、タッチペン２８を画面に接触させて画面上をスライドさせて、画面から離すまでの一連の操作を行うだけで、アイコン５１の表示順の変更を簡単に実現することができる。
【０１１３】
［メモリマップ］
以下、図２１を参照しつつ、情報処理の際にメインメモリ３２に記憶されるデータについて説明する。ここで、図２１は、メインメモリ３２のメモリマップである。図２１に例示されるように、メインメモリ３２は、プログラム記憶領域３２１及びデータ記憶領域３２３を有している。プログラム記憶領域３２１には、ＣＰＵ３１１によって実行されるプログラムが記憶される。データ記憶領域３２３には、情報処理に必要な各種データが記憶される。プログラム記憶領域３２１内のプログラム、及びデータ記憶領域３２３内のデータの一部は、外部メモリ４５に予め記憶されたデータが、情報処理に際して外部メモリ４５から読み出されたものである。
【０１１４】
プログラム記憶領域３２１には、情報処理プログラム３２２等が記憶されている。情報処理プログラム３２２は、図２２〜図２４に示されている一連の処理をＣＰＵ３１１に実行させるためのプログラムである。
【０１１５】
データ記憶領域３２３には、アイコン画像データ３２４、ボタン画像データ３２５、行数データ３２６、表示順データ３２７、位置データ３２８、閾値データ３２９等が記憶される。
【０１１６】
アイコン画像データ３２４は、各アイコン５１ａ〜５１ｖに対応する画像データである。ボタン画像データ３２５は、行増加ボタン５５及び行減少ボタン５６に対応する画像データである。
【０１１７】
行数データ３２６は、アイコン行列の行数を示すデータである。この行数データ３２６は、行増加ボタン５５又は行減少ボタン５６がタッチペン２８によって操作されると、その操作に応じて適宜更新される。なお、この行数データ３２６はゲーム装置１０の電源オフ後も保持される。
【０１１８】
表示順データ３２７は、各アイコン５１ａ〜５１ｖ、及びアイコン空領域５８ａ、５８ｂの表示順と表示位置を示すデータである。各アイコン５１ａ〜５１ｖ、及びアイコン空領域５８ａ、５８ｂは、この表示順データ３２７によって予め設定された表示順で行方向に並ぶように、１列目から順に並べて表示される（図６及び図８参照）。なお、この表示順データ３２７は、任意のアイコン５１がアイコン空領域５８に移動されたり、或いは任意のアイコン５１と他のアイコン５１とが入れ替えられた際に適宜更新される。また、この表示順データ３２７はゲーム装置１０の電源オフ後も保持される。
【０１１９】
位置データ３２８は、タッチペン２８によるタッチパネル１３上の指示位置を示すデータである。情報処理が行われる間、この位置データ３２８が示す指示位置に基づいて、例えばタッチペン２８が任意のアイコン５１にタッチされているか否かを判定する処理等が行われる。
【０１２０】
閾値データ３２９は、任意のアイコン５１上の点を起点として位置データ３２８が示すタッチペン２８の指示位置（タッチ位置）が移動したときに、指示位置が水平方向（第１の方向）に移動したか、或いは指示位置が垂直方向（第２の方向）に移動したかを判別する際に使用される閾値のデータである。
【０１２１】
なお、図には示されていないが、データ記憶領域３２３には、情報処理中に用いられる音声データや、仮想ゲーム空間の様子を画面表示するための仮想カメラの制御に関するデータ等が記憶されるが、これらのデータは本発明とは直接関係しないので、ここでの詳細な説明は省略する。
【０１２２】
次に、図２２〜図２４のフローチャートを参照しつつ、ＣＰＵ３１１によって実行される処理について説明する。なお、以下に説明する一連の処理は、メインメモリ３２に記憶されている情報処理プログラム３２２に基づいてＣＰＵ３１１が発行する命令に従って行われる。また、これらのフローチャートでは、画像の生成及び出力に関する処理を省略しているが、画像の生成及び出力は一定の周期で行われる。
【０１２３】
情報処理プログラム３２２の起動時には、起動モードで処理が開始される。まず、オブジェクト表示手段及びボタン表示手段として機能するＣＰＵ３１１は、アイコン５１のメニュー画面を初期表示するのに必要な設定情報をメインメモリ３２のデータ記憶領域３２３から読み出す（ステップＳ１）。具体的には、ＣＰＵ３１１は、行数データ３２６、表示順データ３２７、アイコン画像データ３２４、及びボタン画像データ３２５をデータ記憶領域３２３から読み出す。そして、ＣＰＵ３１１は、アイコン行列のメニュー画面を下側ＬＣＤ１２の画面に表示させる（ステップＳ２）。具体的には、ＣＰＵ３１１は、下側ＬＣＤ１２の画面に表示するアイコン５１の行数を行数データ３２６に基づいて決定し、アイコン５１ａ〜５１ｖのうちのサブセットとして画面内に表示すべきアイコン５１とそれらの表示位置を表示順データ３２７に基づいて決定する。そして、ＣＰＵ３１１は、アイコン画像データ３２４を用いて、行数データ３２６及び表示順データ３２７に基づいて決定した並びでアイコン５１を下側ＬＣＤ１２の画面に行列表示させる。これに伴い、ＣＰＵ３１１は、ボタン画像データ３２５を用いて、行減少ボタン５６及び行増加ボタン５５をアイコン行列の上方に表示させる。
【０１２４】
このように、ＣＰＵ３１１は、複数のアイコン５１のうちのサブセットを構成するアイコン５１を、予め設定された表示順で並ぶように下側ＬＣＤ１２の画面に行列表示させると共に、行減少ボタン５６及び行増加ボタン５５を下側ＬＣＤ１２の画面内に表示する。なお、行数データ３２６が示す行数が「１」である場合には、図５に例示されるように、アイコン５１が一行表示される。また、アイコン空領域５８の表示順が上位である場合には、下側ＬＣＤ１２の画面には、各アイコン５１が配置されるアイコン表示領域に加えて、アイコン５１が配置されていないアイコン空領域５８が表示される（例えば図８参照）。また、行数データ３２６が示すアイコン行列の行数が最小である場合（本実施形態では「１」である場合）、それ以上行数を減らすことができないので、行減少ボタン５６がグレー色で表示される。逆に、行数データ３２６が示すアイコン行列の行数が最大である場合（本実施形態では「６」である場合）、それ以上行数を増やすことができないので、行増加ボタン５５がグレー色で表示される。
【０１２５】
アイコン５１のメニュー画面を下側ＬＣＤ１２に表示させた後、ＣＰＵ３１１は、Ｉ／Ｆ回路４２からのタッチ位置データに基づいて、タッチパネル１３がタッチペン２８によりタッチオンされたか否かを判定する（ステップＳ３）。タッチオンされていないとＣＰＵ３１１によって判定された場合（ステップＳ３：ＮＯ）、処理がステップＳ３に戻される。
【０１２６】
タッチパネル１３がタッチペン２８によってタッチオンされたと判定した場合（ステップＳ３：ＹＥＳ）、ＣＰＵ３１１は、タッチ位置データに基づいて、タッチパネル１３上においてタッチペン２８によってタッチされているタッチ位置を検出する（ステップＳ４）。本実施形態では、下側ＬＣＤ１２の画面の水平方向をＸ軸方向とし、垂直方向をＹ軸方向とした２次元座標（Ｘ，Ｙ）によってタッチ位置が表される。ステップＳ４で検出されたタッチ位置は、タッチオン位置（タッチパネル１３にタッチペン２８が触れていない状態から触れた状態に変化した直後に検出されるタッチ位置）としてデータ記憶領域３２３に記憶される。ここで記憶されるデータが、位置データ３２８である。このように、ＣＰＵ３１１は、タッチパネル１３に対してタッチペン２８によって指示された下側ＬＣＤ１２の画面上の位置を指示位置として検出し、その検出結果を位置データ３２８として一時的に保存する。
【０１２７】
タッチ位置を検出すると、ＣＰＵ３１１は、位置データ３２８が示すタッチ位置がいずれかのアイコン５１上であるか否かを判定する（ステップＳ５）。このステップＳ５の判定処理には、位置データ３２８や表示順データ３２７等が使用される。
【０１２８】
ＣＰＵ３１１は、タッチ位置がアイコン５１上ではないと判定した場合（ステップＳ５：ＮＯ）、タッチ位置が表示変更ボタン上であるか否かを判定する（ステップＳ６）。具体的には、ステップＳ４の処理の結果データ記憶領域３２３に格納された位置データ３２８が示すタッチ位置（ここではタッチオン位置）が行増加ボタン５５又は行減少ボタン５６上であるか否かを判定する。ここで、タッチ位置が表示変更ボタン上ではないとＣＰＵ３１１によって判定された場合（ステップＳ６：ＮＯ）、処理がステップＳ４に戻されて、改めてタッチ位置が検出される。逆に、タッチ位置が表示変更ボタン上であるとＣＰＵ３１１によって判定された場合（ステップＳ６：ＹＥＳ）、処理が表示変更モードへと移行する。なお、ここでは、ステップＳ６でＮＯの場合、ステップＳ４に戻るようにしたが、タッチ位置に応じて他の処理を行ってもよい。例えば、タッチ位置がアイコン行列の間（アイコンとアイコンの間）の領域である場合は、ドラッグ操作に応じてスクロール処理が行われる。また、タッチ位置が表示変更ボタン以外のボタン上である場合は、当該ボタンに応じた機能が実行される。
【０１２９】
タッチ位置が表示変更ボタン上であると判定した場合（ステップＳ６：ＹＥＳ）、ＣＰＵ３１１は、図２３に示されるように、Ｉ／Ｆ回路４２からのタッチ位置データに基づいて、タッチパネル１３からタッチペン２８がタッチオフされたか否かを判定する（ステップＳ１１）。タッチオフされていないとＣＰＵ３１１によって判定された場合（ステップＳ１１：ＮＯ）、処理がステップＳ６へ戻される。
【０１３０】
タッチパネル１３からタッチペン２８がタッチオフされたと判定した場合（ステップＳ１１：ＹＥＳ）、ＣＰＵ３１１は、タッチパネル１３によって最後に検出されたタッチ位置を示すＩ／Ｆ回路４２からのタッチ位置データに基づいて、行増加ボタン５５上でタッチペン２８がタッチオフされたか否かを判定する（ステップＳ１２）。
【０１３１】
ＣＰＵ３１１は、行増加ボタン５５上でタッチペン２８がタッチオフされたと判定した場合（ステップＳ１２：ＹＥＳ）、現在のアイコン行列の行数が最大であるか否かを判定する（ステップＳ１３）。具体的には、ＣＰＵ３１１は、行数データ３２６が示すアイコン５１の行数が、予め設定された最大値の「６」であるか否かを判定する。ここで、現在のアイコン行列の行数が最大であるとＣＰＵ３１１によって判定された場合（ステップＳ１３：ＹＥＳ）、それ以上行数を増やすことはできないので、行増加ボタン５５上でタッチペン２８がタッチオフされたとしても行増加ボタン５５の操作が受け付けられることなく、処理が上記ステップＳ３へ戻される。
【０１３２】
一方、ＣＰＵ３１１は、タッチオフ位置が行増加ボタン５５上ではなかったと判定した場合（ステップＳ１２：ＮＯ）、すなわち、行減少ボタン５６上でタッチペン２８がタッチオフされた場合、現在のアイコン行列の行数が最小であるか否かを判定する（ステップＳ１５）。具体的には、ＣＰＵ３１１は、行数データ３２６が示すアイコン５１の行数が、予め設定された最小値の「１」であるか否かを判定する。ここで、現在のアイコン行列の行数が最小であるとＣＰＵ３１１によって判定された場合（ステップＳ１５：ＹＥＳ）、行減少ボタン５６上でタッチペン２８がタッチオフされたとしても行減少ボタン５６の操作が受け付けられることなく、処理がステップＳ３へ戻される。
【０１３３】
ＣＰＵ３１１は、現在のアイコン行列の行数が最大ではない（本実施形態では「５」以下である）と判定した場合（ステップＳ１３：ＮＯ）、下側ＬＣＤ１２の表示モードを、行数を１増加した表示モードに変更する（ステップＳ１４）
【０１３４】
一方、ＣＰＵ３１１は、現在のアイコン行列の行数が最小ではない（本実施形態では「２」以上である）と判定した場合（ステップＳ１５：ＮＯ）、下側ＬＣＤ１２の表示モードを、行数を１減少した表示モードに変更する（ステップＳ１６）。
【０１３５】
そして、行列数変更手段及びオブジェクト表示変更手段として機能するＣＰＵ３１１は、ステップＳ１４又はステップＳ１６の処理によって変更された表示モードに応じて、図５〜図８に基づいて上述したように、各アイコン５１の表示位置を変更する（ステップＳ１７）。
【０１３６】
このように、ＣＰＵ３１１は、タッチパネル１３を用いて検出したタッチペン２８の指示位置が行増加ボタン５５上であった場合には行数を増加させ、指示位置が行減少ボタン５６上であった場合には行数を減少させる。そして、ＣＰＵ３１１は、増減させた行数に応じて、下側ＬＣＤ１２の画面内に表示される各アイコン５１の表示位置を変更する。
【０１３７】
そして、表示変更モードの最後に、行列数変更手段として機能するＣＰＵ３１１は、ステップＳ１４又はステップＳ１６の処理の結果に応じて、データ記憶領域３２３内の行数データ３２６を更新する（ステップＳ１８）。このように、ＣＰＵ３１１は、変更後の行数を行数データ３２６としてメインメモリ３２に記憶させる。これにより、次にステップＳ１，Ｓ２の処理が行われて情報処理プログラムが起動されるときには、行数データ３２６として記憶されている行数でアイコン行列が下側ＬＣＤ１２の画面内に行列表示されることになる。
【０１３８】
ステップＳ１８の処理が行われた場合、現在の行数が最大であるとＣＰＵ３１１によって判定された場合（ステップＳ１３：ＹＥＳ）、又は現在の行数が最小であるとＣＰＵ３１１によって判定された場合（ステップＳ１５：ＹＥＳ）、処理が表示変更モードから起動モードへと移行する。
【０１３９】
上記ステップＳ５において、ＣＰＵ３１１は、タッチ位置（ここではタッチオン位置）がアイコン５１上であると判定した場合（ステップＳ５：ＹＥＳ）、例えば図５に例示されるように、タッチされたアイコン５１をハイライトする（ステップＳ２１）。
【０１４０】
タッチされたアイコン５１をハイライトした後、ＣＰＵ３１１は、ステップＳ４の処理と同様に、Ｉ／Ｆ回路４２からのタッチ位置データに基づいて、タッチペン２８によるタッチパネル１３上のタッチ位置を検出する（ステップＳ２２）。
【０１４１】
タッチ位置を検出すると、処理方法選択手段として機能するＣＰＵ３１１は、タッチ位置のＸ軸方向（水平方向）の変位が予め設定された閾値を超えたか否かを判定する（ステップＳ２３）。具体的には、ＣＰＵ３１１は、ステップＳ２２の処理で検出したタッチ位置のＸ座標値と、ステップＳ４の処理で検出したタッチ位置のＸ座標値との差分の絶対値で示されるＸ軸方向の変位が、閾値データ３２９が示すＸ軸方向用の閾値を超えたか否かを判定する。
【０１４２】
ＣＰＵ３１１は、タッチ位置のＸ軸方向の変位が予め設定された閾値を超えたと判定した場合（ステップＳ２３：ＹＥＳ）、ユーザによってアイコン行列の水平方向へのスクロールが指示されたと判断して、以下の処理を実行する。すなわち、ＣＰＵ３１１は、ステップＳ２２の処理と同様に、タッチペン２８によるタッチパネル１３上のタッチ位置を検出する（ステップＳ２４）。
【０１４３】
ステップＳ２４の処理に続いて、処理方法選択手段として機能するＣＰＵ３１１は、タッチ位置のＹ軸方向（垂直方向）の変位が予め設定された閾値を超えたか否かを判定する（ステップＳ２５）。具体的には、ＣＰＵ３１１は、ステップＳ２２の処理で検出したタッチ位置のＹ座標値と、ステップＳ４の処理で検出したタッチ位置のＹ座標値との差分の絶対値で示されるＹ軸方向の変位が、閾値データ３２９が示すＹ軸方向用の閾値を超えたか否かを判定する。ここで、ユーザが任意のアイコン５１を他のアイコン５１と入れ替えようとした場合等には、Ｙ軸方向の変位が予め設定された閾値を超えることになる。したがって、Ｙ軸方向の変位が予め設定された閾値を超えるとＣＰＵ３１１によって判定された場合（ステップＳ２５：ＹＥＳ）、処理が後述するドラッグモードへ移行する。このため、ユーザは、任意のアイコン５１を水平方向にドラッグしてアイコン行列を水平方向にスクロールさせる途中であっても、その任意のアイコン５１を垂直方向にドラッグすることによって、そのアイコン５１を他のアイコン５１と入れ替えたりすることができる。なお、ステップＳ２５の処理はなくてもよい。その場合、ステップＳ２３でＹＥＳと判断（スクロールを指示）されたら、ドラッグモードへ移行することはない。
【０１４４】
一方、Ｙ軸方向の変位が予め設定された閾値を超えていないと判定した場合（ステップＳ２５：ＹＥＳ）、ＣＰＵ３１１は、アイコン行列を水平方向にスクロール表示させる（ステップＳ２６）。具体的には、ＣＰＵ３１１は、ステップＳ４の処理で取得されたタッチオン位置のＸ座標値とステップＳ２４の処理で取得されたタッチ位置のＸ座標値との大小関係に基づいてスクロール方向を決定し、これら２つのＸ座標値の差分の絶対値に応じてスクロール幅（下側ＬＣＤ１２の画面上におけるアイコン行列の水平方向への移動量）を決定する。そして、ＣＰＵ３１１は、決定したスクロール方向及びスクロール幅にて、図８〜図１０に基づいて上述したように、アイコン行列を下側ＬＣＤ１２の画面上でスクロール表示させる。
【０１４５】
このように、ユーザによるドラッグ操作によって任意のアイコン５１上の点を起点として指示位置が移動したときに、ＣＰＵ３１１は、指示位置が水平方向（第１の方向）へ移動した場合には第１の処理方法を選択して、指示位置の移動に応じてアイコン行列をスクロール表示させる。
【０１４６】
ステップＳ２６の処理に続いて、ＣＰＵ３１１は、Ｉ／Ｆ回路４２からのタッチ位置データの有無に基づいて、タッチパネル１３からタッチペン２８がタッチオフされたか否かを判定する（ステップＳ２７）。ここで、タッチペン２８がタッチオフされていないとＣＰＵ３１１によって判定された場合（ステップＳ２７：ＮＯ）、処理がステップＳ２４へ戻される。その結果、上記ステップＳ２５においてＹ軸方向の変位が予め設定された閾値を超えるとＣＰＵ３１１によって判定されなければ、ステップＳ２６におけるアイコン行列のスクロール表示が継続される。一方、タッチペン２８がタッチオフされたとＣＰＵ３１１によって判定された場合（ステップＳ２７：ＹＥＳ）、処理がステップＳ３へ戻される。
【０１４７】
上記ステップＳ２３においてＸ軸方向の変位が予め設定された閾値を超えていないと判定した場合（ステップＳ２３：ＮＯ）、処理方法選択手段として機能するＣＰＵ３１１は、上記ステップＳ２５の処理と同様に、タッチ位置のＹ軸方向（垂直方向）の変位が予め設定された閾値を超えたか否かを判定する（ステップＳ３０）。ここで、Ｙ軸方向の変位が予め設定された閾値を超えたとＣＰＵ３１１によって判定された場合（ステップＳ３０：ＹＥＳ）、処理が後述するドラッグモードへ移行する。
【０１４８】
一方、ＣＰＵ３１１は、Ｙ軸方向の変位が予め設定された閾値を超えていないと判定した場合（ステップＳ３０：ＮＯ）、ステップＳ２７の処理と同様に、タッチペン２８がタッチパネル１３からタッチオフされたか否かを判定する（ステップＳ３１）。タッチペン２８がタッチオフされていないとＣＰＵ３１１によって判定された場合（ステップＳ３１：ＮＯ）、処理がステップＳ２２へ戻される。
【０１４９】
ＣＰＵ３１１は、タッチペン２８がタッチパネル１３からタッチオフされたと判定した場合（ステップＳ３１：ＹＥＳ）、タッチペン２８によってタッチされているアイコン５１に対するハイライトを解除し（ステップＳ３２）、そのアイコン５１に関連付けられているプログラムを起動させる。
【０１５０】
処理方法選択手段として機能するＣＰＵ３１１は、ステップＳ２５又はステップＳ３０の処理でＹ軸方向の変位が予め設定された閾値を超えたと判定した場合（ステップＳ２５：ＹＥＳ、又はステップＳ３０：ＹＥＳ）、すなわち、指示位置が垂直方向（第２の方向）へ移動した場合、第２の処理方法を選択して、以下に説明するドラッグモードの処理を実行する。すなわち、ＣＰＵ３１１は、図２４に示されるように、タッチペン２８がタッチパネル１３からタッチオフされたか否かを判定する（ステップＳ４１）。
【０１５１】
ＣＰＵ３１１は、タッチペン２８がタッチオフされていないと判定した場合（ステップＳ４１：ＮＯ）、Ｉ／Ｆ回路４２からのタッチ位置データに基づいて、タッチペン２８によるタッチパネル１３上のタッチ位置を検出する（ステップＳ４２）。そして、ＣＰＵ３１１は、ステップＳ４２の処理で検出したタッチ位置に応じた位置へドラッグアイコンを移動させる（ステップＳ４３）。このように、オブジェクト移動手段として機能するＣＰＵ３１１は、第２の処理方法を選択したときには、任意のアイコン５１だけをタッチペン２８による指示位置に応じて画面上を移動させる。
【０１５２】
ステップＳ４３の処理に続いて、ＣＰＵ３１１は、タッチペン２８によるタッチ位置が左右端領域内に位置しているか否かを判定する（ステップＳ４４）。具体的には、ＣＰＵ３１１は、ステップＳ４２の処理で検出したタッチ位置と、右スライドタブ５３及び左スライドタブ５４の位置座標とを比較して、タッチ位置が右スライドタブ５３上又は左スライドタブ５４上に位置しているか否かを判定する。なお、右スライドタブ５３上又は左スライドタブ５４上か否かにかかわらず、単純にタッチ位置が左右端領域内に位置しているか否かを判定してもよい。ここで、タッチ位置が左右端領域内に位置していないとＣＰＵ３１１によって判定された場合（ステップＳ４４：ＮＯ）、処理がステップＳ４１へ戻される。逆に、ＣＰＵ３１１は、タッチ位置が左右端領域内に位置していると判定した場合（ステップＳ４４：ＹＥＳ）、図１９〜図２０に基づいて上述したように、アイコン行列をスクロール表示させる（ステップＳ４５）。ここで、タッチ位置が右スライドタブ５３上に位置している場合には、ＣＰＵ３１１はアイコン行列を右方向にスクロール表示させ、タッチ位置が左スライドタブ５４上に位置している場合には、ＣＰＵ３１１はアイコン行列を左方向にスクロール表示させる。このステップＳ４５の処理が行われると、処理がステップＳ４１に戻されて、タッチ位置が左右端領域から外れるまで、或いは、タッチペン２８がタッチオフされるまでステップＳ４５のアイコン行列のスクロール表示が継続される。
【０１５３】
ＣＰＵ３１１は、タッチペン２８がタッチオフされたと判定した場合（ステップＳ４１：ＹＥＳ）、タッチオフされるまでドラッグされていたドラッグアイコンに対するハイライトを解除する（ステップＳ４７）。そして、判別手段として機能するＣＰＵ３１１は、ステップＳ４２の処理によって最後に検出された指示位置（タッチオフ位置）に基づいて、ドラッグアイコン５１が他のアイコン５１上でタッチオフされたか否かを判定する（ステップＳ４８）。
【０１５４】
ところで、各アイコン５１は、アイコン表示領域上に配置されている。このため、上記ステップＳ４８では、タッチペン２８がタッチオフされた際に最後に検出された指示位置に応じて、アイコン表示領域及びアイコン空領域５８のいずれか指定されたかが判別されることになる。
【０１５５】
オブジェクト入替手段として機能するＣＰＵ３１１は、ドラッグアイコンのドラッグ中にタッチペン２８が他のアイコン５１上でタッチオフされたと判定した場合（ステップＳ４８：ＹＥＳ）、図１４〜図１７に基づいて上述したように、ドラッグアイコン５１（例えばアイコン５１ｄ）と他のアイコン５１（例えばアイコン５１ｎ）の配置を入れ替える（ステップＳ４９）。
【０１５６】
このように、入替処理手段として機能するＣＰＵ３１１は、任意のアイコン５１の移動中に指示位置が検出されなくなったときに、最後に検出された指示位置（最後のステップＳ４２の処理で検出されたタッチ位置）がアイコン表示領域内である場合はそのアイコン表示領域が指定されたと判別して、任意のアイコン５１とそのアイコン表示領域内に配置されている他のアイコン５１とを入れ替える。
【０１５７】
一方、ＣＰＵ３１１は、タッチペン２８のタッチオフ位置が他のアイコン５１上ではないと判定した場合（ステップＳ４８：ＮＯ）、タッチペン２８がアイコン空領域５８上でタッチオフされたか否かを判定する（ステップＳ５０）。この判定処理は、ステップＳ４２の処理によって最後に検出されたタッチ位置と、表示順データ３２７が示すアイコン空領域５８（５８ａ又は５８ｂ）の位置座標とを比較することによって行われる。
【０１５８】
ＣＰＵ３１１は、タッチペン２８がアイコン空領域５８上でタッチオフされたと判定した場合（ステップＳ５０：ＹＥＳ）、図１１〜図１３に基づいて上述したように、例えばアイコン空領域５８ａをアイコン表示領域に変更してそこにドラッグアイコン５１ｄを配置し（ステップＳ５１）、ドラッグアイコン５１ｄが元々配置されていたアイコン表示領域をアイコン空領域５８ａに設定する（ステップＳ５２）。
【０１５９】
このように、入替処理手段として機能するＣＰＵ３１１は、任意のアイコン５１の移動中に指示位置が検出されなくなったときに、最後に検出された指示位置（最後のステップＳ４２の処理で検出されたタッチ位置）がアイコン空領域５８内である場合はそのアイコン空領域５８が指定されたと判別して、任意のアイコン５１をアイコン空領域５８に配置すると共に、任意のアイコン５１が移動前に配置されていたアイコン表示領域をアイコン空領域５８に変更する。
【０１６０】
また、ＣＰＵ３１１は、タッチペン２８のタッチオフ位置がアイコン空領域５８上でもないと判定した場合（ステップＳ５０：ＮＯ）、すなわち、ドラッグアイコン以外のアイコン５１とアイコン空領域５８との間でタッチペン２８がタッチオフされた場合、タッチオフ位置に最も近い他のアイコン５１又はアイコン空領域５８を特定する（ステップＳ５３）。具体的には、タッチオフ位置と、他のアイコン５１の２次元座標と、アイコン空領域５８の２次元座標とを比較して、タッチオフ位置により近いのが、他のアイコン５１であるか或いはアイコン空領域５８であるかを特定する。
【０１６１】
このように、ＣＰＵ３１１は、最後に検出された指示位置がアイコン表示領域内でもアイコン空領域５８内でもない場合は、アイコン表示領域及びアイコン空領域５８のうち最後に検出された指示位置（タッチオフ位置）により近い領域が指定されたと判別する。
【０１６２】
ステップＳ５３の処理に続いて、ＣＰＵ３１１は、ステップＳ５３の処理の結果として特定されたのが他のアイコン５１（アイコン表示領域）であるか否かを判定する（ステップＳ５４）。ここで、特定されたのが他のアイコン５１であるとＣＰＵ３１１によって判定された場合（ステップＳ５４：ＹＥＳ）、処理がステップＳ４９へ進められる。逆に、特定されたのがアイコン空領域５８であるとＣＰＵ３１１によって判定された場合（ステップＳ５４：ＮＯ）、処理がステップＳ５１へ進められる。
【０１６３】
ところで、ステップＳ４９の処理が行われた場合、任意のアイコン５１と他のアイコン５１の表示順が変更されることになる。また、ステップＳ５１，Ｓ５２の処理が行われた場合には、任意のアイコン５１とアイコン空領域５８の表示順が変更されることになる。このような表示順の変更は、情報処理プログラム３２２の終了後も保持されて、情報処理プログラム３２２が改めて起動されたときにも反映されることが好ましい。
【０１６４】
このため、表示順記憶手段として機能するＣＰＵ３１１は、ステップＳ４９の処理を行った場合、又はステップＳ５１，Ｓ５２の処理を行った場合、データ記憶領域３２３に記憶されている表示順データ３２７を更新する（ステップＳ５５）。例えばアイコン５１ｄとアイコン５１ｎとの入れ替えが行われた場合（図１４〜図１６参照）、図６及び図１７に例示されるように、アイコン５１ｄとアイコン５１ｎの表示順を入れ替える。また、例えばアイコン５１ｄとアイコン空領域５８ａとの入れ替えが行われた場合（図１１及び図１２参照）、図６及び図１３に例示されるように、アイコン５１ｄとアイコン空領域５８ａの表示順を入れ替える。
【０１６５】
このように、オブジェクトの入れ替えが行われた場合、表示順データ３２７が更新されて、入れ替え後の表示順が記憶されることになる。そして、情報処理プログラム３２２が改めて起動される時には、データ記憶領域３２３に記憶されている表示順データ３２７が示す表示順で、サブセットを構成する各アイコン５１が画面内に行列表示されることになる。
【０１６６】
以上説明したように、本実施形態によれば、ユーザが複数のアイコン５１のスクロールとアイコン５１の入れ替えとを簡単に選択することができる。また、第２の処理方法が選択された場合には任意のアイコン５１と他のアイコン５１とが入れ替えられるので、ユーザは、各アイコン５１の位置関係を大きく崩すことなく、任意のアイコン５１を所望の位置に配置することができる。
【０１６７】
［起動モードの変形例］
以下、図２５を参照しつつ、上記実施形態で説明した起動モードの変形例について説明する。ここで、図２５は、起動モード時にＣＰＵ３１１によって実行される処理の変形例を示すフローチャートである。なお、図２５において図２２に基づいて上述した処理と共通する処理については同一ステップ番号を付してその説明を省略し、異なる点について主に説明する。
【０１６８】
図２５に示されるように、タッチパネル１３がタッチペン２８によってタッチオンされたと判定した場合（ステップＳ３：ＹＥＳ）、ＣＰＵ３１１は、タッチオンからの経過時間の計測を開始する（ステップＳ６１）。言い換えれば、タッチパネル１３によってタッチ位置が最初に検出されてからの経過時間の計測を開始する。このステップＳ６１の処理が行われた後、処理が上述したステップＳ４へと進められる。
【０１６９】
ＣＰＵ３１１は、上述したステップＳ２２の処理でタッチ位置を検出した後、タッチパネル１３がタッチペン２８によってタッチオンされてから所定時間が経過したか否かを判定する（ステップＳ６２）。具体的には、ＣＰＵ３１１は、ステップＳ６１の処理で計測を開始した経過時間が、メインメモリ３２に予め格納されている所定時間以上になったか否かを判定する。
【０１７０】
ここで、所定時間が経過していないとＣＰＵ３１１によって判定された場合（ステップＳ６２：ＮＯ）、処理が上述したステップＳ２３へと進められる。そして、タッチ位置のＸ軸方向の変位が閾値を超えればアイコン行列がスクロール表示され、Ｙ軸方向の変位が閾値を超えれば処理がドラッグモードへと移行する。これに対して、タッチ位置のＸ軸方向の変位とＹ軸方向の変位がいずれも閾値を超えることなく所定時間が経過したとＣＰＵ３１１によって判定された場合（ステップＳ６２：ＹＥＳ）、処理がドラッグモードへと移行する。そして、ドラッグモードへ移行すると、タッチオフ位置に応じて、アイコンの入れ替えが行われる。
【０１７１】
このように、タッチ位置がタッチパネル１３によって最初に検出されてから所定時間を経過する前にタッチ位置がＸ軸方向へ閾値を超えて移動した場合、ＣＰＵ３１１は、第１の処理方法を選択して、タッチ位置の移動に応じてアイコン行列をスクロール表示させる。一方、タッチ位置がタッチパネル１３によって最初に検出されてから所定時間を経過した後にタッチ位置が移動した場合、ＣＰＵ３１１は、第２の処理方法を選択して、タッチオフ位置に応じてアイコンの入れ替えを行う。
【０１７２】
したがって、この起動モードの変形例によれば、ユーザがタッチペン２８を用いてタッチ位置を移動させるまでの時間を変化させるだけで、アイコン行列のスクロール表示とアイコンの入れ替えとを簡単に選択することができる。すなわち、タッチオンから所定時間が経過する前に、タッチ位置のＸ軸方向の変位が閾値を超えないようにタッチペン２８を保持するか否かによって、アイコン行列のスクロールとアイコンの入れ替えとを簡単に選択することができる。
【０１７３】
また、タッチ位置が閾値を超えて移動することなくタッチオンから所定時間が経過した場合と、タッチオンから所定時間を経過する前にタッチ位置のＹ軸方向の変位が閾値を超えた場合は、いずれの場合もドラッグモードに移行してアイコンの入れ替えが行われる。このため、ユーザは、タッチオンから所定時間が経過する前にタッチ位置がＹ軸方向へ閾値を超えて変位するようなドラッグ操作と、タッチオンから所定時間が経過してからタッチ位置を移動させるドラッグ操作の２通りの操作でアイコンの入れ替えを選択することができる。なお、タッチ位置のＹ軸方向の変位が閾値を超える移動をした場合には何もせず（ドラッグモードに移行せず）、タッチ位置が閾値を超えて移動することなくタッチオンから所定時間が経過した場合にのみドラッグモードに移行するようにしてもよい。
【０１７４】
ところで、上記実施形態及びこの変形例における起動モードでは、タッチ位置がＹ軸方向に閾値を超える移動をするとドラッグモードに移行してアイコンの入れ替えが行われるので、アイコン行列をＹ軸方向へスクロール表示させることはできない。そこで、タッチ位置のＸ軸方向の変位とＹ軸方向の変位がいずれも閾値を超えることなくタッチオンから所定時間が経過した場合には処理をドラッグモードへ移行させ、所定時間が経過する前にタッチ位置のＸ軸方向の変位又はＹ軸方向の変位が閾値を超えた場合には、処理をドラッグモードには移行させずにタッチ位置が変位した方向へアイコン行列をスクロール表示させる構成を採用してもよい。これにより、所定時間が経過する前にタッチ位置がＸ軸方向へ移動した場合にはアイコン行列をＸ軸方向へスクロール表示させ、所定時間が経過する前にタッチ位置がＹ軸方向へ移動した場合にはアイコン行列をＹ軸方向へスクロール表示させるというように、アイコン行列を複数の方向へスクロール表示させることが可能になる。
【０１７５】
［その他の変形例］
なお、本発明は上記実施形態に限定されるものではなく、以下の形態であってもよい。
すなわち、上記実施形態では、ドラッグモード時に、タッチ位置が左右端領域内であればアイコン行列をスクロール表示させる場合について説明した。これに代えて、ステップＳ４４，Ｓ４５の処理を省略して、アイコン行列のスクロール表示を行わないようにしてもよい。
【０１７６】
また、上記実施形態では、ドラッグモード時に、ステップＳ５０においてタッチペン２８のタッチオフ位置がアイコン空領域５８上でもないと判定した場合に、タッチオフ位置からの距離に基づいて他のアイコン５１又はアイコン空領域５８を特定して、アイコン５１の入れ替えを行う場合について説明した。これに代えて、ステップＳ５０においてタッチペン２８のタッチオフ位置がアイコン空領域５８上でもないと判定した場合には、ドラッグアイコンをドラッグ前の元の位置に戻すようにしてもよい。
【０１７７】
また、下側ＬＣＤ１２の画面に表示されているアイコン５１の行数及び列数が共に２以上であるか否かを判定し、行数及び列数が共に２以上であると判定した場合に、最後に検出された指示位置（タッチオフ位置）が他のアイコン５１上であるか否かに拘わらず、任意のアイコン５１と他のアイコン５１との入れ替えるようにしてもよい。これは、アイコン５１を行列表示した場合には、アイコン５１の挿入等の入れ替え以外の処理が好ましくないからである。
【０１７８】
また、下側ＬＣＤ１２の画面に表示されているアイコン５１の行数及び列数が共に２以上であるか否かを判定し、行数及び列数が一方でも２以上ではないと判定した場合（アイコン５１が一行表示或いは一列表示される場合）に、ユーザがアイコン５１の入れ替えと挿入とを選択できるようにしてもよい。具体的には、最後に検出された指示位置が他のアイコン５１上であるか、又は他の２つのアイコン５１の間であるかを判別し、他のアイコン５１上であると判別した場合にはドラッグアイコンと他のアイコン５１とを入れ替え、他の２つのアイコン５１の間であると判別した場合には、その２つのアイコン５１の間にドラッグアイコンを挿入するようにしてもよい。これは、アイコン５１が一行表示或いは一列表示される場合には、ドラッグアイコンを他の２つのアイコン５１間に挿入する処理を行っても、各アイコン５１の表示位置が大きく崩れることがないので、ユーザがアイコン５１の入れ替えと挿入とを簡単に選択できるようにすることが好ましいからである。
【０１７９】
また、上記実施形態では、１個のドラッグアイコンのみを他のアイコン５１と入れ替える場合について説明した。これに代えて、任意のアイコン５１を含む２以上のアイコン５１を選択して、これら複数のアイコン５１をまとめて指示位置に応じて移動させると共に、指示位置が検出されなくなったときに、最後に検出された指示位置に応じて、他の２以上のアイコン５１と入れ替えるようにしてもよい。なお、２以上のアイコン５１を選択する方法としては、例えば、水平方向及び垂直方向にユーザが自由に拡大／縮小可能な選択枠を下側ＬＣＤ１２の画面に表示し、選択枠によって指示されたアイコン５１を選択アイコンとして選択する方法が挙げられる。また、別の選択方法としては、ユーザがまとめて移動させたいアイコン５１をタッチペン２８で囲むような操作を行った場合に、そのタッチペン２８の移動軌跡の内側に含まれているアイコン５１を選択アイコンとして選択する方法が挙げられる。
【０１８０】
また、上記実施形態では、座標入力手段としてタッチパネル１３を利用する場合を例に説明したが、座標入力手段はタッチパネル１３に限定されるものではなく、例えばマウスやジョイスティックやタッチパッド等であってもよい。
【０１８１】
また、上記実施形態では、本発明のオブジェクトがアイコンである場合を例に説明したが、本発明のオブジェクトは、画像、文字、記号、サムネイル画像等であってもよい。
【０１８２】
また、上記実施形態では、アイコン行列が水平方向にスクロール表示される場合を例に説明したが、アイコン行列は、垂直方向にスクロール表示されてもよい。
【０１８３】
また、上記実施形態では、オブジェクト非配置領域としてのアイコン空領域５８が設けられている場合を例に説明したが、必ずしもオブジェクト非配置領域が設けられている必要はない。
【０１８４】
また、上記実施形態では、行増加ボタン５５が行数を増加させる第１ボタンとして機能すると共に行減少ボタン５６が行数を減少させる第２ボタンとして機能する場合を例に説明した。これに代えて、列数を増加させる第１ボタン、及び列数を減少させる第２ボタンを画面内に表示するようにしてもよい。すなわち、ユーザがアイコン行列の列数を変更できるようにしても構わない。また、ユーザがアイコン行列の行数及び列数を変更できるようにしてもよい。
【０１８５】
また、上記実施形態では、アイコン行列の行数が可変である場合を例に説明したが、アイコン行列の行数が固定されていても構わない。
【０１８６】
また、図２２のステップＳ２３，Ｓ２５，Ｓ３０の処理で用いる閾値は、適切な値を個別に設定すればよい。
【０１８７】
また、上記実施形態では、ゲーム装置１０にタッチパネル１３が一体的に設けられている場合を例に説明したが、ゲーム装置１０とタッチパネルとを別体に構成しても、本発明を実現できることは言うまでもない。また、上側ＬＣＤ２２の上面にタッチパネル１３を設けて上側ＬＣＤ２２に上述した下側ＬＣＤ１２に表示していた表示画像を表示してもよい。
【０１８８】
また、上記実施例では、携帯型のゲーム装置１０を用いて説明したが、一般的なパーソナルコンピュータ等の情報処理装置で本発明の情報処理プログラムを実行して、本発明を実現しても構わない。また、他の実施形態では、ゲーム装置に限らず任意の携帯型電子機器、例えば、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）や携帯電話、パーソナルコンピュータ等であってもよい。
【０１８９】
また、上述した説明では全ての情報処理をゲーム装置１０で行う場合を例に説明したが、情報処理の各処理ステップの少なくとも一部を他の装置で行っても構わない。例えば、ゲーム装置１０が他の装置（例えば、サーバや他のゲーム装置）と通信可能に接続されている場合、上記情報処理における処理ステップは、ゲーム装置１０及び他の装置が協働することによって実行されてもよい。また、上記実施形態においては、ゲーム装置１０の情報処理部３１が所定のプログラムを実行することによって、上述したフローチャートによる処理が行われたが、ゲーム装置１０が備える専用回路によって上記処理の一部又は全部が行われてもよい。
【０１９０】
また、上述したゲーム装置１０の形状や、それに設けられている各種操作ボタン１４、アナログスティック１５、タッチパネル１３の形状、数、および設置位置等は、単なる一例に過ぎず他の形状、数、および設置位置であっても、本発明を実現できることは言うまでもない。また、上述した情報処理で用いられる処理順序、設定値、判定に用いられる値等は、単なる一例に過ぎず他の順序や値であっても、本発明を実現できることは言うまで
もない。
【０１９１】
また、上記情報処理プログラムは、外部メモリ４５やデータ保存用外部メモリ４６等の外部記憶媒体を通じてゲーム装置１０に供給されるだけでなく、有線又は無線の通信回線を通じてゲーム装置１０に供給されてもよい。また、上記プログラムは、ゲーム装置１０内部の不揮発性記憶装置に予め記録されていてもよい。なお、上記プログラムを記憶する情報記憶媒体としては、不揮発性メモリの他に、ＣＤ−ＲＯＭ、ＤＶＤ、或いはそれらに類する光学式ディスク状記憶媒体、フレキシブルディスク、ハードディスク、光磁気ディスク、磁気テープ等であってもよい。また、上記プログラムを記憶する情報記憶媒体としては、上記プログラムを一時的に記憶する揮発性メモリでもよい。
【０１９２】
以上、本発明を詳細に説明してきたが、上述の説明はあらゆる点において本発明の例示に過ぎず、その範囲を限定しようとするものではない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。
【産業上の利用可能性】
【０１９３】
本発明は、ユーザが座標入力手段を用いて行った操作に応じた情報処理を行う情報処理装置に実行させる情報処理プログラム、情報処理装置、情報処理システム、及び情報処理方法等に適用可能である。
【符号の説明】
【０１９４】
１０    ゲーム装置
１２    下側ＬＣＤ
１３    タッチパネル
２８    タッチペン
３１    情報処理部
３２    メインメモリ
４２    Ｉ／Ｆ回路
４５    外部メモリ
５１    アイコン
５３    右スライドタブ
５４    左スライドタブ
５５    行増加ボタン
５６    行減少ボタン
３１１    ＣＰＵ
３２２    情報処理プログラム
３２６    行数データ
３２７    表示順データ
３２８    位置データ
３２９    閾値データ
【図１】
0005745241.tif 000002
【図２】
0005745241.tif 000003
【図３Ａ】
0005745241.tif 000004
【図３Ｂ】
0005745241.tif 000005
【図３Ｃ】
0005745241.tif 000006
【図３Ｄ】
0005745241.tif 000007
【図４】
0005745241.tif 000008
【図５】
0005745241.tif 000009
【図６】
0005745241.tif 000010
【図７】
0005745241.tif 000011
【図８】
0005745241.tif 000012
【図９】
0005745241.tif 000013
【図１０】
0005745241.tif 000014
【図１１】
0005745241.tif 000015
【図１２】
0005745241.tif 000016
【図１３】
0005745241.tif 000017
【図１４】
0005745241.tif 000018
【図１５】
0005745241.tif 000019
【図１６】
0005745241.tif 000020
【図１７】
0005745241.tif 000021
【図１８】
0005745241.tif 000022
【図１９】
0005745241.tif 000023
【図２０】
0005745241.tif 000024
【図２１】
0005745241.tif 000025
【図２２】
0005745241.tif 000026
【図２３】
0005745241.tif 000027
【図２４】
0005745241.tif 000028
【図２５】
0005745241.tif 000029
【図２６】
0005745241.tif 000030