説明

オブジェクト表示順変更プログラム及び装置

【課題】画面に表示される複数のオブジェクトの表示順を、ユーザが簡単に変更できるようにすること。
【解決手段】画面上に水平方向にアイコン列が表示される。アイコン列の中のいずれかのアイコン上の点を起点としてユーザがスティックを水平方向にスライドさせた場合には、スティックの移動に応じてアイコン列を水平方向にスクロールさせることが可能となり、アイコン列の中のいずれかのアイコン上の点を起点としてユーザがスティックを垂直方向にスライドさせた場合には、スティックの移動に応じてそのアイコンのみを移動させることが可能となる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、オブジェクト表示順変更プログラム及び装置に関し、特に、画面に表示される複数のオブジェクトの表示順を座標入力手段を用いてユーザが自由に変更することを可能にするためのオブジェクト表示順変更プログラム及び装置に関する。
【背景技術】
【0002】
従来、複数のオブジェクト(サムネイル画像やアイコンなど)を画面に表示してユーザに提示する装置がある。このような装置において、オブジェクトが多数存在する場合には、画面には一部のオブジェクトだけを表示し、残りのオブジェクトについてはユーザによるスクロール操作(例えばスクロールバーを操作するなど)に応じて表示することも一般的に行われている。そうすることにより、オブジェクトが多数存在する場合でも視認性が悪くなることがない。
【0003】
ところで、上記のような複数のオブジェクトの表示順をユーザが自由に変更できるようにした装置も従来ある。例えば、特許文献1に記載の画像順序づけ装置では、以下のような手順により、複数のオブジェクトの表示順をユーザが変更することができる。
【0004】
第1のステップとして、ユーザは、表示エリアに表示されている複数のサムネイル画像(上記オブジェクトに相当)のうちの所望のサムネイル画像をマウス等のポインティングデバイスを用いて一時置き場(画面内の所定領域)にドラッグ&ドロップすることにより、当該サムネイル画像を一時置き場に退避させる。
【0005】
第2のステップとして、ユーザは、必要に応じてスクロールボックス(上記スクロールバーに相当)を操作して表示エリアの画面(サムネイル画像群)をスクロールさせる。
【0006】
第3のステップとして、ユーザは、一時置き場に退避されたサムネイル画像を、表示エリアにドラッグ&ドロップする。
【0007】
このように、特許文献1に記載の画像順序づけ装置では、上記のような手順により、ユーザは所望のサムネイル画像を、所望の移動先(任意の隣接する2つのサムネイル画像の間)に移動させることができる。
【特許文献1】特開2005−227826号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
しかしながら、特許文献1に記載の画像順序づけ装置では、所望のサムネイル画像を所望の移動先に移動させるときに、上記のような第1〜第3のステップを経る必要があるため、手間がかかるという問題がある。
【0009】
また、表示エリアのスクロールするためには、細長いスクロールボックスを操作する必要があり、スクロールボックス上の位置をポインティングデバイスで指示するために高精度の操作が要求されるという問題がある。
【0010】
それゆえに本発明は、画面に表示される複数のオブジェクトの表示順を、ユーザが簡単に変更することを可能にするためのオブジェクト表示順変更プログラム及び装置を提供することを目的とする。
【課題を解決するための手段】
【0011】
上記目的を達成するために、本発明は以下の構成を採用した。なお、括弧内の参照符号、図番号および補足説明は、本発明の理解を助けるために図面との対応関係の一例を示したものであって、本発明の範囲を何ら限定するものではない。
【0012】
本発明のオブジェクト表示順変更プログラムは、画面(12)に表示される複数のオブジェクト(アイコン40a〜40x)の表示順(図4)を座標入力手段(15)を用いてユーザが変更することを可能にするためのプログラムである。
上記オブジェクト表示順変更プログラムは、オブジェクト表示ステップ(図3)、指示位置検出ステップ(S20)、処理方法選択ステップ(S28、S34)、第1のスクロールステップ(S31)、第1のオブジェクト移動ステップ(S42)、および第1のオブジェクト挿入ステップ(S47)をコンピュータ(21)に実行させる。
上記オブジェクト表示ステップは、上記複数のオブジェクトのうちのサブセットを所定の表示順にしたがって上記画面内のオブジェクト表示領域に表示するステップである。
上記指示位置検出ステップは、上記座標入力手段によって指示される上記オブジェクト表示領域上の位置を指示位置として検出するステップである。
上記処理方法選択ステップは、上記オブジェクト表示領域に表示されている上記サブセットのうちの第1のオブジェクト上の点を起点(タッチオン位置)として上記指示位置が移動したときに、予め定められた判定基準にしたがって、第1の処理方法と、第2の処理方法のいずれか一方を選択するステップである。
上記第1のスクロールステップは、上記処理方法選択ステップで上記第1の処理方法が選択されたとき(S28でY)に、上記オブジェクト表示領域において上記複数のオブジェクトを上記指示位置の移動に応じてスクロール表示させるステップである。
上記第1のオブジェクト移動ステップは、上記処理方法選択ステップで上記第2の処理方法が選択されたとき(S34でY)に、上記複数のオブジェクトのうちの上記第1のオブジェクトだけを上記指示位置に応じて移動させるステップである。
上記第1のオブジェクト挿入ステップは、上記第1のオブジェクト移動ステップによって上記第1のオブジェクトを移動させている間(ドラッグモード中)に上記指示位置が検出されなくなったとき(S40でY)に、最後に検出された指示位置(タッチオフ位置)に応じて、いずれか2つの互いに隣接するオブジェクトの間に上記第1のオブジェクトを挿入して表示するステップである。
【0013】
なお、上記座標入力手段としては、タッチパネルやマウスなどの任意の座標入力装置を利用することができる。
【0014】
上記座標入力手段としてマウスを利用する場合には、マウスボタンが押されている間に画面上のポインタが指し示している位置を、上記指示位置として利用することができる。この場合、上記マウスボタンが押されなくなった時点で、上記指示位置は検出されなくなることになる。
【0015】
なお、上記「表示順」は、上記複数のオブジェクトの画面上における見た目の並び順を意味する。
【0016】
上記処理方法選択ステップでは、上記指示位置が第1の方向に移動したときには上記第1の処理方法を選択し、上記指示位置が上記第1の方向とは異なる第2の方向に移動したときには上記第2の処理方法を選択してもよい。これによりユーザは、座標入力手段による指示位置を変化させるだけで、簡単に所望の処理方法を選択することができる。
【0017】
上記第1の方向と上記第2の方向が互いに直交する方向であってもよい。これによりユーザが所望の処理方法を選択し易くなる。
【0018】
なお、上記処理方法選択ステップでは、上記のように指示位置の移動方向に限らず、他の任意の判定基準にしたがって、上記第1の処理方法と上記第2の処理方法のいずれか一方を選択してもよい。例えば、指示位置が一定時間以上ほぼ同じ位置に止まっていた場合には上記第2の処理方法を選択し、そうでない場合(すなわち指示位置が検出されてから一定時間が経過する前に指示位置が移動した場合)には上記第1の処理方法を選択するようにしてもよい。
【0019】
上記オブジェクト表示ステップでは、上記表示順にしたがって上記サブセットを所定方向に並べて表示し、上記第1の方向は上記所定方向であってもよい。
【0020】
上記オブジェクト表示順変更プログラムは、上記第1のオブジェクト移動ステップによって上記第1のオブジェクトを移動させている間(ドラッグモード中)に、上記指示位置もしくは上記第1のオブジェクトが第1の特定領域(52R、52L)に進入したことに応じて上記第1のオブジェクトを除く全てのオブジェクトをスクロール表示させる第2のスクロールステップ(S44)を上記コンピュータにさらに実行させてもよい。
【0021】
上記第1の特定領域は、上記オブジェクト表示領域の端部を含む領域であってもよい。
【0022】
上記第1のスクロールステップでは、上記処理方法選択ステップにおいて上記第1の方法が選択されたときだけでなく、上記オブジェクト表示領域に表示されているいずれか2つの互いに隣接するオブジェクトの隙間を起点として上記指示位置が上記第1の方向に移動したときにも、上記複数のオブジェクトを上記指示位置の移動に応じてスクロールさせてもよい。これにより、画面上に表示されているオブジェクトの間に隙間が存在する場合でも、ユーザは隙間を意識することなくスクロール操作を行うことが可能となり、操作性が向上する。
【0023】
上記オブジェクト表示順変更プログラムは、上記第1のオブジェクト移動ステップによって上記第1のオブジェクトを移動させている間(ドラッグモード中)に上記指示位置が検出されなくなったときに、最後に検出された指示位置もしくは上記第1のオブジェクトが所定の退避領域(50)に位置しているかどうかを判定する退避判定ステップ(S46)、上記退避判定ステップの判定結果が肯定であるときに、上記第1のオブジェクトを上記退避領域に退避させる退避ステップ(S48)、および、上記第1のオブジェクトが上記退避領域に退避されている間(退避モード中)に上記オブジェクト表示領域に表示されている他のオブジェクト上の点を起点として上記指示位置が上記第1の方向に移動したときに、上記第1のオブジェクトを除く上記複数のオブジェクトを上記指示位置の移動に応じてスクロール表示させる第3のスクロールステップ(S70)を上記コンピュータにさらに実行させてもよい。これによりユーザは、上記第1のオブジェクトを退避領域に退避させた後に、当該第1のオブジェクトを除く複数のオブジェクトをスクロールさせて、所望の挿入位置を画面に表示させることができる。
【0024】
上記オブジェクト表示順変更プログラムは、上記第1のオブジェクトが上記退避領域に退避されている間(退避モード中)に当該第1のオブジェクト上の点を起点として上記指示位置が移動したとき(S76でY)に、上記第1のオブジェクト移動ステップにおける上記指示位置に応じた上記第1のオブジェクトの移動処理を再開するオブジェクト移動再開ステップを上記コンピュータにさらに実行させてもよい。
【0025】
上記オブジェクト表示順変更プログラムは、上記第1のオブジェクトが上記退避領域に退避されている間(退避モード中)に上記座標入力手段を用いた所定の入力操作(タップ)が行われたときに、上記オブジェクト表示領域に表示されているいずれか2つの互いに隣接するオブジェクトの間に当該第1のオブジェクトを挿入する第2のオブジェクト挿入ステップ(S79)を上記コンピュータにさらに実行させてもよい。
【0026】
上記コンピュータには、上記座標入力手段に加えて、複数の操作スイッチを含む入力手段(14)が接続されていてもよい。そして、上記オブジェクト表示順変更プログラムは、上記複数の操作スイッチのうちの第1の操作スイッチ(上ボタン)が押されたときに、上記オブジェクト表示領域に表示されているオブジェクトのうちの1つを上記退避領域に退避させるスイッチ操作退避ステップ(S12)、上記退避領域に上記オブジェクトが退避されている間(退避モード中)に上記複数の操作スイッチのうちの第2の操作スイッチ(左右ボタン)が押されたときに、上記退避領域に退避されているオブジェクトを除く全てのオブジェクトをスクロール表示させるスイッチ操作スクロールステップ(S54)、および、上記退避領域に上記オブジェクトが退避されている間(退避モード中)に上記複数の操作スイッチのうちの第3の操作スイッチ(下ボタン)が押されたときに、上記退避領域に退避されているオブジェクトを、上記オブジェクト表示領域に表示されているいずれか2つの互いに隣接するオブジェクトの間に挿入するスイッチ操作オブジェクト挿入ステップ(S52)を上記コンピュータにさらに実行させてもよい。
【0027】
上記オブジェクト表示順変更プログラムは、上記第1のオブジェクトが上記退避領域に退避されている間(退避モード中)に上記オブジェクト表示領域に表示されている他のオブジェクトのうちの第2のオブジェクト上の点を起点として上記指示位置が上記第2の方向に移動したとき(S69でY)に、当該第2のオブジェクトだけを上記指示位置に応じて移動させる第2のオブジェクト移動ステップ(S42)、および、上記第2のオブジェクト移動ステップにおいて上記第2のオブジェクトの移動が開始されたときに、上記オブジェクト表示領域に表示されているいずれか2つの互いに隣接するオブジェクトの間に上記第1のオブジェクトを挿入する第1のオブジェクト入れ替えステップ(S73)を上記コンピュータにさらに実行させてもよい。これにより、退避領域に退避されているオブジェクトを、他の所望のオブジェクトと入れ替えで、他の所望のオブジェクトの位置に簡単に挿入することができる。
【0028】
上記オブジェクト表示順変更プログラムは、上記第1のオブジェクトが上記退避領域に退避されている間(退避モード中)に上記オブジェクト表示領域に表示されている他のオブジェクトのうちの第2のオブジェクト上の点を起点として上記指示位置が上記第2の方向に移動したとき(S69でY)に、当該第2のオブジェクトだけを上記指示位置に応じて移動させる第2のオブジェクト移動ステップ(S42)、および、上記第2のオブジェクト移動ステップにおいて上記第2のオブジェクトの移動が開始された後、最後に検出された指示位置もしくは当該第2のオブジェクトが上記退避領域に位置している状態で上記指示位置が検出されなくなったとき(S40でY)に、当該第2のオブジェクトを上記退避領域に退避させるとともに、上記オブジェクト表示領域に表示されているいずれか2つの互いに隣接するオブジェクトの間に上記第1のオブジェクトを挿入する第2のオブジェクト入れ替えステップを上記コンピュータにさらに実行させてもよい。
【0029】
上記退避領域には同時に2つ以上のオブジェクトを退避可能であってよい。これにより、2つ以上のオブジェクトの表示順を効率良く変更することができる。
【0030】
上記オブジェクト表示順変更プログラムは、上記退避領域に複数のオブジェクトが退避されている間(退避モード中)に上記オブジェクト表示領域に表示されている他のオブジェクトのうちの第2のオブジェクト上の点を起点として上記指示位置が上記第2の方向に移動したとき(S69でY)に、当該第2のオブジェクトだけを上記指示位置に応じて移動させる第2のオブジェクト移動ステップ(S42)、および、上記第2のオブジェクト移動ステップにおいて上記第2のオブジェクトの移動が開始された後、当該第2のオブジェクトが上記退避領域内の複数のオブジェクトのうちの第3のオブジェクト上に位置している状態で上記指示位置が検出されなくなったとき(S40でY)に、当該第2のオブジェクトを上記退避領域に退避させるとともに、上記オブジェクト表示領域に表示されているいずれか2つの互いに隣接するオブジェクトの間に上記第3のオブジェクトを挿入する第3のオブジェクト入れ替えステップを上記コンピュータにさらに実行させてもよい。
【0031】
上記第1のオブジェクト挿入ステップでは、上記第1のオブジェクト移動ステップによって上記第1のオブジェクトを移動させている間に上記指示位置が検出されなくなったときに、上記オブジェクト表示領域に表示されている、最後に検出された指示位置に最も近い2つの互いに隣接するオブジェクトの間に上記第1のオブジェクトを挿入してもよい。
【0032】
本発明のオブジェクト表示順変更装置は、画面(12)に表示される複数のオブジェクト(アイコン40a〜40x)の表示順(図4)を座標入力手段(15)を用いてユーザが変更することを可能にする装置である。
オブジェクト表示順変更装置は、上記画面を有する表示手段、上記座標入力手段、オブジェクト表示手段(21、図3)、指示位置検出手段(21、S20)、処理方法選択手段(21、S28、S34)、第1のスクロール手段(21、S31)、第1のオブジェクト移動手段(21、S42)、および第1のオブジェクト挿入手段(21、S47)を備える。
上記オブジェクト表示手段は、上記複数のオブジェクトのうちのサブセットを所定の表示順にしたがって上記画面内のオブジェクト表示領域に表示する手段である。
上記指示位置検出手段は、上記座標入力手段によって指示される上記オブジェクト表示領域上の位置を指示位置として検出する手段である。
上記処理方法選択手段は、上記オブジェクト表示領域に表示されている上記サブセットのうちの第1のオブジェクト上の点を起点(タッチオン位置)として上記指示位置が移動したときに、予め定められた判定基準にしたがって、第1の処理方法と、第2の処理方法のいずれか一方を選択する手段である。
上記第1のスクロール手段は、上記処理方法選択手段によって上記第1の処理方法が選択されたとき(S28でY)に、上記オブジェクト表示領域において上記複数のオブジェクトを上記指示位置の移動に応じてスクロール表示させる手段である。
上記第1のオブジェクト移動手段は、上記処理方法選択手段によって上記第2の処理方法が選択されたとき(S34でY)に、上記複数のオブジェクトのうちの上記第1のオブジェクトだけを上記指示位置に応じて移動させる手段である。
上記第1のオブジェクト挿入手段は、上記第1のオブジェクト移動手段によって上記第1のオブジェクトを移動させている間に上記指示位置が検出されなくなったとき(S40でY)に、最後に検出された指示位置(タッチオフ位置)に応じて、いずれか2つの互いに隣接するオブジェクトの間に上記第1のオブジェクトを挿入して表示する手段である。
【0033】
本発明の他のオブジェクト表示順変更プログラムは、画面(12)に表示される複数のオブジェクト(アイコン40a〜40x)の表示順(図4)を座標入力手段(15)を用いてユーザが変更することを可能にするためのプログラムである。
上記オブジェクト表示順変更プログラムは、オブジェクト表示ステップ(図3)、指示位置検出ステップ(S20)、処理方法選択ステップ、第1のスクロールステップ(S31)、第1のオブジェクト移動ステップ(S42)、および第1のオブジェクト挿入ステップ(S47)をコンピュータ(21)に実行させる。
上記オブジェクト表示ステップは、上記複数のオブジェクトのうちのサブセットを所定の表示順にしたがって上記画面内のオブジェクト表示領域に表示するステップである。
上記指示位置検出ステップは、上記座標入力手段によって指示される上記オブジェクト表示領域上の位置を指示位置として検出するステップである。
上記処理方法選択ステップは、上記オブジェクト表示領域上の点を起点(タッチオン位置)として上記指示位置が移動したときに、予め定められた判定基準にしたがって、第1の処理方法と、第2の処理方法のいずれか一方を選択するステップである。
上記第1のスクロールステップは、上記処理方法選択ステップで上記第1の処理方法が選択されたときに、上記オブジェクト表示領域において上記複数のオブジェクトを上記指示位置の移動に応じてスクロール表示させるステップである。
上記第1のオブジェクト移動ステップは、上記処理方法選択ステップで上記第2の処理方法が選択されたときに、上記複数のオブジェクトのうちの上記第1のオブジェクトだけを上記指示位置に応じて移動させるステップである。
上記第1のオブジェクト挿入ステップは、上記第1のオブジェクト移動ステップによって上記第1のオブジェクトを移動させている間(ドラッグモード中)に上記指示位置が検出されなくなったとき(S40でY)に、最後に検出された指示位置(タッチオフ位置)に応じて、いずれか2つの互いに隣接するオブジェクトの間に上記第1のオブジェクトを挿入して表示するステップである。
【0034】
上記処理方法選択ステップでは、上記起点が上記サブセットのうちのいずれのオブジェクト上でもないときに(図31)、上記第1の処理方法を選択し(図32)、上記起点が上記サブセットのうちのいずれかのオブジェクト上であるときに(図33)、上記第2の処理方法を選択して当該オブジェクトだけを上記指示位置に応じて移動させてもよい(図34)。
【発明の効果】
【0035】
本発明によれば、画面に表示される複数のオブジェクトの表示順を、ユーザが簡単に変更することが可能となる。
【発明を実施するための最良の形態】
【0036】
以下、本発明の実施形態について説明する。
【0037】
図1は、本発明の一実施形態に係るゲーム装置の外観図である。ただし、本発明は、携帯型のゲーム装置に限らず、据置型のゲーム装置にも適用可能である。さらに、本発明はゲーム装置に限らず、映像コンテンツ表示機能を有する任意の情報処理装置(例えば、パーソナルコンピュータや携帯電話やテレビジョン受像器やDVDプレイヤ等)に適用可能である。
【0038】
図1において、ゲーム装置10は、第1のLCD(Liquid Crystal Display:液晶表示装置)11および第2のLCD12を含む。ハウジング13は上側ハウジング13aと下側ハウジング13bとによって構成されている。第1のLCD11は上側ハウジング13aに収納され、第2のLCD12は下側ハウジング13bに収納される。第1のLCD11および第2のLCD12の解像度はいずれも256dot×192dotである。なお、本実施形態では表示装置としてLCDを用いているが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置など、他の任意の表示装置を利用することができる。また任意の解像度のものを利用することができる。
【0039】
上側ハウジング13aには、後述する1対のスピーカ(図3の30aおよび30b)からの音を外部に放出するための音抜き孔18aおよび18bが形成されている。また、上側ハウジング13aと下側ハウジング13bとを開閉可能に接続するヒンジ部にはマイクロフォン用孔33が設けられている。
【0040】
下側ハウジング13bには、入力装置として、十字スイッチ14a、スタートスイッチ14b、セレクトスイッチ14c、Aボタン14d、Bボタン14e、Xボタン14f、およびYボタン14gが設けられている。また、下側ハウジング13bの側面には、図示しないLボタンおよびRボタンが設けられている。また、さらなる入力装置として、第2のLCD12の画面上にタッチパネル15が装着されている。下側ハウジング13bの側面には、電源スイッチ19、メモリカード17を接続するための挿入口35(図1に示す一点鎖線)、スティック16を収納するための挿入口36(図1に示す点線)が設けられている。
【0041】
タッチパネル15としては、例えば抵抗膜方式や光学式(赤外線方式)や静電容量結合式など、任意の方式のものを利用することができる。タッチパネル15は、スティック16に限らず指で操作することも可能である。本実施形態では、タッチパネル15として、第2のLCD12の解像度と同じく256dot×192dotの解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル15の解像度と第2のLCD12の解像度が一致している必要はない。
【0042】
メモリカード17は、ゲームプログラムを記憶するROM17aと、バックアップデータを書き換え可能に記憶するRAM17bを搭載し、下部ハウジング13bに設けられた挿入口35に着脱自在に装着される。図1では省略するが、挿入口35の奥部には、メモリカード17の挿入方向先端部に設けられるコネクタと接合するための第1コネクタ23a(図2参照)が設けられている。メモリカード17が挿入口35に挿入されると、コネクタ同士が接合され、ゲーム装置10のCPUコア21(図2参照)がメモリカード17にアクセス可能となる。
【0043】
次に、図2を参照してゲーム装置10の内部構成を説明する。図2は、ゲーム装置10の内部構成を示すブロック図である。図2において、ハウジング13に収納される電子回路基板20には、CPUコア21が実装される。CPUコア21には、バス22を介して、コネクタ23が接続されるとともに、入出力インターフェース回路(図面ではI/F回路と記す)25、第1GPU(Graphics Processing Unit)26、第2GPU27、RAM24、およびLCDコントローラ31、およびワイヤレス通信部34が接続される。コネクタ23には、メモリカード17が着脱自在に接続される。I/F回路25には、タッチパネル15、右スピーカ30a、左スピーカ30b、図1の十字スイッチ14aやAボタン14d等から成る操作スイッチ部14、およびマイクロフォン37が接続される。右スピーカ30aと左スピーカ30bは、音抜き孔18a、18bの内側にそれぞれ配置される。マイクロフォン37は、マイクロフォン用孔33の内側に配置される。
【0044】
第1GPU26には、第1VRAM(Video RAM)28が接続され、第2GPU27には、第2VRAM29が接続される。第1GPU26は、CPUコア21からの指示に応じて第1の表示画像を生成し、第1VRAM28に描画する。第2GPU27は、同様にCPUコア21からの指示に応じて第2の表示画像を生成し、第2VRAM29に描画する。第1VRAM28および第2VRAM29はLCDコントローラ31に接続されている。
【0045】
LCDコントローラ31はレジスタ32を含む。レジスタ32はCPUコア21からの指示に応じて0または1の値を記憶する。LCDコントローラ31は、レジスタ32の値が0の場合は、第1VRAM28に描画された第1の表示画像を第1のLCD11に出力し、第2VRAM29に描画された第2の表示画像を第2のLCD12に出力する。また、レジスタ32の値が1の場合は、第1VRAM28に描画された第1の表示画像を第2のLCD12に出力し、第2VRAM29に描画された第2の表示画像を第1のLCD11に出力する。
【0046】
ワイヤレス通信部34は、他のゲーム装置のワイヤレス通信部との間で、データを送受信する機能を有している。また、ゲーム装置10は、ワイヤレス通信部34を介してインターネット等の広域ネットワークに接続することが可能であり、ネットワークを介して他のゲーム装置との間で通信を行うことも可能である。
【0047】
本実施形態では、ゲーム装置10のCPUコア21は、メモリカード17のROM17a等からRAM24にロードされたオブジェクト表示順変更プログラムを実行する。このオブジェクト表示順変更プログラムによれば、画面に表示される複数のオブジェクトの表示順を座標入力手段を用いてユーザが自由に変更することを可能になる。以下、図3〜図20を参照して、オブジェクト表示順変更プログラムに基づくゲーム装置10の動作の概要を説明する。
【0048】
図3は、オブジェクト表示順変更プログラムを実行したときに第2のLCD12の画面に表示される画像を示している。図3において、画面には5つのアイコン(アイコン40h、40i、40j、40k、40l)と、吹き出し42と、スライドバー44と、カーソル46が表示されている。
【0049】
アイコン40は、プログラム(CPUコア21によって実行可能なコンピュータプログラム)に関連付けられた画像である。ユーザはアイコン40を利用して所望のプログラムを起動させることができる。本実施形態では全部で24個のアイコン(アイコン40a〜40x)が図4に示すように順序づけられており、この順序にしたがって、それらの24個のアイコンのうちの数個が画面の所定領域(以下、アイコン列表示領域と称す)に表示される。本実施形態では、図3において点線で囲った領域を、アイコン列表示領域としている。ユーザは、アイコン列表示領域に表示されているアイコン列から所望のプログラムに対応するアイコンを選択することによって、当該所望のプログラムをCPUコア21に実行させることができる。ユーザは、アイコン列表示領域に表示されているアイコン列をスクロールさせることによって、任意のアイコンを画面に表示させて選択することができる。
【0050】
吹き出し42は、アイコン列表示領域の中央に表示されているアイコン(図3の例ではアイコン40j)に関する説明文(そのアイコンに対応するプログラムの説明など)をユーザに提供するための画像である。
【0051】
スライドバー44は、カーソル46との組み合わせにより、種々の機能をユーザに提供する。スライドバー44には24個の四角形が表示されており、これらの四角形は24個のアイコン40a〜40xにそれぞれ対応している。カーソル46は、それらのアイコン40a〜40xのうち、どのアイコンが現在アイコン列表示領域に表示されているかを示している。ユーザは、スティック16を使ってカーソル46をスライドバー44に沿って(すなわち水平方向に)ドラッグすることによって、スライドバー44上の任意の点にカーソル46を移動させることができる。また、ユーザは、スライドバー44上の任意の点にタッチすることによって、その点にカーソル46を移動させることもできる。スライドバー44上でのカーソル46の位置が変化すると、それに応じてアイコン列表示領域に表示させるアイコンも変化する。このように、スライドバー44およびカーソル46を利用することによって、ユーザはアイコン40a〜40xの中から所望のアイコンをアイコン列表示領域に表示させることができる。なお、本実施形態では、所望のアイコンをアイコン列表示領域に表示させるための操作方法として、スライドバー44やカーソル46を利用する以外にも種々の操作方法が用意されている。
【0052】
図5〜図20を参照して、ユーザがアイコン40a〜40xの並べ順を変化させるときの操作方法について具体的に説明する。
【0053】
図5は、ユーザがスティック16でアイコン40jにタッチしたときの画面例である。ユーザがスティック16でアイコン40jにタッチすると、タッチされたアイコン40jがハイライト(例えば輪郭強調など)される。
【0054】
図5の状態(すなわちアイコン列の中のいずれかのアイコンをスティック16でタッチした状態)からユーザがスティック16を画面の右方向にスライド(スティック16を画面に接触させたまま滑らせる)させた場合には、図6に示すように、アイコン列表示領域に表示されているアイコン列が、スティック16のスライド量に応じて右方向にスクロールする。なお、ユーザがスティック16を左方向に向かってスライドさせたときには、アイコン列表示領域に表示されているアイコン列が、スティック16のスライド量に応じて左方向にスクロールする。このように、アイコン列表示領域に表示されているアイコンをスティック16でタッチしてからスティック16を水平方向にスライドさせることによって、ユーザはアイコン列をスクロールさせることができる。アイコン列がスクロールすると、それに応じてカーソル46の位置も移動する。
【0055】
なお、本実施形態では、図7のように、アイコン列を含むようなスクロール領域48が設定されている。ユーザは、アイコン上に限らず、スクロール領域48内の任意の点にタッチしてから、タッチ位置を水平方向にずらすことによって、アイコン列をスクロールさせることができる。例えば、図5におけるアイコン40hとアイコン40iの間の隙間をスティック16でタッチしてからスティック16を水平方向にスライドさせても、アイコン列をスクロールさせることができる。
【0056】
図5の状態(すなわちアイコン列の中のいずれかのアイコンをスティック16でタッチした状態)からユーザがスティック16を画面の上方向に向かってスライドさせた場合には、図8に示すように、アイコン40jがスティック16に追従して上方向に移動する。なお、ユーザがスティック16を下方向にスライドさせたときには、アイコン40jがスティック16に追従して下方向に移動する。このように、アイコン列表示領域に表示されているアイコンをスティック16でタッチしてからスティック16を垂直方向にスライドさせることによって、ユーザはアイコン列の中から所望のアイコンを抜き出すことができる。こうしてアイコン列から抜き出されたアイコン40jは、スティック16が画面(タッチパネル)に接触している限り、図9に示すように、スティック16を任意の方向にスライドさせることによってユーザが自由に移動(ドラッグ)させることができる。以下の説明では必要に応じて、ユーザがドラッグしているアイコンのことを「ドラッグアイコン」と称することとする。アイコン列からアイコン40jが抜き出されると、それに応じてスライドバー44を構成している四角形の数が23個に更新され、さらにアイコン40h、40i、40k、40lの表示位置が更新される(図9参照)。
【0057】
なお、変形例として、ユーザがスティック16を(下方向ではなく)上方向にスライドさせた場合にのみアイコン列から所望のアイコンを抜き出せるようにしてもよい。
【0058】
図9の状態(すなわちアイコンをスティック16でドラッグしている状態)から、ユーザが図10に示す位置(すなわちアイコン40kとアイコンlの間)までアイコン40jをドラッグしてからドロップ(スティック16を画面から離す)すると、図11に示すように、アイコン40kとアイコンlの間にアイコン40jが挿入され、それに応じてスライドバー44を構成している四角形の数が24個に更新され、さらにアイコン40jのハイライトが解除される。
【0059】
なお、本実施形態では、図12のように、アイコン列表示領域から離れた位置に退避領域50が設定されている。ユーザは、アイコン列に含まれる隣接する2つのアイコンの間の位置に限らず、退避領域50外の任意の点でドラッグアイコンをドロップすることによって、ドラッグアイコンをアイコン列に挿入することができる。典型的には、ドラッグアイコンをドロップした点から最も近くにある、アイコン列内の隣接する2つのアイコンの間にドラッグアイコンが挿入される。例えば、図9の状態でアイコン40jをドロップすることによって、アイコン40kとアイコンlの間にアイコン40jを挿入することができる。なお、ドラッグアイコンを退避領域50内でドロップした場合については後述する。
【0060】
図9の状態(すなわちアイコンをスティック16でドラッグしている状態)から、ユーザが図13に示すようにアイコン列表示領域の右端までアイコン40jをドラッグすると、図中の矢印の方向(すなわち画面の左方向)にアイコン列がスクロールを始める。本実施形態では、図14のように、アイコン列表示領域の右端付近に右端領域52Rが設定されており、アイコン列表示領域の左端付近に左端領域52Lが設定されている。ユーザは、ドラッグアイコン(図13の例ではアイコン40j)を右端領域52R内に位置させることによって、アイコン列を左方向にスクロールさせることができる。同様に、ユーザは、ドラッグアイコンを左端領域52L内に位置させることによって、アイコン列を右方向にスクロールさせることができる。なお、アイコン列のスクロール表示は、ドラッグアイコンが右端領域52R内または左端領域52L内に位置している間は継続し、それらの領域の外部に出た時点で終了する。したがって、図13のようにしてアイコン列をスクロールさせて所望の移動先(アイコン列に含まれる任意の隣接する2つのアイコンの隙間)を表示させた後に、ドラッグアイコンをその所望の移動先までドラッグしてからドロップすることによって、ユーザはドラッグアイコンをアイコン列の所望の位置に挿入することができる。このような操作により、ユーザは、所望のアイコンをスティック16でタッチしてから、そのアイコンをアイコン列の所望の位置に挿入するまでの間、スティック16を画面から一切離す必要がないので、アイコンの表示順の変更を1回のスライド操作(すなわち、スティック16を画面に接触させて、画面上をスライドさせて、画面から離すまでの一連の操作)だけで簡単に実現することができる。
【0061】
図9の状態(すなわちアイコンをスティック16でドラッグしている状態)から、ユーザが図15に示すようにアイコン40jを退避領域50(図11参照)内までドラッグしてからアイコン40jをドロップすると、アイコン40jはアイコン列に挿入されることなく、図16に示すように退避領域50に退避され、アイコン40jのハイライトが解除される。以下の説明では必要に応じて、退避領域50に退避されているアイコンのことを「退避アイコン」と称することとする。退避アイコンが存在している間、画面には図16に示すようなマーク54が表示される。マーク54は、アイコン列表示領域に表示されているアイコン列の中央付近に位置する隣接する2つのアイコンの隙間を指し示しており、ユーザが退避アイコンをスティック16でタップ(すなわち、スティック16でタッチした後、画面上をスライドさせることなく画面から離す)すると、マーク54が示している隙間に退避アイコンが挿入される。
【0062】
図17は、図16の状態(すなわち退避アイコンが存在する状態)において、ユーザがスティック16でアイコン40lにタッチしたときの画面例である。ユーザがスティック16でアイコン40lにタッチすると、タッチされたアイコン40lがハイライトされる。
【0063】
図17の状態(すなわち退避アイコンが存在する状態において、さらにアイコン列の中のいずれかのアイコンをスティック16でタッチした状態)からユーザがスティック16を画面の左方向にスライドさせた場合には、図18に示すように、アイコン列表示領域に表示されているアイコン列が、スティック16のスライド量に応じて左方向にスクロールする。なお、ユーザがスティック16を画面の右方向にスライドさせた場合には、アイコン列表示領域に表示されているアイコン列が、スティック16のスライド量に応じて右方向にスクロールする。このように、退避アイコンが存在する状態においても、退避アイコンが存在していない状態と同様に、スクロール領域48(図7参照)内の任意の点をスティック16でタッチしてからスティック16を水平方向にスライドさせることによって、ユーザはアイコン列をスクロールさせることができる。
【0064】
図17の状態(すなわち退避アイコンが存在する状態において、さらにアイコン列の中のいずれかのアイコンをスティック16でタッチした状態)からユーザがスティック16を画面の上方向に向かってスライドさせた場合には、図19に示すように、アイコン40lがスティック16に追従して上方向に移動してアイコン40lがアイコン列から抜き出され、さらに図20に示すように、退避アイコンであるアイコン40jが、アイコン40lと入れ替わりでアイコン列に挿入される。なお、ユーザがスティック16を下方向にスライドさせたときにも、アイコン40lがスティック16に追従して下方向に移動してアイコン40lがアイコン列から抜き出され、さらにアイコン40jが、アイコン40lと入れ替わりでアイコン列に挿入される。これにより、アイコン40jをアイコン列に挿入する操作とアイコン40lをアイコン列から抜き出す操作を、単一のスライド操作で実現することができるため、操作効率が向上する。
【0065】
なお、本実施形態では、上述した種々のアイコン操作方法の他にも、いくつかの便利なアイコン操作方法が用意されている。例えば、図3の状態(すなわちドラッグアイコンも退避アイコンも存在しない状態)において、ユーザがアイコン列表示領域の中央のアイコン40iをスティック16でタップすると、タップされたアイコン40iが起動される(すなわちアイコン40iに関連付けられたプログラムが実行される)。また例えば、図3の状態(すなわちドラッグアイコンも退避アイコンも存在しない状態)において、ユーザがアイコン列表示領域の中央のアイコン40i以外のアイコン(アイコン40h、40i、40k、40l)をスティック16でタップすると、タップされたアイコンがアイコン列表示領域の中央に向かって移動するようにアイコン列がスクロールする。
【0066】
なお、上述したようなアイコン操作方法のうちのいくつかは、ハードウェアスイッチ(図2の操作スイッチ部14)を代用して行うこともできる。例えば、図3の状態(すなわちドラッグアイコンも退避アイコンも存在しない状態)でユーザがAボタン14dを押下すると、アイコン列表示領域の中央のアイコン40jが起動される。また、図3の状態(すなわちドラッグアイコンも退避アイコンも存在しない状態)でユーザが上ボタン(すなわち十字スイッチ14aの上部分)を押下すると、図16に示すようにアイコン列表示領域の中央のアイコン40jが退避領域50に退避される。また、図3の状態(すなわちドラッグアイコンも退避アイコンも存在しない状態)または図16の状態(すなわち退避アイコンが存在する状態)でユーザが右ボタン(すなわち十字スイッチ14aの右部分)を押下すると、アイコン列がアイコン1個分だけ画面の右方向にスクロールする。また、図3の状態(すなわちドラッグアイコンも退避アイコンも存在しない状態)または図16の状態(すなわち退避アイコンが存在する状態)でユーザが左ボタン(すなわち十字スイッチ14aの左部分)を押下すると、アイコン列がアイコン1個分だけ画面の左方向にスクロールする。また、図16の状態(すなわち退避アイコンが存在する状態)でユーザが下ボタン(すなわち十字スイッチ14aの下部分)を押下すると、マーク54が示すアイコン列の隙間に退避アイコン40jが挿入される。
【0067】
次に、図21〜図26を参照して、オブジェクト表示順変更プログラムに基づくゲーム装置10の動作について、より詳細に説明する。
【0068】
図21は、RAM24のメモリマップである。RAM24には、オブジェクト表示順変更プログラムと、図4に示したようなアイコンの表示順を示すアイコン表示順情報と、各アイコンに対応するアイコン画像データと、各アイコンに関連付けられた各種プログラム群が記憶される。
【0069】
オブジェクト表示順変更プログラムによる処理は、図22に示すように、起動モード、ドラッグモード、退避モードの3つの処理モードに大別される。起動モードは、ドラッグアイコンも退避アイコンも存在しない状態(例えば、図3、図5、図6、図12の状態)に対応する処理モードである。ドラッグモードは、ドラッグアイコンが存在する状態(例えば、図8、図9、図10、図13、図15、図19、図20の状態)に対応する処理モードである。退避モードは、ドラッグアイコンが存在せず、かつ退避アイコンが存在する状態(例えば、図16、図17、図18の状態)に対応する処理モードである。ユーザの操作に応じて、これらの3つのモードの遷移が行われる。
【0070】
図23は、モードの遷移パターン毎に、遷移パターンに対応するユーザの操作内容を示している。図23において、「タッチ操作」とは、タッチパネル15を利用して行われる操作を指し、「キー操作」とは、図2の操作スイッチ部14(すなわち図1の十字スイッチ14aやAボタン14dなど)を利用して行われる操作を指す。
【0071】
起動モードからドラッグモードへの遷移は、画面に表示されているアイコン列内のいずれかのアイコンをユーザが垂直方向にドラッグすることによって行われる。
【0072】
起動モードから退避モードへの遷移は、ユーザが上ボタンを押下することによって行われる。
【0073】
ドラッグモードから起動モードへの遷移は、ユーザがドラッグアイコンを退避領域50の外部でドロップすることによって行われる。
【0074】
ドラッグモードから退避モードへの遷移は、ユーザがドラッグアイコンを退避領域50の内部でドロップすることによって行われる。
【0075】
退避モードから起動モードへの遷移は、ユーザが退避アイコンをタップする、もしくは下ボタンを押下することによって行われる。
【0076】
退避モードからドラッグモードへの遷移は、ユーザが退避アイコンをドラッグすることによって行われる。
【0077】
次に、図24〜図26のフローチャートを参照して、各処理モードにおけるCPUコア21の処理の流れを説明する。なお、これらのフローチャートでは、画像の生成及び出力に関する処理を省略しているが、画像の生成及び出力は一定の周期で行われる。
【0078】
アイコン表示順変更プログラムの実行開始直後は起動モードで処理が開始される。図24は、起動モードにおけるCPUコア21の処理の流れを示すフローチャートである。
【0079】
ステップS10では、CPUコア21は、操作スイッチ部14からの信号に基づいて、キー入力があったかどうかを判断し、キー入力があった場合には処理はステップS11に進み、そうでない場合には処理はステップS20に進む。
【0080】
ステップS11では、CPUコア21は、上ボタンが押されたかどうかを判断し、上ボタンが押された場合には処理はステップS12に進み、そうでない場合には処理はステップS13に進む。
【0081】
ステップS12では、CPUコア21は、吹き出し42を消去して、アイコン列表示領域の中央のアイコンを退避領域50に退避する。ステップS12が終了すると、処理は退避モードに移行する。
【0082】
ステップS13では、CPUコア21は、右ボタンまたは左ボタンが押されたかどうかを判断し、右ボタンまたは左ボタンが押された場合には処理はステップS14に進み、そうでない場合には処理はステップS16に進む。
【0083】
ステップS14では、CPUコア21は、アイコン列をスクロール表示させる。具体的には、CPUコア21は、右ボタンが押された場合にはアイコン列を画面の右方向にスクロール表示し、左ボタンが押された場合にはアイコン列を画面の左方向にスクロール表示する。
【0084】
ステップS15では、CPUコア21は、キー入力(すなわち右ボタンまたは左ボタンの押下)が継続しているかどうかを判断し、キー入力が継続している場合には処理はステップS14に戻り、そうでない場合には処理はステップS10に戻る。
【0085】
ステップS16では、CPUコア21は、Aボタンが押されたかどうかを判断し、Aボタンが押された場合には、アイコン表示順変更プログラムの実行を終了し、アイコン列表示領域の中央のアイコンを起動する(すなわち中央のアイコンに関連付けられているプログラムを起動する)。
【0086】
ステップS20では、CPUコア21は、タッチパネル15からの信号に基づいて、タッチ位置を検出する。本実施形態では、画面の水平方向をX軸方向とし、垂直方向をY軸方向とした2次元座標(X,Y)によってタッチ位置が表されているものとする。ステップS20で検出されたタッチ位置は、タッチオン位置(タッチパネル15にスティック16が触れていない状態から触れた状態に変化した直後に検出されるタッチ位置)としてRAM24に記憶される。
【0087】
ステップS21では、CPUコア21は、タッチ位置がアイコン上にあるかどうかを判断し、タッチ位置がアイコン上にある場合には処理はステップS26に進み、そうでない場合には処理はステップS22に進む。
【0088】
ステップS22では、CPUコア21は、タッチ位置がスクロール領域48の内部にあるかどうかを判断し、タッチ位置がスクロール領域48の内部にある場合には処理はステップS23に進み、そうでない場合には処理はステップS10に戻る。
【0089】
ステップS23では、CPUコア21は、タッチパネル15からの信号に基づいて、タッチ位置を検出する。
【0090】
ステップS24では、CPUコア21は、タッチオン位置(すなわちステップS20で検出および記憶されたタッチ位置)と最新のタッチ位置(すなわちステップS23で検出されたタッチ位置)とに基づいてアイコン列をスクロール表示させる。具体的には、CPUコア21は、タッチオン位置のX座標値と最新のタッチ位置のX座標値の大小関係に応じてスクロール方向を決定し、タッチオン位置のX座標値と最新のタッチ位置のX座標値の差分の絶対値に応じてスクロール幅(画面上におけるアイコン列の移動量)を決定する。
【0091】
ステップS25では、CPUコア21は、タッチパネル15からの信号に基づいて、タッチオフ(すなわちスティック16がタッチパネル15から離れた)されたかどうかを判断し、タッチオフされた場合には処理はステップS10に戻り、そうでない場合には処理はステップS23に戻る。
【0092】
ステップS26では、CPUコア21は、ユーザによってタッチされているアイコンをハイライトする。
【0093】
ステップS27では、CPUコア21は、タッチパネル15からの信号に基づいて、タッチ位置を検出する。
【0094】
ステップS28では、CPUコア21は、タッチ位置のX軸方向の変位(すなわち、タッチオン位置のX座標値と最新のタッチ位置のX座標値の差分の絶対値)が予め定められた閾値を超えたかどうかを判断し、タッチ位置のX軸方向の変位が予め定められた閾値を超えた場合(これは、ユーザがアイコン列を水平方向にスクロールさせようとしていることを意味する)には処理はステップS29に進み、そうでない場合には処理はステップS34に進む。
【0095】
ステップS29では、CPUコア21は、タッチパネル15からの信号に基づいて、タッチ位置を検出する。
【0096】
ステップS30では、CPUコア21は、タッチ位置のY軸方向の変位(すなわち、タッチオン位置のY座標値と最新のタッチ位置のY座標値の差分の絶対値)が予め定められた閾値を超えたかどうかを判断し、タッチ位置のY軸方向の変位が予め定められた閾値を超えた場合(これは、ユーザが所望のアイコンをアイコン列から抜き出そうとしていることを意味する)には処理はドラッグモードへと移行し、そうでない場合には処理はステップS31に進む。このように、ユーザは、アイコン列表示領域に表示されているいずれかのアイコンを水平方向にドラッグしてアイコン列をスクロールさせた後であっても、そのアイコンを垂直方向にドラッグすることによって、そのアイコンをアイコン列から抜き出すことができる。
【0097】
なお、ステップS30で用いる閾値が小さすぎる場合には、ユーザがアイコン列をスクロールさせようとしているときに、ユーザの意図に反してアイコンがアイコン列から抜き出されてアイコン列のスクロール表示が停止してしまうという事態が発生しやすくなる。したがって、ステップS30で用いる閾値は、操作性を考慮して適切な値に設定する必要がある。なお、このような誤操作を効果的に防ぐために、変形例として、ステップS30で用いる閾値の大きさを、X軸方向の変位が大きくなるにしたがって増加させてもよい。また、他の変形例として、ステップS30において、タッチ位置のY軸方向の変位が予め定められた閾値を超えたかどうかを判断する替わりに、タッチ位置のY軸方向の変位の変化速度(例えば、直近の所定時間におけるY軸座標値の変化量)が予め定められた閾値を超えたかどうかを判断するようにしてもよい。また、さらに他の変形例として、Y軸方向の変位がX軸方向の変位を上回っている場合にのみ、ユーザがアイコンをアイコン列から抜き出そうとしていると判断するようにしてもよい。また、さらに他の変形例として、アイコン列のスクロールが一旦行われた場合には、タッチオフが行われない限りは、アイコン列からアイコンを抜き出す処理を行わない(すなわちステップS30の処理をなくす)ようにしてもよい。
【0098】
ステップS31では、CPUコア21は、タッチオン位置(すなわちステップS20で検出および記憶されたタッチ位置)と最新のタッチ位置(すなわちステップS29で検出されたタッチ位置)とに基づいてアイコン列をスクロール表示させる。具体的には、CPUコア21は、タッチオン位置のX座標値と最新のタッチ位置のX座標値の大小関係に応じてスクロール方向を決定し、タッチオン位置のX座標値と最新のタッチ位置のX座標値の差分の絶対値に応じてスクロール幅を決定する。
【0099】
ステップS32では、CPUコア21は、タッチパネル15からの信号に基づいて、タッチオフされたかどうかを判断し、タッチオフされた場合には処理はステップS33に進み、そうでない場合には処理はステップS29に戻る。
【0100】
ステップS33では、CPUコア21は、ステップS26で行ったアイコンのハイライトを解除する。
【0101】
ステップS34では、CPUコア21は、タッチ位置のY軸方向の変位が予め定められた閾値を超えたかどうかを判断し、タッチ位置のY軸方向の変位が予め定められた閾値を超えた場合(これは、ユーザが所望のアイコンをアイコン列から抜き出そうとしていることを意味する)には処理はドラッグモードへと移行し、そうでない場合には処理はステップS35に進む。
【0102】
ステップS35では、CPUコア21は、タッチパネル15からの信号に基づいて、タッチオフされたかどうかを判断し、タッチオフされた場合(これは、ユーザが所望のアイコンをタップしたことを意味する)には処理はステップS36に進み、そうでない場合には処理はステップS27に戻る。
【0103】
ステップS36では、CPUコア21は、ステップS26で行ったアイコンのハイライトを解除する。
【0104】
ステップS37では、CPUコア21は、ユーザによってタップされたアイコン(すなわちタッチオフの直前にタッチされていたアイコン)が、アイコン列表示領域の中央のアイコンかどうかを判断し、アイコン列表示領域の中央のアイコンである場合にはアイコン表示順変更プログラムの実行を終了し、画面に表示されているアイコン列における中央のアイコンを起動する。そうでない場合には処理はステップS38に進む。
【0105】
ステップS38では、CPUコア21は、ユーザによってタップされたアイコンが画面中央に向かって移動するようにアイコン列をスクロール表示させ、処理はステップS10に戻る。
【0106】
図25は、ドラッグモードにおけるCPUコア21の処理の流れを示すフローチャートである。
【0107】
ステップS40では、CPUコア21は、タッチパネル15からの信号に基づいて、タッチオフされたかどうかを判断し、タッチオフされた場合には処理はステップS45に進み、そうでない場合には処理はステップS41に進む。
【0108】
ステップS41では、CPUコア21は、タッチパネル15からの信号に基づいて、タッチ位置を検出する。
【0109】
ステップS42では、CPUコア21は、最新のタッチ位置(すなわちステップS41で検出されたタッチ位置)に追従するように、最新のタッチ位置に応じてドラッグアイコンを移動させる。
【0110】
ステップS43では、CPUコア21は、タッチ位置が右端領域52Rの内部または左端領域52Lの内部にあるかどうかを判断し、タッチ位置が右端領域52Rの内部または左端領域52Lの内部にある場合には処理はステップS44に進み、そうでない場合には処理はステップS40に戻る。
【0111】
ステップS44では、CPUコア21は、アイコン列をスクロール表示させる。具体的には、CPUコア21は、タッチ位置が右端領域52Rの内部にある場合にはアイコン列を画面の左方向に一定の幅だけスクロール表示させ、タッチ位置が左端領域52Lの内部にある場合にはアイコン列を画面の右方向に一定の幅だけスクロール表示させる。なお、タッチ位置がアイコン列表示領域の端に近いほどスクロール幅を大きくする(すなわちスクロール速度を速くする)ようにしてもよい。ステップS44が終了すると、処理はステップS40に戻る。
【0112】
ステップS45では、CPUコア21は、ステップS26または後述するステップS66で行ったアイコンのハイライトを解除する。
【0113】
ステップS46では、CPUコア21は、タッチオフ位置(タッチオフされる直前のタッチ位置)が退避領域50の内部にあるかどうかを判断し、タッチオフ位置が退避領域50の内部にある場合には処理はステップS48に進み、そうでない場合には処理はステップS47に進む。
【0114】
ステップS47では、CPUコア21は、ドラッグアイコンをアイコン列に挿入する。具体的には、CPUコア21は、タッチオフ位置から最も近くにある、アイコン列内の隣接する2つのアイコンの間にドラッグアイコンを挿入する。ステップS47が終了すると、処理は起動モードへと移行する。
【0115】
ステップS48では、CPUコア21は、ドラッグアイコンを退避領域50に退避する。具体的には、CPUコア21は、ドラッグアイコンを退避領域50の中央に移動させる。ステップS48が終了すると、処理は退避モードへと移行する。
【0116】
図26は、退避モードにおけるCPUコア21の処理の流れを示すフローチャートである。
【0117】
ステップS50では、CPUコア21は、操作スイッチ部14からの信号に基づいて、キー入力があったかどうかを判断し、キー入力があった場合には処理はステップS51に進み、そうでない場合には処理はステップS60に進む。
【0118】
ステップS51では、CPUコア21は、下ボタンが押されたかどうかを判断し、下ボタンが押された場合には処理はステップS52に進み、そうでない場合には処理はステップS53に進む。
【0119】
ステップS52では、CPUコア21は、退避アイコンを、アイコン列表示領域に表示されているアイコン列の中央の隙間に挿入する。ステップS52が終了すると、処理は起動モードに移行する。
【0120】
ステップS53では、CPUコア21は、右ボタンまたは左ボタンが押されたかどうかを判断し、右ボタンまたは左ボタンが押された場合には処理はステップS54に進み、そうでない場合には処理はステップS50に戻る。
【0121】
ステップS54では、CPUコア21は、アイコン列をスクロール表示させる。具体的には、CPUコア21は、右ボタンが押された場合にはアイコン列を画面の右方向にスクロール表示し、左ボタンが押された場合にはアイコン列を画面の左方向にスクロール表示する。
【0122】
ステップS55では、CPUコア21は、キー入力(すなわち右ボタンまたは左ボタンの押下)が継続しているかどうかを判断し、キー入力が継続している場合には処理はステップS54に戻り、そうでない場合には処理はステップS50に戻る。
【0123】
ステップS60では、CPUコア21は、タッチパネル15からの信号に基づいて、タッチ位置を検出する。ステップS60で検出されたタッチ位置は、タッチオン位置としてRAM24に記憶される。
【0124】
ステップS61では、CPUコア21は、タッチ位置がアイコン上にあるかどうかを判断し、タッチ位置がアイコン上にある場合には処理はステップS66に進み、そうでない場合には処理はステップS62に進む。
【0125】
ステップS62では、CPUコア21は、タッチ位置がスクロール領域48の内部にあるかどうかを判断し、タッチ位置がスクロール領域48の内部にある場合には処理はステップS63に進み、そうでない場合には処理はステップS50に戻る。
【0126】
ステップS63では、CPUコア21は、タッチパネル15からの信号に基づいて、タッチ位置を検出する。
【0127】
ステップS64では、CPUコア21は、タッチオン位置(すなわちステップS60で検出および記憶されたタッチ位置)と最新のタッチ位置(すなわちステップS63で検出されたタッチ位置)とに基づいてアイコン列をスクロール表示させる。具体的には、CPUコア21は、タッチオン位置のX座標値と最新のタッチ位置のX座標値の大小関係に応じてスクロール方向を決定し、タッチオン位置のX座標値と最新のタッチ位置のX座標値の差分の絶対値に応じてスクロール幅を決定する。
【0128】
ステップS65では、CPUコア21は、タッチパネル15からの信号に基づいて、タッチオフされたかどうかを判断し、タッチオフされた場合には処理はステップS50に戻り、そうでない場合には処理はステップS63に戻る。
【0129】
ステップS66では、CPUコア21は、ユーザによってタッチされているアイコンをハイライトする。
【0130】
ステップS67では、CPUコア21は、タッチ位置が退避アイコン上にあるかどうかを判断し、タッチ位置が退避アイコン上にある場合には処理はステップS67に進み、そうでない場合(これは、アイコン列表示領域内のいずれかのアイコンがタッチされていることを意味する)には処理はステップS68に進む。
【0131】
ステップS68では、CPUコア21は、タッチパネル15からの信号に基づいて、タッチ位置を検出する。
【0132】
ステップS69では、CPUコア21は、タッチ位置のY軸方向の変位が予め定められた閾値を超えたかどうかを判断し、タッチ位置のY軸方向の変位が予め定められた閾値を超えた場合(これは、ユーザが所望のアイコンをアイコン列から抜き出して退避アイコンと入れ替えようとしていることを意味する)には処理はステップS73に進み、そうでない場合には処理はステップS70に進む。
【0133】
ステップS70では、CPUコア21は、タッチオン位置(すなわちステップS60で検出および記憶されたタッチ位置)と最新のタッチ位置(すなわちステップS68で検出されたタッチ位置)とに基づいてアイコン列をスクロール表示させる。具体的には、CPUコア21は、タッチオン位置のX座標値と最新のタッチ位置のX座標値の大小関係に応じてスクロール方向を決定し、タッチオン位置のX座標値と最新のタッチ位置のX座標値の差分の絶対値に応じてスクロール幅を決定する。
【0134】
ステップS71では、CPUコア21は、タッチパネル15からの信号に基づいて、タッチオフされたかどうかを判断し、タッチオフされた場合には処理はステップS72に進み、そうでない場合には処理はステップS68に戻る。
【0135】
ステップS72では、CPUコア21は、ステップS66で行ったアイコンのハイライトを解除する。
【0136】
ステップS73では、CPUコア21は、現在タッチされているアイコンと退避アイコンとを入れ替える処理を行う。具体的には、CPUコア21は、現在タッチされているアイコンと入れ替わるように、現在タッチされているアイコンの位置に退避アイコンを移動させる。ステップS73の処理が終了すると、処理はドラッグモードに移行する。
【0137】
ステップS74では、CPUコア21は、タッチパネル15からの信号に基づいて、タッチ位置を検出する。
【0138】
ステップS75では、CPUコア21は、最新のタッチ位置(すなわちステップS74で検出されたタッチ位置)に追従するように、最新のタッチ位置に応じて退避アイコンを移動させる。
【0139】
ステップS76では、CPUコア21は、タッチ位置の変位(X軸方向の変位とY軸方向の変位の両方を加味した変位であって、例えば、タッチオン位置と最新のタッチ位置の間の距離)が予め定められた閾値を超えたかどうかを判断し、タッチ位置の変位が予め定められた閾値を超えた場合(これは、ユーザが退避アイコンをドラッグしようとしていることを意味する)には処理はドラッグモードへと移行し、そうでない場合には処理はステップS77に進む。
【0140】
ステップS77では、CPUコア21は、タッチパネル15からの信号に基づいて、タッチオフされたかどうかを判断し、タッチオフされた場合(これは、ユーザが退避アイコンをタップしたことを意味する)には処理はステップS78に進み、そうでない場合には処理はステップS74に戻る。
【0141】
ステップS78では、CPUコア21は、ステップS66で行ったアイコンのハイライトを解除する。
【0142】
ステップS79では、CPUコア21は、退避アイコンを、アイコン列表示領域に表示されているアイコン列の中央の隙間に挿入する。ステップS79が終了すると、処理は起動モードに移行する。
【0143】
以上のように、本実施形態によれば、アイコン列表示領域に表示される複数のオブジェクトの表示順をユーザが簡単に変更することができる。
【0144】
特に、本実施形態によれば、アイコン列表示領域に表示されているアイコン列に含まれているアイコンをスティック16でタッチした後に、スティック16を水平方向にスライドさせた場合にはアイコン列全体をスクロールさせることができ、スティック16を垂直方向にスライドさせた場合にはタッチしたアイコンをアイコン列から抜き出してドラッグすることができる。したがって、従来のようにアイコン列の表示エリア(本実施形態におけるアイコン列表示領域に相当)とは異なるエリアにスクロールボックスを配置する必要が無く、限られた画面サイズを有効利用することができる。また、従来では、アイコン列の表示エリアとして広いエリアを確保しようとした場合、相対的にスクロールボックスの配置エリアが狭くなり、結果としてスクロールボックスが細くなり、ポインティングデバイスでスクロールボックス上の位置を指定するのが難しくなってしまうが、本実施形態によれば、アイコン列の表示エリアとして広いエリアを確保した場合でも、アイコン列の表示エリアを含むような広いスクロール領域48を設定することができるので、スクロール操作の操作性を損なうことなく、アイコン列の表示エリアを十分に広げることができる。
【0145】
なお、変形例として、図31に示すようにアイコン列表示領域内の点であってなおかつアイコン上ではない点をスティック16でタッチした後に、図32に示すようにスティック16を水平方向にスライドさせた場合には、アイコン列全体をスクロールさせ、図33に示すようにアイコン上の点をスティック16でタッチした後に、図34に示すようにスティック16を任意の方向(水平方向でもよい)にスライドさせた場合には、タッチしたアイコンをアイコン列から抜き出してドラッグするようにしてもよい。これにより、上記実施形態と同様に、アイコン列の表示エリア(本実施形態におけるアイコン列表示領域に相当)とは異なるエリアにスクロールボックスを配置する必要が無く、限られた画面サイズを有効利用することができる。
【0146】
なお、本実施形態では、タッチパネルを利用する例を説明したが、本発明はこれに限らず、マウスやジョイスティックやタッチパッドなど、他の任意の座標入力手段を利用することができる。
【0147】
また、本実施形態では、ドラッグアイコンが退避領域50の外部の任意の点でドロップされたときに、ドラッグアイコンがアイコン列に挿入される例を説明したが、本発明はこれに限らず、ドラッグアイコンが特定の領域(例えば、アイコン列から一定距離範囲の領域)の内部でドロップされたときに、ドラッグアイコンがアイコン列に挿入されるようにしても構わない。
【0148】
また、図3に示したアイコン列表示領域、図7に示したスクロール領域48、図11に示した退避領域50、図14に示した右端領域52R、左端領域52Lは、いずれも単なる一例に過ぎず、それらの位置および大きさは適宜に変更しても構わない。例えば、右端領域52Rおよび左端領域52Lが、それぞれ、画面の上端から下端まで延びていてもよい。
【0149】
また、図25のステップS43およびステップS44では、タッチ位置が右端領域52Rの内部または左端領域52Lの内部にあるときにアイコン列をスクロール表示させているが、本発明はこれに限らず、ドラッグアイコンの一部(例えば、4つの頂点のうちの1つ)が右端領域52Rの内部または左端領域52Lの内部に進入しているときにアイコン列をスクロール表示させるようにしてもよい。図25のステップS46における判断についても同様である。
【0150】
なお、図24のステップS28、ステップS30、ステップS34、図26のステップS69のそれぞれのステップで用いる閾値は、適切な値を個別に設定すればよい。
【0151】
また、本実施形態では、アイコン列が水平方向に並んで表示される例を説明したが、本発明はこれに限らず、垂直方向にアイコン列が並んで表示されても構わない。
【0152】
また、本実施形態では、アイコン列表示領域に表示されるアイコン列が1列である例を説明したが、本発明はこれに限らず、アイコン列表示領域に表示されるアイコン列が複数であっても構わない。
【0153】
また、本実施形態では、複数のアイコンの表示順を変更する例を説明したが、本発明はこれに限らず、アイコンに限らず、画像や文字や記号や3Dオブジェクトなど、他の任意のオブジェクトの表示順の変更に有効である。
【0154】
なお、本実施形態では、退避領域50には同時に1つのアイコンしか退避できないが、本発明はこれに限らず、退避領域50に同時に複数のアイコンを退避できるようにしても構わない。例えば、図27は、アイコン40a、アイコン40f、アイコン40jを、この順番で退避領域50に順次退避させたときの画面例である。なお、退避領域50に同時に複数のアイコンを退避できるようにする場合、退避領域50に退避可能な上限数が予め設定されていてもよい。この場合、退避領域50に退避されているアイコン(退避アイコン)の数がすでに上限数に達している場合には、いずれかの退避アイコンをアイコン列に戻さない限り、新たなアイコンを退避領域に退避させることはできない。
【0155】
さらに、上記のように退避領域50に同時に複数のアイコンを退避できるようにした場合においても、図20を参照して説明したようなアイコンの入れ替えが可能である。例えば、図27の状態において、ユーザがアイコン40lをスティック16でタッチして、スティック16を画面の上方向に向かってスライドさせた場合には、図28に示すように、アイコン40lがスティック16に追従して上方向に移動してアイコン40lがアイコン列から抜き出され、さらに、退避領域50に最も早く退避されたアイコン40aが、アイコン40lと入れ替わりでアイコン列に挿入されるようにしてもよい。また、他の例として、図27の状態において、ユーザがアイコン40lをスティック16でタッチして、スティック16を画面の上方向に向かってスライドさせた後、図29に示すように、退避領域50に退避されている複数の退避アイコンのうちの所望の退避アイコン(図29の例ではアイコン40f)上にアイコン40lをドラッグしてドロップした場合に、図30に示すように、アイコン40lが退避領域50に退避されるとともに、アイコン40fが、アイコン40lと入れ替わりでアイコン列に挿入されるようにしてもよい。これにより、複数のアイコンの表示順を変えたい場合に、ユーザは効率良く表示順の変更を行うことができる。
【図面の簡単な説明】
【0156】
【図1】本発明の一実施形態に係るゲーム装置10の外観図
【図2】ゲーム装置10の内部構成図
【図3】第2のLCD12の画面に表示される画像を示す図
【図4】アイコン40の表示順を示す図
【図5】第2のLCD12の画面に表示される画像を示す図
【図6】第2のLCD12の画面に表示される画像を示す図
【図7】スクロール領域48を示す図
【図8】第2のLCD12の画面に表示される画像を示す図
【図9】第2のLCD12の画面に表示される画像を示す図
【図10】第2のLCD12の画面に表示される画像を示す図
【図11】第2のLCD12の画面に表示される画像を示す図
【図12】退避領域50を示す図
【図13】第2のLCD12の画面に表示される画像を示す図
【図14】右端領域52Rおよび左端領域52Lを示す図
【図15】第2のLCD12の画面に表示される画像を示す図
【図16】第2のLCD12の画面に表示される画像を示す図
【図17】第2のLCD12の画面に表示される画像を示す図
【図18】第2のLCD12の画面に表示される画像を示す図
【図19】第2のLCD12の画面に表示される画像を示す図
【図20】第2のLCD12の画面に表示される画像を示す図
【図21】RAM24のメモリマップ
【図22】起動モードとドラッグモードと退避モードの関係を示す図
【図23】モードが変化するための操作の条件を示す図
【図24】起動モードにおけるゲーム装置10の動作を示すフローチャート
【図25】ドラッグモードにおけるゲーム装置10の動作を示すフローチャート
【図26】退避モードにおけるゲーム装置10の動作を示すフローチャート
【図27】第2のLCD12の画面に表示される画像を示す図
【図28】第2のLCD12の画面に表示される画像を示す図
【図29】第2のLCD12の画面に表示される画像を示す図
【図30】第2のLCD12の画面に表示される画像を示す図
【図31】第2のLCD12の画面に表示される画像を示す図
【図32】第2のLCD12の画面に表示される画像を示す図
【図33】第2のLCD12の画面に表示される画像を示す図
【図34】第2のLCD12の画面に表示される画像を示す図
【符号の説明】
【0157】
10 ゲーム装置
11 第1のLCD
12 第2のLCD
13 ハウジング
13a 上側ハウジング
13b 下側ハウジング
14 操作スイッチ部
14a 十字スイッチ
14b スタートスイッチ
14c セレクトスイッチ
14d Aボタン
14e Bボタン
14f Xボタン
14g Yボタン
15 タッチパネル
16 スティック
17 メモリカード
17a ROM
17b フラッシュ
18a,18b 音抜き孔
19 電源スイッチ
20 電子回路基板
21 CPUコア
22 バス
23 コネクタ
24 RAM
25 I/F回路
26 第1GPU
27 第2GPU
28 第1VRAM
29 第2VRAM
30a 右スピーカ
30b 左スピーカ
31 LCDコントローラ
32 レジスタ
33 マイクロフォン用孔
34 ワイヤレス通信部
35 挿入口
36 挿入口
37 マイクロフォン
40 アイコン
42 吹き出し
44 スライドバー
46 カーソル
48 スクロール領域
50 退避領域
52R 右端領域
52L 左端領域
54 マーク

【特許請求の範囲】
【請求項1】
画面に表示される複数のオブジェクトの表示順を座標入力手段を用いてユーザが変更することを可能にするためのオブジェクト表示順変更プログラムであって、
前記複数のオブジェクトのうちのサブセットを所定の表示順にしたがって前記画面内のオブジェクト表示領域に表示するオブジェクト表示ステップ、
前記座標入力手段によって指示される前記オブジェクト表示領域上の位置を指示位置として検出する指示位置検出ステップ、
前記オブジェクト表示領域に表示されている前記サブセットのうちの第1のオブジェクト上の点を起点として前記指示位置が移動したときに、予め定められた判定基準にしたがって、第1の処理方法と、第2の処理方法のいずれか一方を選択する処理方法選択ステップ、
前記処理方法選択ステップで前記第1の処理方法が選択されたときに、前記オブジェクト表示領域において前記複数のオブジェクトを前記指示位置の移動に応じてスクロール表示させる第1のスクロールステップ、
前記処理方法選択ステップで前記第2の処理方法が選択されたときに、前記複数のオブジェクトのうちの前記第1のオブジェクトだけを前記指示位置に応じて移動させる第1のオブジェクト移動ステップ、および、
前記第1のオブジェクト移動ステップによって前記第1のオブジェクトを移動させている間に前記指示位置が検出されなくなったときに、最後に検出された指示位置に応じて、いずれか2つの互いに隣接するオブジェクトの間に前記第1のオブジェクトを挿入して表示する第1のオブジェクト挿入ステップをコンピュータに実行させるオブジェクト表示順変更プログラム。
【請求項2】
前記処理方法選択ステップでは、前記指示位置が第1の方向に移動したときには前記第1の処理方法を選択し、前記指示位置が前記第1の方向とは異なる第2の方向に移動したときには前記第2の処理方法を選択する、請求項1に記載のオブジェクト表示順変更プログラム。
【請求項3】
前記第1の方向と前記第2の方向が互いに直交する方向である、請求項2に記載のオブジェクト表示順変更プログラム。
【請求項4】
前記オブジェクト表示ステップでは、前記表示順にしたがって前記サブセットを所定方向に並べて表示し、
前記第1の方向は前記所定方向である、請求項3に記載のオブジェクト表示順変更プログラム。
【請求項5】
前記第1のオブジェクト移動ステップによって前記第1のオブジェクトを移動させている間に、前記指示位置もしくは前記第1のオブジェクトが第1の特定領域に進入したことに応じて前記第1のオブジェクトを除く全てのオブジェクトをスクロール表示させる第2のスクロールステップを前記コンピュータにさらに実行させる、請求項1に記載のオブジェクト表示順変更プログラム。
【請求項6】
前記第1の特定領域は、前記オブジェクト表示領域の端部を含む領域である、請求項5に記載のオブジェクト表示順変更プログラム。
【請求項7】
前記第1のスクロールステップでは、前記処理方法選択ステップにおいて前記第1の方法が選択されたときだけでなく、前記オブジェクト表示領域に表示されているいずれか2つの互いに隣接するオブジェクトの隙間を起点として前記指示位置が前記第1の方向に移動したときにも、前記複数のオブジェクトを前記指示位置の移動に応じてスクロール表示させる、請求項1に記載のオブジェクト表示順変更プログラム。
【請求項8】
前記第1のオブジェクト移動ステップによって前記第1のオブジェクトを移動させている間に前記指示位置が検出されなくなったときに、最後に検出された指示位置もしくは前記第1のオブジェクトが所定の退避領域に位置しているかどうかを判定する退避判定ステップ、
前記退避判定ステップの判定結果が肯定であるときに、前記第1のオブジェクトを前記退避領域に退避させる退避ステップ、および、
前記第1のオブジェクトが前記退避領域に退避されている間に前記オブジェクト表示領域に表示されている他のオブジェクト上の点を起点として前記指示位置が前記第1の方向に移動したときに、前記第1のオブジェクトを除く前記複数のオブジェクトを前記指示位置の移動に応じてスクロールさせる第3のスクロールステップを前記コンピュータにさらに実行させる、請求項2に記載のオブジェクト表示順変更プログラム。
【請求項9】
前記第1のオブジェクトが前記退避領域に退避されている間に当該第1のオブジェクト上の点を起点として前記指示位置が移動したときに、前記第1のオブジェクト移動ステップにおける前記指示位置に応じた前記第1のオブジェクトの移動処理を再開するオブジェクト移動再開ステップを前記コンピュータにさらに実行させる、請求項8に記載のオブジェクト表示順変更プログラム。
【請求項10】
前記第1のオブジェクトが前記退避領域に退避されている間に前記座標入力手段を用いた所定の入力操作が行われたときに、前記オブジェクト表示領域に表示されているいずれか2つの互いに隣接するオブジェクトの間に当該第1のオブジェクトを挿入する第2のオブジェクト挿入ステップを前記コンピュータにさらに実行させる、請求項8に記載のオブジェクト表示順変更プログラム。
【請求項11】
前記コンピュータには、前記座標入力手段に加えて、複数の操作スイッチを含む入力手段が接続されており、
前記オブジェクト表示順変更プログラムは、
前記複数の操作スイッチのうちの第1の操作スイッチが押されたときに、前記オブジェクト表示領域に表示されているオブジェクトのうちの1つを前記退避領域に退避させるスイッチ操作退避ステップ、
前記退避領域に前記オブジェクトが退避されている間に前記複数の操作スイッチのうちの第2の操作スイッチが押されたときに、前記退避領域に退避されているオブジェクトを除く全てのオブジェクトをスクロールさせるスイッチ操作スクロールステップ、および、
前記退避領域に前記オブジェクトが退避されている間に前記複数の操作スイッチのうちの第3の操作スイッチが押されたときに、前記退避領域に退避されているオブジェクトを、前記オブジェクト表示領域に表示されているいずれか2つの互いに隣接するオブジェクトの間に挿入するスイッチ操作オブジェクト挿入ステップを前記コンピュータにさらに実行させる、請求項8〜請求項10のいずれか1項に記載のオブジェクト表示順変更プログラム。
【請求項12】
前記第1のオブジェクトが前記退避領域に退避されている間に前記オブジェクト表示領域に表示されている他のオブジェクトのうちの第2のオブジェクト上の点を起点として前記指示位置が前記第2の方向に移動したときに、当該第2のオブジェクトだけを前記指示位置に応じて移動させる第2のオブジェクト移動ステップ、および、
前記第2のオブジェクト移動ステップにおいて前記第2のオブジェクトの移動が開始されたときに、前記オブジェクト表示領域に表示されているいずれか2つの互いに隣接するオブジェクトの間に前記第1のオブジェクトを挿入する第1のオブジェクト入れ替えステップを前記コンピュータにさらに実行させる、請求項8に記載のオブジェクト表示順変更プログラム。
【請求項13】
前記第1のオブジェクトが前記退避領域に退避されている間に前記オブジェクト表示領域に表示されている他のオブジェクトのうちの第2のオブジェクト上の点を起点として前記指示位置が前記第2の方向に移動したときに、当該第2のオブジェクトだけを前記指示位置に応じて移動させる第2のオブジェクト移動ステップ、および、
前記第2のオブジェクト移動ステップにおいて前記第2のオブジェクトの移動が開始された後、最後に検出された指示位置もしくは当該第2のオブジェクトが前記退避領域に位置している状態で指示位置が検出されなくなったときに、当該第2のオブジェクトを前記退避領域に退避させるとともに、前記オブジェクト表示領域に表示されているいずれか2つの互いに隣接するオブジェクトの間に前記第1のオブジェクトを挿入する第2のオブジェクト入れ替えステップを前記コンピュータにさらに実行させる、請求項8に記載のオブジェクト表示順変更プログラム。
【請求項14】
前記退避領域には同時に2つ以上のオブジェクトを退避可能である、請求項8に記載のオブジェクト表示順変更プログラム。
【請求項15】
前記退避領域に複数のオブジェクトが退避されている間に前記オブジェクト表示領域に表示されている他のオブジェクトのうちの第2のオブジェクト上の点を起点として前記指示位置が前記第2の方向に移動したときに、当該第2のオブジェクトだけを前記指示位置に応じて移動させる第2のオブジェクト移動ステップ、および、
前記第2のオブジェクト移動ステップにおいて前記第2のオブジェクトの移動が開始された後、当該第2のオブジェクトが前記退避領域内の複数のオブジェクトのうちの第3のオブジェクト上に位置している状態で前記指示位置が検出されなくなったときに、当該第2のオブジェクトを前記退避領域に退避させるとともに、前記オブジェクト表示領域に表示されているいずれか2つの互いに隣接するオブジェクトの間に前記第3のオブジェクトを挿入する第3のオブジェクト入れ替えステップを前記コンピュータにさらに実行させる、請求項14に記載のオブジェクト表示順変更プログラム。
【請求項16】
前記第1のオブジェクト挿入ステップでは、前記第1のオブジェクト移動ステップによって前記第1のオブジェクトを移動させている間に前記指示位置が検出されなくなったときに、前記オブジェクト表示領域に表示されている、最後に検出された指示位置に最も近い2つの互いに隣接するオブジェクトの間に前記第1のオブジェクトを挿入する、請求項1に記載のオブジェクト表示順変更プログラム。
【請求項17】
画面に表示される複数のオブジェクトの表示順を座標入力手段を用いてユーザが変更することを可能にするオブジェクト表示順変更装置であって、
前記画面を有する表示手段、
前記座標入力手段、
前記複数のオブジェクトのうちのサブセットを所定の表示順にしたがって前記画面内のオブジェクト表示領域に表示するオブジェクト表示手段、
前記座標入力手段によって指示される前記オブジェクト表示領域上の位置を指示位置として検出する指示位置検出手段、
前記オブジェクト表示領域に表示されている前記サブセットのうちの第1のオブジェクト上の点を起点として前記指示位置が移動したときに、予め定められた判定基準にしたがって、第1の処理方法と、第2の処理方法のいずれか一方を選択する処理方法選択手段、 前記処理方法選択手段によって前記第1の処理方法が選択されたときに、前記オブジェクト表示領域において前記複数のオブジェクトを前記指示位置の移動に応じてスクロール表示させる第1のスクロール手段、
前記処理方法選択手段によって前記第2の処理方法が選択されたときに、前記複数のオブジェクトのうちの前記第1のオブジェクトだけを前記指示位置に応じて移動させる第1のオブジェクト移動手段、および、
前記第1のオブジェクト移動手段によって前記第1のオブジェクトを移動させている間に前記指示位置が検出されなくなったときに、最後に検出された指示位置に応じて、いずれか2つの互いに隣接するオブジェクトの間に前記第1のオブジェクトを挿入して表示する第1のオブジェクト挿入手段を備えるオブジェクト表示順変更装置。
【請求項18】
画面に表示される複数のオブジェクトの表示順を座標入力手段を用いてユーザが変更することを可能にするためのオブジェクト表示順変更プログラムであって、
前記複数のオブジェクトのうちのサブセットを所定の表示順にしたがって前記画面内のオブジェクト表示領域に表示するオブジェクト表示ステップ、
前記座標入力手段によって指示される前記オブジェクト表示領域上の位置を指示位置として検出する指示位置検出ステップ、
前記オブジェクト表示領域上の点を起点として前記指示位置が移動したときに、予め定められた判定基準にしたがって、第1の処理方法と、第2の処理方法のいずれか一方を選択する処理方法選択ステップ、
前記処理方法選択ステップで前記第1の処理方法が選択されたときに、前記オブジェクト表示領域において前記複数のオブジェクトを前記指示位置の移動に応じてスクロール表示させる第1のスクロールステップ、
前記処理方法選択ステップで前記第2の処理方法が選択されたときに、前記複数のオブジェクトのうちの前記第1のオブジェクトだけを前記指示位置に応じて移動させる第1のオブジェクト移動ステップ、および、
前記第1のオブジェクト移動ステップによって前記第1のオブジェクトを移動させている間に前記指示位置が検出されなくなったときに、最後に検出された指示位置に応じて、いずれか2つの互いに隣接するオブジェクトの間に前記第1のオブジェクトを挿入して表示する第1のオブジェクト挿入ステップをコンピュータに実行させるオブジェクト表示順変更プログラム。
【請求項19】
前記処理方法選択ステップでは、前記起点が前記サブセットのうちのいずれのオブジェクト上でもないときに、前記第1の処理方法を選択し、前記起点が前記サブセットのうちのいずれかのオブジェクト上であるときに、前記第2の処理方法を選択して当該オブジェクトだけを前記指示位置に応じて移動させる、請求項18に記載のオブジェクト表示順変更プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate


【公開番号】特開2009−266192(P2009−266192A)
【公開日】平成21年11月12日(2009.11.12)
【国際特許分類】
【出願番号】特願2008−213382(P2008−213382)
【出願日】平成20年8月21日(2008.8.21)
【分割の表示】特願2008−186622(P2008−186622)の分割
【原出願日】平成20年4月24日(2008.4.24)
【出願人】(000233778)任天堂株式会社 (1,115)
【Fターム(参考)】