(57)【特許請求の範囲】
【請求項１】
複数の要素オブジェクトが配列された表示オブジェクトにおける一部範囲を表示領域に表示させる表示手段と、
ユーザによる操作に応じて、前記表示オブジェクトを第１方向にスクロールさせる第１スクロール手段と、
前記表示オブジェクトを、前記ユーザによる操作によらず強制的に前記第１方向とは逆の第２方向にスクロールさせる第２スクロール手段と、
前記表示領域の位置と、前記複数の要素オブジェクトの位置と、に基づいて前記第２スクロール手段により前記表示オブジェクトを前記第２方向にスクロールさせるか否かを判断する判断手段と、
を含むことを特徴とする情報処理装置。
【請求項２】
請求項１に記載の情報処理装置において、
前記判断手段は、前記表示領域に設定された位置と、端部の要素オブジェクトの位置と、の距離に基づいて、前記第２スクロール手段により前記表示オブジェクトを前記第２方向にスクロールさせるか否かを判断する、
ことを特徴とする情報処理装置。
【請求項３】
請求項１に記載の情報処理装置において、
前記判断手段は、前記表示領域に設定された位置と、前記複数の要素オブジェクトを代表する位置と、の比較結果に基づいて、前記第２スクロール手段により前記表示オブジェクトを前記第２方向にスクロールさせるか否かを判断する、
ことを特徴とする情報処理装置。
【請求項４】
請求項１に記載の情報処理装置において、
前記判断手段は、前記表示領域に設定された領域に、端部の要素オブジェクトの位置が入るか否かに基づいて、前記第２スクロール手段により前記表示オブジェクトを前記第２方向にスクロールさせるか否かを判断する、
ことを特徴とする情報処理装置。
【請求項５】
請求項１乃至４のいずれかに記載の情報処理装置において、
前記第２スクロール手段は、前記表示オブジェクトを前記第２方向にスクロールさせることで、前記端部の前記要素オブジェクトを前記表示領域内の基準位置に戻す、
ことを特徴とする情報処理装置。
【請求項６】
請求項５に記載の情報処理装置において、
前記第２スクロール手段は、前記端部の要素オブジェクトの位置が、前記表示領域における前記基準位置から離間した状態で所定時間が経過する場合にも、前記表示オブジェクトを前記第２方向にスクロールさせることで、前記端部の前記要素オブジェクトを前記基準位置に戻す、
ことを特徴とする情報処理装置。
【請求項７】
請求項１乃至６のいずれかに記載の情報処理装置において、
前記第１スクロール手段は、前記第２スクロール手段が前記表示オブジェクトを前記第２方向にスクロールさせている間、前記ユーザによる操作を受け付けない
ことを特徴とする情報処理装置。
【請求項８】
複数の要素オブジェクトが配列された表示オブジェクトにおける一部範囲を表示領域に表示させるステップと、
ユーザによる操作に応じて、前記表示オブジェクトを第１方向にスクロールさせるステップと、
前記表示オブジェクトを、前記ユーザによる操作によらず強制的に前記第１方向とは逆の第２方向にスクロールさせるステップと、
前記表示領域の位置と、前記複数の要素オブジェクトの位置と、に基づいて前記第２スクロール手段により前記表示オブジェクトを前記第２方向にスクロールさせるか否かを判断するステップと、
を含むことを特徴とする表示制御方法。
【請求項９】
複数の要素オブジェクトが配列された表示オブジェクトにおける一部範囲を表示領域に表示させるメニュー表示手段、
ユーザによる操作に応じて、前記表示オブジェクトを第１方向にスクロールさせる第１スクロール手段、
前記表示オブジェクトを、前記ユーザによる操作によらず強制的に前記第１方向とは逆の第２方向にスクロールさせる第２スクロール手段、及び
前記表示領域の位置と、前記複数の要素オブジェクトの位置と、に基づいて前記第２スクロール手段により前記表示オブジェクトを前記第２方向にスクロールさせるか否かを判断する判断手段
としてコンピュータを機能させるためのプログラム。
【請求項１０】
請求項９に記載のプログラムを記録したコンピュータ可読情報記憶媒体。
【請求項１１】
複数の要素オブジェクトが配列された表示オブジェクトにおける一部範囲を表示領域に表示させる表示手段と、
ユーザによる操作に応じて、前記表示オブジェクトを第１方向にスクロールさせる第１スクロール手段と、
前記表示オブジェクトを前記第１方向とは逆の第２方向にスクロールさせる第２スクロール手段と、
前記表示領域の位置と、前記複数の要素オブジェクトの位置と、に基づいて前記表示オブジェクトを前記第２方向にスクロールさせるか否かを判断する判断手段と、
を含み、
前記第２スクロール手段は、端部の前記要素オブジェクトの位置が、前記表示領域における基準位置から離間した状態で所定時間が経過する場合に、前記表示オブジェクトを前記第２方向にスクロールさせることで、前記端部の前記要素オブジェクトを前記基準位置に戻す、
ことを特徴とする情報処理装置。
【請求項１２】
複数の要素オブジェクトが配列された表示オブジェクトにおける一部範囲を表示領域に表示させる表示ステップと、
ユーザによる操作に応じて、前記表示オブジェクトを第１方向にスクロールさせる第１スクロールステップと、
前記表示オブジェクトを前記第１方向とは逆の第２方向にスクロールさせる第２スクロールステップと、
前記表示領域の位置と、前記複数の要素オブジェクトの位置と、に基づいて前記表示オブジェクトを前記第２方向にスクロールさせるか否かを判断する判断ステップと、
を含み、
前記第２スクロールステップは、端部の前記要素オブジェクトの位置が、前記表示領域における基準位置から離間した状態で所定時間が経過する場合に、前記表示オブジェクトを前記第２方向にスクロールさせることで、前記端部の前記要素オブジェクトを前記基準位置に戻す、
ことを特徴とする表示制御方法。
【請求項１３】
複数の要素オブジェクトが配列された表示オブジェクトにおける一部範囲を表示領域に表示させる表示手段、
ユーザによる操作に応じて、前記表示オブジェクトを第１方向にスクロールさせる第１スクロール手段、
前記表示オブジェクトを前記第１方向とは逆の第２方向にスクロールさせる第２スクロール手段、
前記表示領域の位置と、前記複数の要素オブジェクトの位置と、に基づいて前記表示オブジェクトを前記第２方向にスクロールさせるか否かを判断する判断手段、
としてコンピュータを機能させるためのプログラムであって、
前記第２スクロール手段は、端部の前記要素オブジェクトの位置が、前記表示領域における基準位置から離間した状態で所定時間が経過する場合に、前記表示オブジェクトを前記第２方向にスクロールさせることで、前記端部の前記要素オブジェクトを前記基準位置に戻す、
ことを特徴とするプログラム。
【請求項１４】
複数の要素オブジェクトが配列された表示オブジェクトにおける一部範囲を表示領域に表示させる表示手段と、
ユーザによる操作に応じて、前記表示オブジェクトを第１方向にスクロールさせる第１スクロール手段と、
前記表示オブジェクトを前記第１方向とは逆の第２方向にスクロールさせる第２スクロール手段と、
前記表示領域の位置と、前記複数の要素オブジェクトの位置と、に基づいて前記表示オブジェクトを前記第２方向にスクロールさせるか否かを判断する判断手段と、
を含み、
前記第１スクロール手段は、前記第２スクロール手段が前記表示オブジェクトを前記第２方向にスクロールさせている間、前記ユーザによる操作を受け付けない、
ことを特徴とする情報処理装置。
【請求項１５】
複数の要素オブジェクトが配列された表示オブジェクトにおける一部範囲を表示領域に表示させる表示ステップと、
ユーザによる操作に応じて、前記表示オブジェクトを第１方向にスクロールさせる第１スクロールステップと、
前記表示オブジェクトを前記第１方向とは逆の第２方向にスクロールさせる第２スクロールステップと、
前記表示領域の位置と、前記複数の要素オブジェクトの位置と、に基づいて前記表示オブジェクトを前記第２方向にスクロールさせるか否かを判断する判断ステップと、
を含み、
前記第１スクロールステップは、前記第２スクロール手段が前記表示オブジェクトを前記第２方向にスクロールさせている間、前記ユーザによる操作を受け付けない、
ことを特徴とする表示制御方法。
【請求項１６】
複数の要素オブジェクトが配列された表示オブジェクトにおける一部範囲を表示領域に表示させる表示手段、
ユーザによる操作に応じて、前記表示オブジェクトを第１方向にスクロールさせる第１スクロール手段、
前記表示オブジェクトを前記第１方向とは逆の第２方向にスクロールさせる第２スクロール手段、
前記表示領域の位置と、前記複数の要素オブジェクトの位置と、に基づいて前記表示オブジェクトを前記第２方向にスクロールさせるか否かを判断する判断手段、
としてコンピュータを機能させるためのプログラムであって、
前記第１スクロール手段は、前記第２スクロール手段が前記表示オブジェクトを前記第２方向にスクロールさせている間、前記ユーザによる操作を受け付けない、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理装置、表示制御方法、プログラム及び情報記憶媒体に関し、特に複数の要素オブジェクトを表示するユーザインタフェースの改善に関する。
【背景技術】
【０００２】
検索結果、ニュース記事の題名、記憶デバイス中のファイル名など、多数の要素オブジェクトを画面に表示させる場合には、背景画像上にそれら要素オブジェクトを名前や日付などの属性に関する所定基準に従って配列させてなる表示オブジェクト（例えばメニュー画像）を用意して、この表示オブジェクトの一部範囲を画面に表示させるとともに、スクロール操作に応じて該一部範囲を移動させるユーザインタフェース技術が採用されることが多い。画面がタッチスクリーンの場合には、スクロール操作は例えばドラッグやフリックである。このユーザインタフェースによれば、ユーザはスクロール操作によりメニュー画像等の表示オブジェクトにおける任意の範囲を画面に表示させることができる。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかしながら、上記ユーザインタフェース技術によると、表示オブジェクトをスクロールさせて端部の要素オブジェクトを画面に表示させた際、現在表示されているのが端部の要素オブジェクトであるのかどうかを、ユーザは直ちに把握することができない。例えば表示オブジェクトを下方向にスクロールさせて上端部の要素オブジェクトを画面に表示させている場合、ユーザは、さらに下方向のスクロール操作を行っても画面内容が変わらないことを根拠にして、現在画面に上端部の要素オブジェクトが表示されているのだと理解する他ない。【０００４】
この点、上端部の要素オブジェクトが画面に表示されている状態で、さらに下方向のスクロール操作が行われると、上端部の要素オブジェクトを画面下方にさらに移動させつつ、上端の要素オブジェクトの上側に背景画像を表示させることも考えられる。こうすれば、上端の要素オブジェクトの上側には、他に要素オブジェクトが配置されていないことをユーザは直感的に理解できるようになる。しかし、こうするには大きな背景画像を用意する必要があり、必要メモリ容量が増加する。【０００５】
本発明は上記課題に鑑みてなされたものであって、その目的は、必要メモリ容量を大きく増加させずに、端部の要素オブジェクトが画面に表示されたことをユーザが直ちに理解できる情報処理装置、表示制御方法、プログラム及び情報記憶媒体を提供することにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明に係る情報処理装置は、複数の要素オブジェクトが配列された表示オブジェクトにおける一部範囲を表示領域に表示させる表示手段と、ユーザによる操作に応じて、前記表示オブジェクトを第１方向にスクロールさせる第１スクロール手段と、前記表示オブジェクトを前記第１方向とは逆の第２方向にスクロールさせる第２スクロール手段と、前記表示領域の位置と、前記複数の要素オブジェクトの位置と、に基づいて前記表示オブジェクトを前記第２方向にスクロールさせるか否かを判断する判断手段と、を含むことを特徴とする。【０００７】
また、本発明に係る表示制御方法は、複数の要素オブジェクトが配列された表示オブジェクトにおける一部範囲を表示領域に表示させるステップと、ユーザによる操作に応じて、前記表示オブジェクトを第１方向にスクロールさせるステップと、前記表示オブジェクトを前記第１方向とは逆の第２方向にスクロールさせるステップと、前記表示領域の位置と、前記複数の要素オブジェクトの位置と、に基づいて前記表示オブジェクトを前記第２方向にスクロールさせるか否かを判断するステップと、を含むことを特徴とする。【０００８】
さらに、本発明に係るプログラムは、複数の要素オブジェクトが配列された表示オブジェクトにおける一部範囲を表示領域に表示させるメニュー表示手段、ユーザによる操作に応じて、前記表示オブジェクトを第１方向にスクロールさせる第１スクロール手段、前記表示オブジェクトを前記第１方向とは逆の第２方向にスクロールさせる第２スクロール手段、及び前記表示領域の位置と、前記複数の要素オブジェクトの位置と、に基づいて前記表示オブジェクトを前記第２方向にスクロールさせるか否かを判断する判断手段としてコンピュータを機能させるためのプログラムである。このプログラムは、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、メモリカードなどのコンピュータ可読情報記憶媒体に格納されてもよい。【０００９】
なお、前記判断手段は、前記表示領域に設定された位置と、端部の要素オブジェクトの位置と、の距離に基づいて、前記表示オブジェクトを前記第２方向にスクロールさせるか否かを判断することとしてもよい。【００１０】
また、前記判断手段は、前記表示領域に設定された位置と、前記複数の要素オブジェクトを代表する位置と、の比較結果に基づいて、前記表示オブジェクトを前記第２方向にスクロールさせるか否かを判断することとしてもよい。【００１１】
また、前記判断手段は、前記表示領域に設定された領域に、端部の要素オブジェクトの位置が入るか否かに基づいて、前記表示オブジェクトを前記第２方向にスクロールさせるか否かを判断することとしてもよい。【００１２】
また、前記第２スクロール手段は、前記メニュー画像を前記第２方向にスクロールさせることで、前記端部の前記メニュー項目画像を前記領域の前記第２方向側に位置する基準位置に戻してよい。また、前記第２スクロール手段は、前記端部のメニュー項目画像が、前記領域よりも前記第２方向側に位置した状態で所定時間が経過する場合にも、前記メニュー画像を前記第２方向にスクロールさせることで、前記前記端部の前記メニュー項目画像を前記基準位置に戻してよい。【００１３】
また、前記第１スクロール手段は、前記第２スクロール手段が前記表示オブジェクトを前記第２方向にスクロールさせている間、前記ユーザによる操作を受け付けないこととっしてもよい。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施の形態に係る可搬情報処理装置の外観斜視図である。
【図２】本発明の実施の形態に係る可搬情報処理装置のハードウェア構成図である。
【図３】メニュースクロール中の画面を示す図である。
【図４】メニュースクロール中の画面を示す図である。
【図５】メニュースクロール中の画面を示す図である。
【図６】メニュースクロール中の画面を示す図である。
【図７】メニュースクロールの概念説明図である。
【図８】メニュースクロールの概念説明図である。
【図９】メニュースクロールの概念説明図である。
【図１０】本発明の実施の形態に係る可搬情報処理装置の制御遷移図である。
【図１１】タッチ無し状態におけるVsyncイベント発生時の情報処理を示すフロー図である。
【図１２】タッチ無し状態におけるタッチダウンイベント発生時の情報処理を示すフロー図である。
【図１３】タッチ有り状態におけるスライドイベント発生時の情報処理を示すフロー図である。
【図１４】タッチ有り状態におけるタッチアップイベント発生時の情報処理を示すフロー図である。
【図１５】戻りアニメーション状態におけるVsyncイベント発生時の情報処理を示すフロー図である。
【発明を実施するための形態】
【００１５】
以下、本発明の実施形態について図面に基づき詳細に説明する。
【００１６】
図１は、本発明の実施形態に係る可搬情報処理装置の外観斜視図であり、図２は、同可搬情報処理装置のハードウェア構成図である。これらの図に示される可搬情報処理装置１０は、本発明に係るメニュー表示装置の一実施形態であり、その制御方法は本発明に係るメニュー表示制御方法の一実施形態である。また、可搬情報処理装置１０で実行されるプログラムは、本発明に係るプログラムの一実施形態である。可搬情報処理装置１０は、図１に示されるように薄型箱状の筐体を有するコンピュータシステムであり、前面の大部分をタッチパネル１２のタッチ面が占めており、側面には電源ボタン１４やメモリカードスロット１５が設けられている。この可搬情報処理装置１０は、図示しない充電可能な内蔵バッテリにより駆動される。
【００１７】
可搬情報処理装置１０は、図２に示されるように、バス３０に接続され相互にデータ送受可能に設けられたＭＰＵ１６、メモリ１８、ＦＰＤインタフェース２０、タッチパッドインタフェース２２、通信部２４、不揮発性メモリ２６及び媒体リーダ２８を含んでいる。上述のように可搬情報処理装置１０はタッチパネル１２を備えており、このタッチパネル１２は液晶や有機ＥＬ（Electro-Luminescence）によるＦＰＤ（Flat  Panel  Display）１２ａ及び静電容量式その他の方式によるタッチパッド１２ｂからなる。ＦＰＤインタフェース２０はＦＰＤ１２ａに接続されており、タッチパッドインタフェース２２はタッチパッド１２ｂに接続されている。メモリ１８はＭＰＵ１６の作業スペースに用いられる。ＦＰＤインタフェース２０は、ＦＰＤ１２ａに表示すべき画像を保存するメモリを備えており、該メモリに格納された画像を定期的にＦＰＤ１２ａに出力し、該ＦＰＤ１２ａにより表示される画像を更新する。タッチパッドインタフェース２２は、タッチパッド１２ｂから出力される信号に基づいて定期的にタッチ位置を演算し、ＭＰＵ１６に該タッチ位置を提供する。通信部２４は、インターネットなどのデータ通信ネットワークに接続し、データを送信したり受信したりする機能を有する。不揮発性メモリ２６は、メモリ１８より大容量の記憶手段であり、オペレーティングシステムや各種のアプリケーションプログラムを記憶する。媒体リーダ２８は、メモリカード３２などのコンピュータ可読情報記憶媒体からデータを読み出したり、そのようなコンピュータ可読情報記憶媒体にデータを書き込んだりする。
【００１８】
この可搬情報処理装置１０では、ユーザ操作によりスクロールさせることができる表示オブジェクト（以下では具体例として、メニュー画像とする）を表示するプログラムを実行する。このプログラムは、オペレーティングシステムの一部であってもよいし、多数の画像を表示する画像ビューワや、多数の検索結果を表示する検索プログラムなどのアプリケーションプログラムであってもよい。また、このプログラムは予め不揮発性メモリ２６に格納されてもよいし、通信部２４によりダウンロードされてから不揮発性メモリ２６に格納されてもよい。また、メモリカード３２から不揮発性メモリ２６にコピーされてもよいし、メモリカード３２に記憶されたプログラムがＭＰＵ１６により直接実行されてもよい。
【００１９】
図３乃至図６は、メニュースクロール中にタッチパネル１２に表示されるメニュー画像を示している。また、図７乃至図９は、メニュー画像とそのうちの表示範囲との関係を示す図である。図７に示すように、本実施形態では、タッチパネル１２に表示されるメニュー画像は、一例として、水平方向に伸びる短冊状のメニュー項目画像（要素オブジェクト）１〜１２を含んでおり、これらメニュー項目画像１〜１２は背景画像４４上に配置されている。メニュー項目画像１〜１２は、例えば受信日順に並べられた電子メールのタイトルを表すもの、取得順に並べられた音楽データのタイトルを表すもの、撮影順にならべられた画像データのサムネイルであってよい。これら１２のメニュー項目画像１〜１２は、仮想的に、この順で上下に隙間なく背景画像４４上に配列されている。すなわち、メニュー項目画像１はメニュー画像の上端に配置されており、メニュー項目画像１２は下端に配置されている。メニュー項目画像１〜１２の左右は背景画像４４が露呈しており、メニュー項目画像１の上側及びメニュー項目画像１２の下側も背景画像４４が幅Ｗほど露呈している。
【００２０】
また、メニュー画像は、タッチパネル１２に表示される範囲、すなわち表示範囲４２を上下に貫くように配置されており、ユーザのスクロール操作に応じて表示範囲４２に対してメニュー画像が仮想的に上下に相対移動するようになっている（図７参照）。これにより、任意の部分のメニュー項目画像群が表示範囲４２内に位置し、それらのメニュー項目画像がタッチパネル１２に表示される。ただし、メニュー画像の移動範囲は制限されている。すなわち、下方向には、メニュー項目画像１の上端の座標Ｐが座標Ａにきて、メニュー項目画像１と画面上端との間隔がＷ（図５参照）となるまで移動可能であるが、それ以上の移動は制限される（図９参照）。また上方向には、座標Ｐが座標Ｂまできて、メニュー項目画像１２と画面下端との間隔がＷとなるまで移動可能であるが、それ以上の移動は制限される（図８参照）。なお、座標Ｐが零となるとメニュー項目画像１と画面上端との隙間はなくなり、また座標ＰがＣとなるとメニュー項目画像１２と画面下端との隙間はなくなる。ここで、メニュー画像の高さをＨ１、表示範囲４２の高さをＨ２とすると、Ａ＝Ｗ、Ｂ＝−Ｈ１＋Ｈ２−Ｗ、Ｃ＝−Ｈ１＋Ｈ２の関係がある。ここでＷは、Ｈ２の１／２以下、例えば１／３程度に設定されてよい。
【００２１】
具体的操作を説明すると、図３に示すようにタッチパネル１２にメニュー項目画像４〜８及びメニュー項目画像３並びに９の各一部が表示された状態で、ユーザが指先４０をタッチ面に触れたまま下方向にスライド（ドラッグ）させると、メニュー画像は表示範囲４２に対して相対的に下方向にスライド量に相応して移動する。これにより、メニュー項目画像１及び２も新たにタッチパネル１２に表示されるようになる。図４は、図３の状態から指先４０を使って下方向にスライドした場合の画面例を示している。同図に示される画面では、メニュー項目画像１〜４及びメニュー項目画像５の一部が表示されている。
【００２２】
本実施形態では、上述したようにメニュー項目画像１と画面上端との間隔はＷ以内に制限されており、図４の状態からさらに下方向に指先４０をスライドさせてメニュー項目画像１と画面上端との間隔をＷより大きくしようとすると、タッチパッド１２ｂに対する操作によらず、メニュー画像は強制的に上方向（逆方向）にスクロールする。そして、タッチパネル１２の表示は図６に示される状態に戻る。すなわち、メニュー項目画像１はその上端が画面上端に接する位置に戻る。こうして、画面はメニュー項目画像１〜６が表示された状態となる。なお、メニュー画像が強制的に逆方向にスクロールしている間は、ユーザによるタッチ操作は受け付けられない。すなわち、ユーザが下方向へスライドさせる操作をタッチパッド１２ｂに対して行ったとしても、その操作内容は無視される。このようにメニュー項目画像１と画面上端との間隔をＷ以内に制限することにより、メニュー項目画像１の上側に背景画像４４を大きく露呈させずに済む。同様に、本実施形態ではメニュー項目画像１２と画面下端との間隔もＷ以内に制限されており、上方向のスライドによりメニュー項目画像１２と画面下端との間隔をＷより大きくしようとすると、タッチパッド１２ｂに対する操作によらず、メニュー画像は強制的に下方向（逆方向）にスクロールする。そして、メニュー項目画像１２はその下端が画面下端に接する位置に戻る。このようにすると、メニュー項目画像１〜１２の上下にて背景画像４４を大きく露呈させずに済み、背景画像４４のサイズを小さくすることができる。
【００２３】
さらに本実施形態によると、図４に示されるようにメニュー項目画像１と画面上端との隙間がＷ未満のまま所定時間（例えば１０秒程度）が経過した場合にも、タッチパッド１２ｂに対する操作によらず、メニュー画像は強制的に上方向にスクロールする。そして、メニュー項目画像１はその上端が画面上端に接する位置に戻る（図６参照）。同様に、メニュー項目画像１２と画面下端との隙間がＷ未満のまま所定時間が経過した場合にも、タッチパッド１２ｂに対する操作によらず、メニュー画像は強制的に下方向にスクロールする。そして、メニュー項目画像１２はその下端が画面下端に接する位置に戻る。こうすることで、背景画像４４の上部及び下部が長時間表示され続けることを防止できる。
【００２４】
以下、上記ユーザインタフェースを実現する可搬型情報処理装置１０の処理について具体的に説明する。図１０は、メニュー表示の際の制御遷移図である。同図に示すように、制御状態にはタッチ無し状態Ａ、タッチ有り状態Ｂ及び戻りアニメーション状態Ｃの３種類がある。タッチ無し状態Ａは、タッチパネル１２にタッチがされておらず、且つ戻りアニメーション（上述したメニュー画像の逆方向スクロールを示す）が再生中でない状態である。本実施形態に係るプログラムが起動された場合にもタッチ無し状態Ａとなる。タッチ有り状態Ｂは、タッチパネル１２にタッチがされており、且つ戻りアニメーションが再生中でない状態である。さらに、戻りアニメーション状態Ｃは、戻りアニメーションの再生条件が充足された場合に遷移する状態であり、戻りアニメーションの再生が完了するまで同状態が維持される。タッチ無し状態Ａからタッチ有り状態Ｂには、タッチダウン（タッチパネル１２にタッチしていない状態から最初にタッチすること）イベントにより遷移する。また、タッチ有り状態Ｂからタッチ無し状態Ａには、タッチアップ（タッチパネル１２にタッチしている状態から離すこと）イベントにより遷移する。また、タッチ有り状態Ｂから戻りアニメーション状態Ｃには、戻りアニメーションの再生条件が充足された場合に遷移する。同様に、タッチ無し状態Ａから戻りアニメーション状態Ｃには、戻りアニメーションの再生条件が充足された場合に遷移する。さらに、戻りアニメーション状態Ｃにおいて戻りアニメーションの再生が終了すると、タッチ無し状態Ａに遷移する。なお、戻りアニメーション状態Ｃにおいては、タッチイベントは無視され、ユーザのタッチ操作による他の状態への遷移は生じない。
【００２５】
ここで図１１は、タッチ無し状態においてVsyncイベントが発生した場合に実行される処理を示すフロー図である。Vsync（映像同期信号）はタッチパネル１２の表示内容を更新する周期で発生する信号であり、この信号が発生する度に、メニュー画像の座標（リスト座標）Ｐを算出する（Ｓ１０１）。座標Ｐは、メニュー項目画像１の上端位置を示しており、現在の座標Ｐに対して、現在のメニュー画像の移動速度（リスト速度）Ｖを加算することにより、更新後の座標Ｐを算出する。なお、座標Ｐ及び移動速度Ｖの初期値はいずれも０である。そして、更新後の座標Ｐを用いてメニュー画像をタッチパネル１２に表示させる。すなわち、メニュー画像において表示範囲４２内の部分、すなわち座標値が０以上Ｈ２以下の部分を描画し、タッチパネル１２により出力する。
【００２６】
次に、移動速度Ｖを所定値だけ減算して移動速度Ｖを０に近づける（Ｓ１０２）。減算後の移動速度Ｖの符号が変わる場合には、減算後の移動速度Ｖを０に設定する。そして、メニュー項目画像１の上端が画面上端よりも下にきているか、又はメニュー項目画像１２の下端が画面下端よりも上にきているか、を判断する（Ｓ１０３）。具体的には、Ｐ＞０、Ｐ＜Ｃのいずれかが成立しているかを判断する。Ｓ１０３でＮＯならば、タッチ無し状態のままで処理を終了する。
【００２７】
Ｓ１０３でＹＥＳならば、次にメニュー項目画像１の上端と画面上端との間隔がＷを超えているか、又はメニュー項目画像１２の下端と画面下端との間隔がＷを超えているか、を判断する（Ｓ１０４）。具体的には、Ｐ＞Ａ、Ｐ＜Ｂのいずれかが成立しているかを判断する。Ｓ１０４でＹＥＳならば戻りアニメーション状態に遷移する。なお、ここでは、画面（表示領域）に設定された位置であるＡ又はＢと、メニュー項目画像１〜１２を代表する位置であるＰと、の比較結果に基づいて、戻りアニメーション状態に遷移するか否かを判断している。
【００２８】
その他、メニュー項目画像１〜１２を代表する位置はどのような位置でもよい。また、画面（表示領域）の上端又は下端の位置と、端部のメニュー項目画像１又は１２要素オブジェクトの位置と、の距離を算出するとともに、該距離がＷを超える場合に戻りアニメーション状態に遷移するようにしてもよい。また、メニュー項目画像１〜１２の高さをｈとした場合に、メニュー項目画像１がＸ＞Ｗ＋ｈの領域に入ったか否か、あるいはメニュー項目画像１２がＸ＜Ｈ２−Ｗ−ｈの領域に入ったか否かに基づいて、戻りアニメーション状態に遷移するようにしてもよい。ここで、Ｘはスクロール方向の座標値を指している。この場合、メニュー項目画像１の下端の位置がＷ＋ｈよりも小さくなれば戻りアニメーション状態に遷移させ、同様にメニュー項目画像１２の下端の位置がＨ２−Ｗ−ｈよりも大きくなれば戻りアニメーション状態に遷移させればよい。
【００２９】
Ｓ１０４でＮＯならば、次にタイマが動作中であるか否かを判断する（Ｓ１０５）。動作中であれば、タイマにより計測された時間が所定時間（上述のように例えば１０秒程度）を経過しているかどうかを判断する（Ｓ１０７）。そして、所定時間を超えていれば、戻りアニメーション状態に遷移する。また、Ｓ１０５でＮＯならば、タイマを動作させ時間計測を開始し（Ｓ１０６）、タッチ無し状態のまま処理を終了する。
【００３０】
次に図１２は、タッチ無し状態においてタッチダウンイベントが発生した場合に実行される処理を示すフロー図である。同図に示される処理は、タッチパネル１２にタッチされていない状態から初めてタッチされた場合に実行される処理であり、タッチ位置を記憶し（Ｓ２０１）、タッチ位置の移動速度を０に初期化してから（Ｓ２０２）、タッチ有り状態に遷移する。
【００３１】
また、図１３は、タッチ有り状態においてスライドイベントが発生した場合に実行される処理を示すフロー図である。同図に示される処理は、タッチパネル１２にタッチされたままタッチ位置が移動した場合に実行される。タッチされたままタッチ位置が移動したかは、例えば定期的に判断される。同図の処理では、まず座標Ｐを算出する（Ｓ３０１）。具体的には、前回のタッチ位置と今回のタッチ位置との差分を計算し、この差分に前回の座標Ｐを加算することにより、今回の座標Ｐを算出する。そして、計算された座標Ｐを用いてメニュー画像をタッチパネル１２に表示させる。次に、メニュー画像の移動速度Ｖを更新する（Ｓ３０２）。具体的には、前回のタッチ位置と今回のタッチ位置との差分を計算して、この差分を移動速度Ｖとする。但し、移動速度Ｖの絶対値が所定値を超える場合には、絶対値が同所定値となるように移動速度Ｖを調整する。
【００３２】
その後、メニュー項目画像１の上端が画面上端よりも下にきているか、又はメニュー項目画像１２の下端が画面下端よりも上にきているか、を判断する（Ｓ３０３）。具体的には、Ｐ＞０、Ｐ＜Ｃのいずれかが成立しているかを判断する。Ｓ３０３でＮＯならば、タッチ有り状態のままで処理を終了する。
【００３３】
Ｓ３０３でＹＥＳならば、次にメニュー項目画像１の上端と画面上端との間隔がＷを超えているか、又はメニュー項目画像１２の下端と画面下端との間隔がＷを超えているか、を判断する（Ｓ３０４）。具体的には、Ｐ＞Ａ、Ｐ＜Ｂのいずれかが成立しているかを判断する。Ｓ３０４でＹＥＳならば戻りアニメーション状態に遷移する。この場合も、上記Ｓ１０４の処理と同様に、他の様々な手法により戻りアニメーション状態に遷移するか否かを判断してよい。
【００３４】
Ｓ３０４でＮＯならば、次にタイマが動作中であるか否かを判断する（Ｓ３０５）。動作中であれば、タイマにより計測された時間が所定時間（上述のように例えば１０秒程度）を経過しているかどうかを判断する（Ｓ３０７）。そして、所定時間を超えていれば、戻りアニメーション状態に遷移する。また、Ｓ３０５でＮＯならば、タイマを動作させ時間計測を開始し（Ｓ３０６）、タッチ有り状態のまま処理を終了する。
【００３５】
また、図１４は、タッチ有り状態においてタッチアップイベントが発生した場合に実行される処理を示すフロー図であり、タッチ有り状態においてタッチパネル１２に対してタッチがされなくなると同処理が実行され、タッチ位置を０に初期化してから（Ｓ４０１）、タッチ無し状態に遷移する。
【００３６】
さらに、図１５は、戻りアニメーション状態においてVsyncイベントが発生した場合に実行される処理を示すフロー図である。この処理では、まずメニュー画像の移動速度がメニュー項目画像１又は１２がそれぞれの基準位置に戻る方向であるかをチェックする（Ｓ５０１）。具体的には、座標Ｐが正であり、移動速度Ｖの符号が負であれば、メニュー項目画像１が基準位置（メニュー項目画像１の上端が画面上端に一致する位置）に戻る方向であると判断する。また、座標ＰがＰ＜Ｃを満たし、移動速度Ｖの符号が正であれば、メニュー項目画像１２が基準位置（メニュー項目画像１２の下端が画面下端に一致する位置）に戻る方向であると判断する。Ｓ５０１でＹＥＳであれば、Ｓ５０２をスキップする。
【００３７】
Ｓ５０１でＮＯであれば、移動速度Ｖを初期値に設定する（Ｓ５０２）。具体的には、座標ＰがＰ＞０であれば移動速度Ｖを−Ｖ０に設定し、Ｐ＜Ｃであれば移動速度Ｖを＋Ｖ０に設定する。
【００３８】
その後、前回の座標Ｐに対して移動速度Ｖを加算することにより今回の座標Ｐを算出し、算出した座標Ｐを用いてタッチパネル１２にメニュー画像を表示させる（Ｓ５０３）。さらに、移動速度Ｖから所定値だけ減算して０に近づける（Ｓ５０４）。但し、移動速度Ｖの符号が変わらないように、且つ絶対値が所定値未満とならないようにする。
【００３９】
そして、メニュー項目画像１の上端が画面上端よりも下に位置しているか、又はメニュー項目画像１２の下端が画面下端よりも上に位置しているか、を判断する（Ｓ５０５）。具体的には、Ｐ＞０、又はＰ＜Ｃが成立しているかを判断する。そして、Ｓ５０５でＹＥＳならば、戻りアニメーション状態のまま処理を終了する。また、Ｓ５０５でＮＯならば、座標Ｐを基準位置に設定する（Ｓ５０６）。すなわち、上方向にスクロールしていたのであれば座標Ｐを０に設定し、下方向にスクロールしていたのであれば座標ＰをＣに設定する。その後、さらに移動速度Ｖを０に初期化し（Ｓ５０７）、タッチ無し状態に遷移する。
【００４０】
以上説明した可搬情報処理装置１０によれば、メニュー項目画像１の上端と画面上端との間隔がＷ以内に制限され、またメニュー項目画像１２の下端と画面下端との間隔もＷ以内に制限され、間隔がＷを超える場合には逆方向のスクロールによりメニュー項目画像１やメニュー項目画像１２はそれぞれの基準位置に戻る。また、間隔が０より大きくＷ以下である場合のまま所定時間が経過した場合も、メニュー項目画像１やメニュー項目画像１２はそれぞれの基準位置に戻る。このため、背景画像４４のサイズを大きくせずに済む。また、タッチパネル１２に背景画像４４が無駄に表示される状態を抑制できる。
【００４１】
なお、本発明は上記実施形態に限定されるものではない。例えば、以上説明した処理は一例に過ぎず、他の変形された処理により本発明に係るユーザインタフェースを実現してよいのはもちろんである。
【図１】
0005871937.tif 000002
【図２】
0005871937.tif 000003
【図３】
0005871937.tif 000004
【図４】
0005871937.tif 000005
【図５】
0005871937.tif 000006
【図６】
0005871937.tif 000007
【図７】
0005871937.tif 000008
【図８】
0005871937.tif 000009
【図９】
0005871937.tif 000010
【図１０】
0005871937.tif 000011
【図１１】
0005871937.tif 000012
【図１２】
0005871937.tif 000013
【図１３】
0005871937.tif 000014
【図１４】
0005871937.tif 000015
【図１５】
0005871937.tif 000016