特許第5860526号(P5860526)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社ソニー・コンピュータエンタテインメントの特許一覧

特許5860526メニュー表示装置、メニュー表示制御方法及びプログラム
<>
  • 特許5860526-メニュー表示装置、メニュー表示制御方法及びプログラム 図000002
  • 特許5860526-メニュー表示装置、メニュー表示制御方法及びプログラム 図000003
  • 特許5860526-メニュー表示装置、メニュー表示制御方法及びプログラム 図000004
  • 特許5860526-メニュー表示装置、メニュー表示制御方法及びプログラム 図000005
  • 特許5860526-メニュー表示装置、メニュー表示制御方法及びプログラム 図000006
  • 特許5860526-メニュー表示装置、メニュー表示制御方法及びプログラム 図000007
  • 特許5860526-メニュー表示装置、メニュー表示制御方法及びプログラム 図000008
  • 特許5860526-メニュー表示装置、メニュー表示制御方法及びプログラム 図000009
  • 特許5860526-メニュー表示装置、メニュー表示制御方法及びプログラム 図000010
  • 特許5860526-メニュー表示装置、メニュー表示制御方法及びプログラム 図000011
  • 特許5860526-メニュー表示装置、メニュー表示制御方法及びプログラム 図000012
  • 特許5860526-メニュー表示装置、メニュー表示制御方法及びプログラム 図000013
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5860526
(24)【登録日】2015年12月25日
(45)【発行日】2016年2月16日
(54)【発明の名称】メニュー表示装置、メニュー表示制御方法及びプログラム
(51)【国際特許分類】
   G06F 3/0482 20130101AFI20160202BHJP
   G06F 3/0485 20130101ALI20160202BHJP
   G06F 3/0488 20130101ALN20160202BHJP
【FI】
   G06F3/0482
   G06F3/0485
   !G06F3/0488
【請求項の数】6
【全頁数】13
(21)【出願番号】特願2014-261240(P2014-261240)
(22)【出願日】2014年12月24日
(62)【分割の表示】特願2010-235964(P2010-235964)の分割
【原出願日】2010年10月20日
(65)【公開番号】特開2015-57745(P2015-57745A)
(43)【公開日】2015年3月26日
【審査請求日】2014年12月24日
(73)【特許権者】
【識別番号】310021766
【氏名又は名称】株式会社ソニー・コンピュータエンタテインメント
(74)【代理人】
【識別番号】110000154
【氏名又は名称】特許業務法人はるか国際特許事務所
(72)【発明者】
【氏名】高瀬 昌毅
(72)【発明者】
【氏名】津田 宗孝
(72)【発明者】
【氏名】朝倉 陽
(72)【発明者】
【氏名】畑田 敬志
【審査官】 松田 岳士
(56)【参考文献】
【文献】 特開2012−063862(JP,A)
【文献】 特表2009−518758(JP,A)
【文献】 特開2003−108279(JP,A)
【文献】 特開2012−027797(JP,A)
【文献】 特表2013−508812(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/01
G06F 3/048−3/0489
(57)【特許請求の範囲】
【請求項1】
複数のメニュー項目が配列されたメニューにおける所与の範囲を画面に表示させるメニュー表示手段と、
ユーザによる所定操作に応じて、前記所与の範囲を移動させる範囲移動手段と、
前記メニューにおける端部の前記メニュー項目が前記画面の所定位置に表示されるか否かを判断する判断手段と、
端部の前記メニュー項目が前記画面の前記所定位置に表示される場合に、前記ユーザによる前記所定操作に応じて、前記画面に表示されている複数の前記メニュー項目の間隔を、端部の前記メニュー項目から遠いほど大きく広げる間隔変更手段と、
を含むことを特徴とするメニュー表示装置。
【請求項2】
請求項1に記載のメニュー表示装置において、
前記間隔変更手段は、少なくとも、端部の前記メニュー項目とその隣の前記メニュー項目との間隔を広げる、
ことを特徴とするメニュー表示装置。
【請求項3】
請求項2に記載のメニュー表示装置において、
前記間隔変更手段は、前記配列における端部の前記メニュー項目を前記画面の前記所定位置に表示させたまま、その隣の前記メニュー項目を移動させる、
ことを特徴とするメニュー表示装置。
【請求項4】
請求項1乃至3のいずれかに記載のメニュー表示装置において、
前記間隔変更手段は、前記画面に表示されている前記メニュー項目の間隔を広げた後、該間隔を所定距離に戻す、
ことを特徴とするメニュー表示装置。
【請求項5】
複数のメニュー項目が配列されたメニューにおける所与の範囲を画面に表示させるステップと、
ユーザによる所定操作に応じて、前記所与の範囲を移動させるステップと、
前記メニューにおける端部の前記メニュー項目が前記画面の所定位置に表示されるか否かを判断するステップと、
端部の前記メニュー項目が前記画面の前記所定位置に表示される場合に、前記ユーザによる前記所定操作に応じて、前記画面に表示されている複数の前記メニュー項目の間隔を、端部の前記メニュー項目から遠いほど大きく広げるステップと、
を含むことを特徴とするメニュー表示制御方法。
【請求項6】
複数のメニュー項目が配列されたメニューにおける所与の範囲を画面に表示させる手段、
ユーザによる所定操作に応じて、前記所与の範囲を移動させる手段、
前記メニューにおける端部の前記メニュー項目が前記画面の所定位置に表示されるか否かを判断する手段、及び
端部の前記メニュー項目が前記画面の前記所定位置に表示される場合に、前記ユーザによる前記所定操作に応じて、前記画面に表示されている複数の前記メニュー項目の間隔を、端部の前記メニュー項目から遠いほど大きく広げる手段
としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明はメニュー表示装置、メニュー表示方法及びプログラムに関し、特にメニュー表示におけるユーザインタフェースの改善に関する。
【背景技術】
【0002】
検索結果、ニュース記事の題名、記憶デバイス中のファイル名など、多数のメニュー項目を画面に表示させる場合には、名前や日付などの属性に関する所定基準に従って複数のメニュー項目が配列されたメニューのうち、一部領域を画面に表示させるとともに、スクロール操作に応じて該一部領域を移動させるユーザインタフェース技術が採用されることが多い。画面がタッチスクリーンの場合には、スクロール操作は例えばドラッグやフリックである。このユーザインタフェースによれば、ユーザはスクロール操作によりメニューにおける任意の領域を画面に表示させることができる。
【発明の概要】
【発明が解決しようとする課題】
【0003】
しかしながら、上記ユーザインタフェース技術によると、メニューをスクロールさせて端部のメニュー項目を画面に表示させた際、現在表示されているのが端部のメニュー項目であるのかどうかを、ユーザは直ちに把握することができない。例えばメニューを下方向にスクロールさせて下端部のメニュー項目を画面に表示させている場合、ユーザは、さらに下方向のスクロール操作を行っても画面内容が変わらないことを根拠に、現在画面に下端部のメニュー項目が表示されているのだと理解する他ない。
【0004】
本発明は上記課題に鑑みてなされたものであって、その目的は、端部のメニュー項目が画面に表示されたことをユーザが直ちに理解できるメニュー表示装置、メニュー表示制御方法及びプログラムを提供することにある。
【課題を解決するための手段】
【0005】
上記課題を解決するために、本発明に係るメニュー表示装置は、複数のメニュー項目が配列されたメニューにおける所与の範囲を画面に表示させるメニュー表示手段と、ユーザによる所定操作に応じて、前記所与の範囲を移動させる範囲移動手段と、前記メニューにおける端部の前記メニュー項目が前記画面の所定位置に表示されるか否かを判断する判断手段と、端部の前記メニュー項目が前記画面の前記所定位置に表示される場合に、前記ユーザによる前記所定操作に応じて、前記画面に表示されている前記メニュー項目の間隔を変更する間隔変更手段と、を含むことを特徴とする。
【0006】
また、前記間隔変更手段は、前記画面に表示されている前記メニュー項目の間隔を広げてよい。このとき、前記間隔変更手段は、少なくとも、端部の前記メニュー項目とその隣の前記メニュー項目との間隔を広げてよい。さらに、前記間隔変更手段は、前記配列における端部の前記メニュー項目を前記画面の前記所定位置に表示させたまま、その隣の前記メニュー項目を移動させてよい。また、前記間隔変更手段は、前記画面に表示されている前記メニュー項目の間隔を広げた後、該間隔を所定距離に戻してよい。
【0007】
また、本発明に係るメニュー表示制御方法は、複数のメニュー項目が配列されたメニューにおける所与の範囲を画面に表示させるステップと、ユーザによる所定操作に応じて、前記所与の範囲を移動させるステップと、前記メニューにおける端部の前記メニュー項目が前記画面の所定位置に表示されるか否かを判断するステップと、端部の前記メニュー項目が前記画面の前記所定位置に表示される場合に、前記ユーザによる前記所定操作に応じて、前記画面に表示されている前記メニュー項目の間隔を変更するステップと、を含むことを特徴とする。
【0008】
また、本発明に係るプログラムは、複数のメニュー項目が配列されたメニューにおける所与の範囲を画面に表示させる手段、ユーザによる所定操作に応じて、前記所与の範囲を移動させる手段、前記メニューにおける端部の前記メニュー項目が前記画面の所定位置に表示されるか否かを判断する手段、及び端部の前記メニュー項目が前記画面の前記所定位置に表示される場合に、前記ユーザによる前記所定操作に応じて、前記画面に表示されている前記メニュー項目の間隔を変更する手段としてコンピュータを機能させるためのプログラムである。このプログラムは、CD−ROMやDVD−ROMやメモリカードなどのコンピュータ可読情報記憶媒体に格納されてよい。
【図面の簡単な説明】
【0009】
図1】本発明の実施の形態に係る可搬情報処理装置の外観斜視図である。
図2】本発明の実施の形態に係る可搬情報処理装置のハードウェア構成図である。
図3】メニュースクロール中の画面を示す図である。
図4】メニュースクロール中の画面を示す図である。
図5】端処理中の画面を示す図である。
図6】メニュースクロール中の画面を示す図である。
図7】端処理中の画面を示す図である。
図8】メニュースクロールの概念説明図である。
図9】メニュー表示中に管理される各変数の定義を示す図である。
図10】メニュー表示中に記憶されるテーブルを示す図である。
図11】メニュー表示のための情報処理を示すフロー図である。
図12】メニュー表示のための情報処理を示すフロー図である。
【発明を実施するための形態】
【0010】
以下、本発明の実施形態について図面に基づき詳細に説明する。
【0011】
図1は、本発明の実施形態に係る可搬情報処理装置の外観斜視図であり、図2は、同可搬情報処理装置のハードウェア構成図である。これらの図に示される可搬情報処理装置10は、本発明に係るメニュー表示装置の一実施形態であり、その制御方法は本発明に係るメニュー表示制御方法の一実施形態である。また、可搬情報処理装置10で実行されるプログラムは、本発明に係るプログラムの一実施形態である。可搬情報処理装置10は、図1に示されるように薄型箱状の筐体を有するコンピュータシステムであり、前面の大部分をタッチパネル12のタッチ面が占めており、側面には電源ボタン14やメモリカードスロット15が設けられている。この可搬情報処理装置10は、図示しない充電可能な内蔵バッテリにより駆動される。
【0012】
可搬情報処理装置10は、図2に示されるように、バス30に接続され相互にデータ送受可能に設けられたMPU16、メモリ18、FPDインタフェース20、タッチパッドインタフェース22、通信部24、不揮発性メモリ26及び媒体リーダ28を含んでいる。上述のように可搬情報処理装置10はタッチパネル12を備えており、このタッチパネル12は液晶や有機EL(Electro−Luminescence)によるFPD(Flat Panel Display)12a及び静電容量式その他の方式によるタッチパッド12bからなる。FPDインタフェース20はFPD12aに接続されており、タッチパッドインタフェース22はタッチパッド12bに接続されている。メモリ18はMPU16の作業スペースに用いられる。FPDインタフェース20は、FPD12aに表示すべき画像を保存するメモリを備えており、該メモリに格納された画像を定期的にFPD12aに出力し、該FPD12aにより表示される画像を更新する。タッチパッドインタフェース22は、タッチパッド12bから出力される信号に基づいて定期的にタッチ位置を演算し、MPU16に該タッチ位置を提供する。通信部24は、インターネットなどのデータ通信ネットワークに接続し、データを送信したり受信したりする機能を有する。不揮発性メモリ26は、メモリ18より大容量の記憶手段であり、オペレーティングシステムや各種のアプリケーションプログラムを記憶する。媒体リーダ28は、メモリカード32などのコンピュータ可読情報記憶媒体からデータを読み出したり、そのようなコンピュータ可読情報記憶媒体にデータを書き込んだりする。
【0013】
この可搬情報処理装置10では、ユーザ操作によりスクロールさせることができるメニューを表示するプログラムを実行する。このプログラムは、オペレーティングシステムの一部であってもよいし、多数の画像を表示する画像ビューワや、多数の検索結果を表示する検索プログラムなどのアプリケーションプログラムであってもよい。また、このプログラムは予め不揮発性メモリ26に格納されてもよいし、通信部24によりダウンロードされてから不揮発性メモリ26に格納されてもよい。また、メモリカード32から不揮発性メモリ26にコピーされてもよいし、メモリカード32に記憶されたプログラムがMPU16により直接実行されてもよい。
【0014】
図3乃至図7は、メニュースクロール中にタッチパネル12に表示されるメニューを示している。また、図8は、メニューとそのうちの表示範囲との関係を示す図である。図8に示すように、本実施形態では、タッチパネル12に表示されるメニュー50は、一例として、水平方向に伸びる短冊状のメニュー項目画像1〜8を含んでいる。メニュー項目画像1〜8は、例えば受信日順に並べられた電子メールのタイトルを表すもの、取得順に並べられた音楽データのタイトルを表すものなど、撮影順にならべられた画像データのサムネイルであってよい。これら8つのメニュー項目画像1〜8は、仮想的に、この順で上下に基準間隔Δにて配列されている。すなわち、メニュー項目画像1はメニュー50の上端に配置されており、メニュー項目画像8は下端に配置されている。また、メニュー50は、タッチパネル12に表示される範囲、すなわち表示範囲52を上下に貫くように配置されており、ユーザ操作に応じて表示範囲52に対してメニュー50が仮想的に上下に移動するようになっている。これにより、任意の部分のメニュー項目画像が表示範囲52内に位置し、それらのメニュー項目画像がタッチパネル12に表示される。ただし、メニュー50の移動範囲は制限されており、下方向には、メニュー項目画像1の上端が表示範囲52の上端から所定距離だけ下の位置(位置A)にくるまで移動可能であり、上方向には、メニュー項目画像8の下端が表示範囲52の下端から所定距離だけ上の位置(位置B)にくるまで移動可能である。また、メニュー項目画像1〜8の間隔は基準間隔Δよりも広がることができる。
【0015】
具体的には、図3に示すようにタッチパネル12にメニュー項目画像2〜7が表示された状態で、ユーザが指先40をタッチ面に触れたまま矢印42Dにより示される下方向にスライド(ドラッグ)させると、メニュー50は表示範囲52に対して相対的に下方向にスライド量に相応して移動し、これにより、図4に示すようにタッチパネル12にはメニュー項目画像1〜5が表示される。この状態では、メニュー50は下方向に限界まで移動しており、メニュー項目画像1の上端が位置Aにある。この状態で、ユーザが指先40をタッチ面におけるメニュー項目画像3が表示された領域に接触させたまま矢印42Dにより示される下方向にさらにスライドさせると、図5に示すようにメニュー項目画像1とメニュー項目画像2の間隔Δ1、及びメニュー項目画像2とメニュー項目画像3の間隔Δ2がスライド量に応じて広がる。つまり、指先40のタッチ位置に表示されたメニュー項目画像3及びそれよりも上側に配置されたメニュー項目画像1,2については、これらの間隔Δ1,Δ2が広がる。一方、それ以外の間隔は広がらない。なお、図4図5において、メニュー50の上端に配置されているメニュー項目画像1の表示位置は不変である。タッチ位置を上方向にスライドさせると、間隔Δ1,Δ2がスライド量に応じて狭まり、下方向にスライドさせると、間隔Δ1,Δ2がスライド量に応じてさらに広がる。また、指先40をタッチ面から離すと、徐々に、元の基準間隔Δに戻る。図5において、メニュー項目画像1とメニュー項目画像2の間隔Δ1と、メニュー項目画像2とメニュー項目画像3の間隔Δ2は、同じとしてもよいし、メニュー項目画像1とメニュー項目画像2の間隔Δ1の方が、メニュー項目画像2とメニュー項目画像3の間隔Δ2より狭くなるようにしてもよい。さらにタッチ位置からの距離に応じてメニュー項目画像の間隔Δの距離を段階的に設定してもよい。これによると、図5において、間隔Δ2の方が間隔Δ1よりも大きくなるように設定する。これによってユーザがより直感的にメニュー項目の端部を意識した操作が可能となる。
【0016】
同様に、図3に示すようにタッチパネル12にメニュー項目画像2〜7が表示された状態で、ユーザが指先40をタッチ面に触れたまま矢印42Uにより示される上方向にスライド(ドラッグ)させると、メニュー50は表示範囲52に対して相対的に上方向にスライド量に相応して移動し、これにより、図6に示すようにタッチパネル12にはメニュー項目画像4〜8が表示される。この状態では、メニュー50は上方向に限界まで移動しており、メニュー項目画像8が画面位置Bにある。この状態で、ユーザが指先40をタッチ面に接触させたまま矢印42Uにより示される下方向にさらにスライドさせると、図7に示すようにメニュー項目画像8とメニュー項目画像7の間隔がスライド量に応じて広がる。つまり、指先40のタッチ位置に表示されたメニュー項目画像7及びそれよりも下側に配置されたメニュー項目画像8については、その間隔が広がる。一方、それ以外の間隔は広がらない。なお、図6図7において、メニュー50の下端に配置されているメニュー項目画像8の表示位置は不変である。タッチ位置を下方向にスライドさせると、間隔がスライド量に応じて広がり、上方向にスライドさせると、間隔がスライド量に応じてさらに広がる。また、指先40をタッチ面から離すと、徐々に、元の基準間隔Δに戻る。
【0017】
また、本実施形態では、ユーザがタッチパネル12に対して指先40でフリックしたことを検出するようになっており、下方向のフリックがなされたことを検出すると、メニュー50を表示範囲52に対して下方向に移動させる(自動スクロール)。フリックは、指先40をタッチ面に接触させたまま所定の基準スピード以上のスピードでスライドさせ、そのまま指先40をタッチ面から離す操作である。フリック後はユーザの指先40はタッチパネル12のタッチ面から離れるが、メニュー50は下方向に移動し続ける。このとき、フリック時のスライドスピードが速ければ速いほど、移動の初速も速くなる。また、時間が経つほどメニュー50の移動速度は遅くなり、最終的には停止する。なお、フリック操作がなされると、メニュー項目画像1〜8の間隔が広がるようにしてもよい。このとき、フリック時のスライドスピードが速ければ速いほど、メニュー項目画像1〜8の間隔が大きく広がるようにしてよい。また、こうした自動スクロールの最中に、メニュー項目画像1の上端が位置Aにくると、メニュー項目画像1〜8の間隔が徐々に広がり、その後、間隔が徐々に狭まり基準間隔Δに戻ると、画面の変化は止まる。
【0018】
同様に、上方向のフリックがなされたことを検出すると、メニュー50を表示範囲52に対して上方向に移動させる。フリック後はユーザの指先40はタッチパネル12のタッチ面から離れるが、メニュー50は上方向に移動し続ける。この場合も、フリック時のスライドスピードが速ければ速いほど、移動の初速も速くなる。また、時間が経つほどメニュー50の移動速度は遅くなり、最終的には停止する。また、こうした自動スクロールの最中に、メニュー項目画像8の下端が位置Bにくると、メニュー項目画像1〜8の間隔が徐々に広がり、その後、間隔が徐々に狭まり基準間隔Δに戻ると、画面の変化は止まる。
【0019】
以上のように、メニュー50を下方向に移動させる操作(フリック又はドラッグ)により、メニュー項目画像1の上端が位置Aにまでくると、メニュー項目画像1は下方向にそれ以上移動せず、代わりにメニュー項目画像1とメニュー項目画像2の間隔が広がる。同様に、メニュー50を上方向に移動させる操作(フリック又はドラッグ)により、メニュー項目画像8の下端が位置Bにまでくると、メニュー項目画像8は上方向にそれ以上移動せず、代わりにメニュー項目画像8とメニュー項目画像8の間隔が広がる。こうして、メニュー50が下限又は上限まで移動していること、つまりタッチパネル12に上端のメニュー項目画像1又は下端のメニュー項目画像8が所定位置に表示されていることを、分かりやすくユーザに伝えることができる。
【0020】
以下、メニュー50を表示する処理についてさらに詳細に説明する。図9は、メニュー50の表示中、可搬情報処理装置10で管理される各変数の定義を示しており、図10は、メニュー50の表示中、可搬情報処理装置10のメモリ18に記憶されるテーブルを模式的に示している。これらの図に示すように、メニュー50の表示中は、メニュー項目画像1〜7のそれぞれに関連づけて、その下に位置するメニュー項目画像2〜8との間隔Δ1〜Δ7がメモリ18に記憶される。具体的には、間隔Δnは、メニュー項目画像nの下端とメニュー項目画像n+1の上端との間の距離である(n=1〜7)。また、メニュー項目画像1〜8のそれぞれに関連づけて、表示位置の座標X1〜X8がメモリ18に記憶される。座標Xnは、図8及び図9に示すように、タッチパネル12の画面の上端からメニュー項目画像nの上端までの距離を示している。なお、座標Xnが負の場合には、当該座標は表示範囲52の外である(n=1〜8)。
【0021】
図11及び図12は、メニュー50を表示するためのプログラムの処理を示している。図11に示すように、このプログラムでは、まず端処理が必要か否かを判断する(S101)。端処理は、図12のフロー図により示される処理であり、メニュー50を下方向に移動させる操作によりメニュー項目画像1の上端が位置Aにまできた後、或いは、メニュー50を上方向に移動させる操作によりメニュー項目画像8の下端が位置Bにまできた後に、それぞれ実行される処理である。具体的には、(1)メニュー項目画像1の上端が位置Aにある状態で、下方向のドラッグ操作が行われた場合、(2)メニュー項目画像8の下端が位置Bにある状態で、上方向のドラッグ操作が行われた場合、(3)下方向のフリック操作に応じた自動処理によりメニュー項目画像1の上端が位置Aにきた場合、(4)上方向のフリック操作に応じた自動処理によりメニュー項目画像8の下端が位置Bにきた場合、(5)メニュー項目画像1の上端が位置Aにある状態であり、且つメニュー項目画像1とメニュー項目画像2の現在の間隔Δ1が基準間隔Δよりも大きい場合、(6)メニュー項目画像8の下端が位置Bにある状態であり、且つメニュー項目画像8とメニュー項目画像7の現在の間隔Δ7が基準間隔Δよりも大きい場合に、端処理が必要と判断する。
【0022】
ここで、メニュー項目画像1の上端が位置Aにあるか否か、メニュー項目画像8の下端が位置Bの位置にあるか否か、は、図10のテーブルの座標X1及びX8より判断することができる。また、ドラッグ操作が行われたか否か、及びドラッグ操作の方向は、タッチパッドインタフェース22からの出力に基づいて判断することができる。さらに、このプログラムでは、メモリ18にフリック操作に応じた自動処理のスピードを記憶させており、この自動処理スピードが0より大きい場合には、フリック操作により下方向の自動処理がなされている最中(自動処理中)と判断できる。また、この自動処理スピードが0より小さい場合には、フリック操作により上方向の自動処理がなされている最中(自動処理中)と判断できる。一方、自動処理スピードが0の場合には、自動処理がなされていないと判断できる。
【0023】
端処理が必要でない場合、次にタッチパッドインタフェース22からの出力に基づいて、タッチパッド12bにタッチ中であるか否かを判断する(S103)。タッチ中であれば、自動処理スピードを0に設定するとともに(S104)、直前に検出したタッチ位置と今回検出したタッチ位置との上下方向の距離、すなわちドラッグ距離を取得し、このドラッグ距離だけメニュー50を移動させる(S105)。具体的には、タッチ位置が上方向に移動していれば、図10に示すテーブルに含まれている各座標Xnをドラッグ距離だけ減算する。また、タッチ位置が下方向に移動していれば、各座標Xnにドラッグ距離を加算する。そして、更新されたテーブルに従って、メニュー項目画像1〜8をFPD12aに表示させ、S101の処理に戻る。
【0024】
S103においてタッチ中でないと判断されると、次にフリックがなされたか否かを判断する(S106)。例えば、直前に検出したタッチ位置とさらにその前に検出したタッチ位置との上下方向の距離、すなわち直前のドラッグ距離(スライドスピード)が所定距離以上であり、且つ今回はタッチ位置を検出していない場合に、フリックがなされたと判断する。フリックがなされたと判断すると、直前のドラッグ距離に応じて自動処理スピードを設定する(S107)。具体的には、ドラッグ距離が長ければ長いほど、自動処理スピードを大きく設定する。また、下方向にドラッグされていれば、自動処理スピードを正の値とし、上方向にドラッグされていれば、自動処理スピードを負の値とする。
【0025】
その後、自動処理スピードの値を、図10のテーブルに含まれる座標Xnに加算し、更新後のテーブルに従ってメニュー項目画像1〜8をFPD12aに表示させる(S109)。さらに、自動処理スピードの値を0に近づける(S110)。例えば所定値ずつ自動処理スピードを0に近づけてよい。S110の処理により自動処理スピードが0となれば、自動処理は終了する。その後、S101の処理に戻る。
【0026】
S106においてフリックがなされていないと判断されると、現在自動処理中であるか否かを判断する(S108)。具体的には、自動処理スピードが0であれば、自動処理中でないと判断し、それ以外には自動処理中と判断する。自動処理中でなければ、そのままS101の処理に戻り、自動処理中であれば、S109の処理に進む。
【0027】
S101で端処理が必要と判断されれば、図12に示される端処理が実行される。この処理では、まずタッチ中か否かを判断する(S1021)。タッチ中であれば、直前のタッチ位置と今回のタッチ位置との差、すなわちドラッグ距離を取得する(S1022)。さらに、今回のタッチ位置に対応するメニュー項目画像を特定する(S1023)。例えば、今回のタッチ位置から、メニュー項目画像1〜8の中心位置への上下方向の距離を算出し、その距離が一番小さなものを、今回のタッチ位置に対応するメニュー項目画像としてよい。そして、特定されたメニュー項目画像が、メニュー項目画像1又はメニュー項目画像8のいずれかであるか否かを判断する(S1024)。特定されたメニュー項目画像が、メニュー項目画像1又はメニュー項目画像8であれば、S1022で取得されたドラッグ距離に応じて、図10のテーブルに含まれる間隔Δ1〜Δ7を更新し、さらに座標X1〜X8も併せて更新する(S1028)。具体的には、メニュー項目画像1の上端が位置Aにあり、下方向にドラッグしていれば、間隔Δ1〜Δ7をドラッグ距離に比例した量だけ広げる。上方向にドラッグしていれば、間隔Δ1〜Δ7をドラッグ距離に比例した量だけ狭める。Δ1〜Δ7を広げたり狭めたりする量は、等しくしてよい。その後、座標X1については値をそのままに、座標X2〜X8については、座標X1及び間隔Δ1〜Δ7に従って更新する。つまり、メニュー項目画像1の上端が位置Aとなり、その他のメニュー項目画像2〜8は、間隔Δ1〜Δ7で並ぶようにする。
【0028】
同様に、メニュー項目画像8の下端が位置Bにあり、上方向にドラッグしていれば、間隔Δ1〜Δ7をドラッグ距離に比例した量だけ広げる。下方向にドラッグしていれば、間隔Δ1〜Δ7をドラッグ距離に比例した量だけ狭める。ここでも、Δ1〜Δ7を広げたり狭めたりする量は、等しくしてよい。その後、座標X8については値をそのままに、座標X2〜X8については、座標X8及び間隔Δ1〜Δ7に従って更新する。つまり、メニュー項目画像8の下端が位置Bとなり、その他のメニュー項目画像1〜7は、間隔Δ1〜Δ7で並ぶようにする。
【0029】
一方、S1024において、特定されたメニュー項目画像が、メニュー項目画像1でもメニュー項目画像8でもないと判断されれば、次に、特定されたメニュー項目画像を移動させる(S1025)。すなわち、S1023で特定されたメニュー項目画像についての座標Xnを、S1023で取得されたドラッグ距離だけ移動させる。このとき、下方向にドラッグしていれば、座標Xnにドラッグ距離を加算し、上方向にドラッグしていれば、座標Xnからドラッグ距離を減算する。
【0030】
さらに、S1023で特定されたメニュー項目画像と、メニュー項目画像1又はメニュー項目画像8と、の間で、メニュー項目画像を等間隔に配置する(S1026)。すなわち、メニュー項目画像1の上端が位置Aにある場合、S1023で特定されたメニュー項目画像とメニュー項目画像1との間で、メニュー項目画像が等間隔となるよう、図10に示されるテーブルの間隔Δn及び座標Xnを更新する。また、メニュー項目画像8の下端が位置Bにある場合、S1023で特定されたメニュー項目画像とメニュー項目画像8との間で、メニュー項目画像が等間隔となるよう、図10に示されるテーブルの間隔Δn及び座標Xnを更新する。
【0031】
なお、S1026では、S1023で特定されたメニュー項目画像と、メニュー項目画像1又はメニュー項目画像8と、の間で、メニュー項目画像の間隔を徐々に変えるようにしてもよい。例えば、図5に関連して既に説明したように、S1023で特定されたメニュー項目画像から遠いほど、メニュー項目画像の間隔が狭くなるようにしてもよい。
【0032】
さらに、S1026で更新された間隔Δn及び座標Xnに従って、S1026では更新されていない、残りの座標Xnを更新する(S1027)。つまり、メニュー項目画像1の上端が位置Aにある場合、S1023で特定されたメニュー項目画像よりも下側のメニュー項目画像が、図10のテーブルに記録された間隔Δnで並ぶようにする。同様に、メニュー項目画像8の下端が位置Bにある場合、S1023で特定されたメニュー項目画像よりも上側のメニュー項目画像が、図10のテーブルに記録された間隔Δnで並ぶようにする。その後、以上のようにして更新されたテーブルに従って、メニュー項目画像1〜8をFPD12aにより表示させる(S1029)。
【0033】
S1021において、タッチパッド12bがタッチされていないと判断されると、次に自動処理中であるか否かを判断する(S1036)。自動処理中であれば、現在の自動処理スピードの大きさに応じて間隔Δ1〜Δ7を広げる(S1030)。例えば、自動処理スピードの絶対値に比例した値を間隔Δ1〜Δ7に加算してもよい。なお、間隔Δ1〜Δ7を等しく広げてもよいし、広げる程度を異ならせてもよい。例えば、メニュー項目画像1の上端が位置Aにある場合、該メニュー項目画像1に近い間隔(つまりΔ1)ほど大きく広げてよい。つまり、Δ1>Δ2>Δ3…としてよい。また、メニュー項目画像8の下端が位置Bにある場合、該メニュー項目画像8に近い間隔ほど大きく広げてよい。つまり、Δ8>Δ7>Δ6…としてよい。逆に、メニュー項目画像1の上端が位置Aにある場合、該メニュー項目画像1から遠い間隔ほど大きく広げてよい。つまり、Δ8>Δ7>Δ6…としてよい。また、メニュー項目画像8の下端が位置Bにある場合、該メニュー項目画像8から遠い間隔ほど大きく広げてよい。つまり、Δ1>Δ2>Δ3…としてよい。そして、S1030により更新された間隔Δ1〜Δ7に従って、座標X2〜X8を更新する(S1031)。こうして、メニュー項目画像1を同じ位置に留めつつ、メニュー項目画像1〜8が、更新された間隔Δ1〜Δ7で並ぶようにする。その後、以上のようにして更新されたテーブルに従って、メニュー項目画像1〜8をFPD12aにより表示させる(S1032)。さらに、自動処理スピードを0に近づける(S1033)。例えば所定値ずつ自動処理スピードを0に近づけてよい。S1033の処理により自動処理スピードが0となれば、自動処理は終了する。
【0034】
また、S1025において自動処理中でないと判断されると、間隔Δ1〜Δ7を元の基準間隔Δに近づける。例えば、所定値ずつ基準間隔Δに近づけてよい。さらに、更新された間隔Δ1〜Δ7でメニュー項目画像1〜8が並ぶよう、座標X1〜X8を更新する(S1034)。具体的には、メニュー項目画像1の上端が位置Aにある場合、座標X1はそのままにして、更新された間隔Δ1〜Δ7でメニュー項目画像1〜8が並ぶよう、座標X2〜X8を更新する。また、メニュー項目画像8の下端が位置Bにある場合、座標X8はそのままにして、更新された間隔Δ1〜Δ7でメニュー項目画像1〜8が並ぶよう、座標X1〜X7を更新する。その後、以上のようにして更新されたテーブルに従って、メニュー項目画像1〜8をFPD12aにより表示させる(S1035)。
【0035】
以上説明した可搬情報処理装置10によれば、下方向のフリック又はドラッグによりメニュー項目画像1の上端が位置Aにまでくると、メニュー項目画像1は下方向にそれ以上移動せず、代わりにメニュー項目画像1とメニュー項目画像2の間隔が広がる。また、上方向のフリック又はドラッグによりメニュー項目画像8の下端が位置Bにまでくると、メニュー項目画像8は上方向にそれ以上移動せず、代わりにメニュー項目画像8とメニュー項目画像8の間隔が広がる。こうして、メニュー50が下限又は上限まで移動していること、つまりタッチパネル12に上端のメニュー項目画像1又は下端のメニュー項目画像8が所定位置に表示されていることを、分かりやすくユーザに伝えることができる。
【0036】
なお、本発明は上記実施形態に限定されるものではない。例えば、図9乃至図12に示される処理は一例に過ぎず、他の変形された処理により本発明に係るユーザインタフェースを実現してよいのはもちろんである。
【符号の説明】
【0037】
10 可搬情報処理装置、12 タッチパネル、12a FPD、12b タッチパッド、14 電源ボタン、15 メモリカードスロット、16 MPU,18 メモリ、20 FPDインタフェース、22 タッチパッドインタフェース、24 通信部、26 不揮発性メモリ、28 媒体リーダ、30 バス、32 メモリカード、40 指先、50 メニュー、52 表示範囲。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12