(57)【要約】【課題】  フリック操作によりスクロールが行われる領域（スクロール領域）の外から、フリック操作を行った場合に、フリック操作として認識されずスクロールが行われない。【解決手段】  表示部を有する情報処理装置とその制御方法であって、表示部の表示画面に対するユーザ操作を検出し、表示画面のスクロール領域の外でユーザ操作の開始点を検出した後、そのスクロール領域内でユーザ操作が継続していると検出した場合に、そのスクロール領域に対するスクロールが指示されたと判定し、そのスクロール領域に表示されている画像をスクロールする。【選択図】  図６
2014067195.tif 000002
【特許請求の範囲】
【請求項１】
表示部を有する情報処理装置であって、
前記表示部の表示画面に対するユーザ操作を検出する検出手段と、
前記検出手段が、前記表示画面のスクロール領域の外でユーザ操作の開始点を検出した後、前記スクロール領域内で前記ユーザ操作が継続していると検出した場合に、前記スクロール領域に対するスクロールが指示されたと判定する判定手段と、
前記判定手段がスクロールが指示されていると判定すると、前記スクロール領域に表示されている画像をスクロールするスクロール手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記スクロール手段は、前記ユーザ操作の開始点から、前記スクロール領域内で当該ユーザ操作が継続していると検出した点までの距離に応じたスクロールを行うことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記スクロール手段は、前記スクロール領域の外でユーザ操作の開始点を検出した後、前記スクロール領域内で当該ユーザ操作が継続していると検出した開始点から、前記スクロール領域内で当該ユーザ操作が継続していると検出した点までの距離に応じたスクロールを行うことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記継続しているユーザ操作は、ムーブ操作であることを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記スクロール領域内で前記ムーブ操作を検出した後、前記検出手段が前記スクロール領域内でタッチアップを検出すると、当該タッチアップ直前の前記ムーブ操作の移動距離、速度に応じて、前記スクロール領域に表示されている画像のスクロールを継続するかどうかを判断する判断手段を更に有し、
前記判断手段によりスクロールを継続すると判断されると、前記スクロール手段は、前記タッチアップ直前の前記ムーブ操作の移動距離、速度に応じて前記スクロール領域に表示されている画像をスクロールすることを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記判断手段は、前記検出手段が前記スクロール領域内でのフリック操作を検出すると、前記スクロール領域に表示されている画像のスクロールを継続すると判断することを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記検出手段が、前記表示画面のスクロール領域の外でユーザ操作の開始点を検出した位置に操作ボタンが表示されていると当該操作ボタンを押下状態にし、前記判定手段がスクロールが指示されていると判定すると、前記操作ボタンの押下状態を解除して、当該操作ボタンに対応する処理を実行しないように制御する制御手段を更に有することを特徴とする請求項１乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
前記検出手段は、タッチパネルを含むことを特徴とする請求項１乃至７のいずれか１項に記載の情報処理装置。
【請求項９】
前記スクロール領域は、ユーザの操作によりポップアップ或いはドロップダウンして表示される領域であり、前記検出手段が、前記表示画面のスクロール領域の外でユーザ操作の開始点を検出した後、前記スクロール領域内で前記ユーザ操作が継続していないと検出した場合に、前記スクロール領域を非表示にする手段を更に有することを特徴とする請求項１乃至８のいずれか１項に記載の情報処理装置。
【請求項１０】
表示部を有する情報処理装置を制御する制御方法であって、
検出手段が、前記表示部の表示画面に対するユーザ操作を検出する検出工程と、
判定手段が、前記検出工程で前記表示画面のスクロール領域の外でユーザ操作の開始点を検出した後、前記スクロール領域内で前記ユーザ操作が継続していると検出した場合に、前記スクロール領域に対するスクロールが指示されたと判定する判定工程と、
スクロール手段が、前記判定工程がスクロールが指示されていると判定すると、前記スクロール領域に表示されている画像をスクロールするスクロール工程と、
を有することを特徴とする情報処理装置の制御方法。
【請求項１１】
コンピュータを、請求項１乃至９のいずれか１項に記載の情報処理装置として機能させるためのプログラム。
【請求項１２】
請求項１１に記載のプログラムを記憶した、コンピュータにより読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表示画面へのユーザ操作に応じてスクロールが可能な情報処理装置とその制御方法、及びプログラム、記憶媒体に関する。
【背景技術】
【０００２】
近年、タッチパネルを備えたコンピュータ機器が一般的に利用されている。そのようなコンピュータ機器では、画面上に任意のコンテンツを一覧表示し、その一覧上でフリック操作を行うことで、その一覧をスクロールさせることが行われている。これにより、ユーザにとって、直感的で、かつ分かり易い操作性を実現している。
【０００３】
しかし、上述のフリック操作を行う場合は、そのフリック操作が有効なコンテンツ内で操作を完結させる必要があるため、ユーザがフリック操作を行ったつもりでも、タップなどの操作と誤って判定される場合がある。例えば、フリック操作が有効なコンテンツの端部から、そのコンテンツの外側に向かってフリック操作を行った場合、そのコンテンツの領域内で十分な指の移動量が検出されないため、タップ操作と判定されてしまう。
【０００４】
このような問題に対する解決策として、タッチパネル（フリック操作が有効な領域）の端部からタッチパネルの外側に向けたフリック操作を行った場合でも、正しくフリック操作として認識するという技術がある（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−１１８６２９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記従来技術によれば、フリック操作が有効な領域の端部から、その領域の外側に向けたフリック操作が正しく認識されるようになる。しかしながら上記従来技術では、フリック操作が有効な領域外から、その領域内に向けたフリック操作を正しく認識できない。これにより、特にスクロールの範囲が大きなコンテンツにおいて、フリック操作によるスクロールの特徴を生かせないだけでなく、操作性を損なうという問題があった。
【０００７】
例えば、アドレス帳のようなスクロール範囲の大きなリストをフリック操作でスクロールさせる際に、ユーザが所望の情報をいち早く表示させるために、勢いよく連続してフリック操作を行うことが考えられる。その際に誤って、フリック操作が有効なリストの表示領域外からフリック操作をしてしまう可能性がある。その場合、そのリストに対するフリック操作が行われたとみなされず、リストのスクロールが行われないため、ユーザの意図した操作性が実現できない。
【０００８】
本発明の目的は上記従来技術の問題点を解決することにある。
【０００９】
本発明の目的は、スクロール領域の外から、その領域内に向けたスクロール操作を認識して、そのスクロール領域おける表示のスクロールの指示を可能にした技術を提供することにある。
【課題を解決するための手段】
【００１０】
上記目的を達成するために本発明の一態様に係る情報処理装置は以下のような構成を備える。即ち、
表示部を有する情報処理装置であって、
前記表示部の表示画面に対するユーザ操作を検出する検出手段と、
前記検出手段が、前記表示画面のスクロール領域の外でユーザ操作の開始点を検出した後、前記スクロール領域内で前記ユーザ操作が継続していると検出した場合に、前記スクロール領域に対するスクロールが指示されたと判定する判定手段と、
前記判定手段がスクロールが指示されていると判定すると、前記スクロール領域に表示されている画像をスクロールするスクロール手段と、を有することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、スクロール領域の外からスクロール操作を行わせるためのユーザ操作を開始した場合でも、そのスクロール領域の表示をスクロールさせることができるという効果がある。
【図面の簡単な説明】
【００１２】
【図１】本発明の各実施形態に係る情報処理装置のハードウェア構成を示すブロック図。
【図２】実施形態１に係る情報処理装置におけるＥメール送信の宛先となるアドレスを選択するためのアドレス帳の表示例を示す図。
【図３】ユーザがスクロール領域の外からスクロール領域内に対してフリック操作を行った場合の例を示す図。
【図４】本実施形態１において、フリック操作以外の操作方法であるドラッグ操作により、スクロール領域の表示をスクロールさせる例を説明する図。
【図５】本実施形態１において、スクロール領域の外からドラッグ操作を開始して画面をスクロールする例を説明する図。
【図６】本実施形態１に係る情報処理装置において、アドレス帳が表示部に表示された状態で、ユーザが画面をスクロールする操作を行った場合の処理を説明するフローチャート。
【図７】実施形態２に係る情報処理装置において、スクロール領域の外に配置された操作ボタンからフリック操作を行った場合の操作例を示す図。
【図８】本実施形態２に係る情報処理装置において、アドレス帳が表示部に表示された状態で、ユーザが画面をスクロールする操作を行った場合の処理を説明するフローチャート。
【図９】実施形態３に係る情報処理装置において、ドロップダウンリスト（太枠で囲われた領域）の外の点からフリック操作を行った例を示す図。
【図１０】本実施形態３に係る情報処理装置において、ドロップダウンリストが表示された状態で、ユーザが画面をスクロールする操作を行った場合の処理を説明するフローチャート。
【発明を実施するための形態】
【００１３】
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００１４】
図１は、本発明の各実施形態に係る情報処理装置１０１のハードウェア構成を示すブロック図である。
【００１５】
図１において、システムバス１１０にＣＰＵ１１１，ＲＡＭ１１２，ＲＯＭ１１３、入力部１１４、表示制御部１１５、外部メモリＩ／Ｆ１１６、通信Ｉ／Ｆコントローラ１１７が接続される。また入力部１１４、表示制御部１１５、外部メモリＩ／Ｆ１１６を介して、タッチパネル１１８、表示部１１９、外部メモリ１２０がそれぞれ接続される。システムバス１１０に接続される各部は、システムバス１１０を介して互いにデータのやりとりを行うことができるように構成されている。
【００１６】
ＲＯＭ１１３は不揮発性のメモリであり、画像データやその他のデータ、ＣＰＵ１１１が動作するための各種プログラムなどを、それぞれ所定の領域に格納している。ＲＡＭ１１２は揮発性のメモリであり、ＣＰＵ１１１の主メモリ、ワークエリア等の一時記憶領域として用いられる。ＣＰＵ１１１は、例えばＲＯＭ１１３に格納されるプログラムに従い、ＲＡＭ１１２をワークメモリとして用いて、この情報処理装置１０１の各部を制御する。尚、ＣＰＵ１１１が動作するためのプログラムは、ＲＯＭ１１３に格納されるものに限られず、外部メモリ（ハードディスク等）１２０に記憶されていてもよい。
【００１７】
入力部１１４は、ユーザからの操作を受け付け、その操作に応じた制御信号を生成してＣＰＵ１１１に供給する。例えば、入力部１１４は、ユーザの操作を受け付ける入力デバイスとして、キーボードといった文字情報入力デバイス（不図示）や、ポインティングデバイス（不図示）等を有する。尚、タッチパネル１１８は、例えば平面的に構成された入力部１１４に対して、接触された位置に応じた座標情報を出力する入力デバイスである。ＣＰＵ１１１は、入力デバイスに対してなされたユーザ操作に応じて入力部１１４で生成され供給される制御信号に基づき、プログラムに従って、この情報処理装置１０１の各部を制御する。これにより情報処理装置１０１が、ユーザの操作に応じた動作を実行できる。
【００１８】
表示制御部１１５は、表示部１１９に対して画像を表示させるための表示信号を出力する。例えば、表示制御部１１５に対して、ＣＰＵ１１１がプログラムに従い生成した表示制御信号が供給される。表示制御部１１５は、この表示制御信号に基づき表示信号を生成して表示部１１９に出力する。例えば、表示制御部１１５は、ＣＰＵ１１１が生成する表示制御信号に基づき、ＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を構成するＧＵＩ画面を表示部１１９に表示させる。タッチパネル１１８は表示部１１９と一体的に構成される。例えば、タッチパネル１１８を光の透過率が表示部１１９の表示を妨げないように構成し、表示部１１９の表示画面の上層に取り付ける。そして、タッチパネル１１８における入力座標と、表示部１１９上の表示座標とを対応付ける。これにより、あたかもユーザが表示部１１９上に表示された画面を直接的に操作可能であるかのようなＧＵＩを構成することができる。
【００１９】
外部メモリＩ／Ｆ１１６には、例えばハードディスク（ＨＤ）やＦＤ、又はＣＤやＤＶＤ、メモリカード等の外部メモリ１２０が装着可能になっている。ＣＰＵ１１１の制御に基づき、装着された外部メモリ１２０からのデータの読み出しや、その外部メモリ１２０に対するデータの書き込みを行う。通信Ｉ／Ｆコントローラ１１７は、ＣＰＵ１１１の制御に基づき、例えばＬＡＮやインターネット、有線、無線等の各種ネットワーク１０２との間で通信を行う。
【００２０】
尚、ＣＰＵ１１１は、タッチパネル１１８への例えば以下の操作や状態を検出できる。タッチパネル１１８を指やペンで触れたこと（以下、タッチダウン）。タッチパネル１１８を指やペンで触れている状態であること（以下、タッチオン）。タッチパネル１１８を指やペンで触れたまま移動していること（以下、ムーブ）。タッチパネル１１８へ触れていた指やペンを離したこと（以下、タッチアップ）。タッチパネル１１８に何も触れていない状態（以下、タッチオフ）等である。
【００２１】
これらの操作や、タッチパネル１１８上に指やペンが触れている位置座標は、システムバス１１０を通じてＣＰＵ１１１に通知され、ＣＰＵ１１１は、その通知された情報に基づいてタッチパネル１１８上でどのような操作が行なわれたかを判定する。ムーブについてはタッチパネル１１８上で移動する指やペンの移動方向についても、位置座標の変化に基づいて、タッチパネル１１８の垂直成分・水平成分毎に判定できる。
【００２２】
またタッチパネル１１８上で、タッチダウンから一定のムーブを経てタッチアップしたとき、ストロークを描いたこととする。素早くストロークを描く操作をフリックと呼ぶ。フリック操作は、タッチパネル１１８上に指を触れたまま、ある程度の距離だけ素早く動かして、そのまま離すといった操作であり、言い換えればタッチパネル１１８上を指で弾くように素早くなぞる操作である。ＣＰＵ１１１は、所定距離以上を、所定速度以上でムーブしたことが検出され、そのままタッチアップが検出されるとフリック操作が行なわれたと判定できる。また、所定距離以上のムーブが検出され、そのままタッチオンが検出されている場合には、ドラッグ操作が行なわれたと判定するものとする。タッチパネル１１８は、例えば抵抗膜方式や静電容量方式、表面弾性波方式、赤外線方式、電磁誘導方式、画像認識方式、光センサ方式等の様々な方式があるが、いずれの方式のものを用いても良い。
【００２３】
図２及び図３は、本発明の実施形態１に係る情報処理装置１０１の表示部１１９の表示例を説明するための図である。以下、図２及び図３を参照して、本発明の実施形態１における表示部１１９への表示例を説明する。尚、以下で言及するフリック等の操作は、全て情報処理装置１０１の表示部１１９で行われるものであり、それ以外の範囲には及ばないものとする。
【００２４】
図２は、実施形態１に係る情報処理装置１０１が備えるデータ送信の機能の１つであるＥメール送信機能を用いる場合に、Ｅメール送信の宛先となるアドレスを選択するためのアドレス帳の表示例を示す図である。
【００２５】
アドレス帳のデータは、情報処理装置１０１の外部メモリ１２０に格納されている。図２に示すように、アドレス帳に含まれる宛先の数が多い場合、宛先の一覧は表示部１１９の画面内に収まらない。そのためユーザは所望の宛先を表示部１１９に表示させるために、表示された宛先の一覧をスクロールさせる必要がある。図２は、宛先の一覧が表示された、表示部１１９上のスクロール領域２０１（太枠で囲われた領域）の任意の箇所を、ユーザが矢印２１１の方向にフリック操作を行った例を示している。図２に示すようにユーザが上方向にフリック操作を行うと、スクロール領域２０１に表示されている宛先の一覧が上方向にスクロールして表示される。スクロール領域２０１でのユーザによるフリック操作又はドラッグ操作によって、宛先の一覧がスクロールして表示される。尚、本実施形態１では、スクロール領域２０１の外から開始され、スクロール領域２０１の外で完了するフリック操作及びドラッグ操作を検出してもスクロール等の動作を行わない。
【００２６】
図３は、ユーザがスクロール領域２０１の外からスクロール領域内に対してフリック操作を行った場合の例を示す図である。
【００２７】
本実施形態１では、スクロール領域２０１の外（フリック操作開始点３１２）から矢印３１１の方向にフリック操作を開始しても、そのフリック操作がスクロール領域内で完了すれば、スクロール領域２０１に対するフリック操作が行われたと判断する。つまり、フリック操作開始点３１２でタッチダウンを検出した後、タッチオンを維持した状態で、スクロール領域２０１でムーブ及びタッチアップを検出した場合は、スクロール領域２０１に表示された宛先の一覧をスクロールさせる。その際に、スクロール領域２０１で最初にムーブが検出された箇所（仮想フリック操作開始点３１３）をフリック操作の起点とみなし、そこからタッチアップが検出された箇所までをフリック操作の継続区間とし、その距離に応じた量のスクロールを行う。また或いは、フリック操作開始点３１２を記憶しておき、それをフリック操作の起点とみなしてもよい。
【００２８】
図４は、本実施形態１において、フリック操作以外の操作方法であるドラッグ操作により、スクロール領域２０１をスクロールさせる例を説明する図である。この方法では、スクロール領域２０１において、ユーザがタッチダウンした箇所からタッチアップするまでに矢印４１１方向に移動した分（移動した距離）、宛先の一覧がスクロールされることになる。
【００２９】
図５は、本実施形態１において、スクロール領域２０１以外の領域からドラッグ操作を開始して画面をスクロールする例を説明する図である。
【００３０】
本実施形態１では、表示部１１９上の宛先の一覧が表示されているスクロール領域２０１以外の領域でタッチダウンを検出した場合でも、ムーブがスクロール領域２０１に達すれば、スクロール領域２０１に対するドラッグ操作が行われたと判定する。つまり、ドラッグ操作の開始点５１２でタッチダウンを検出した後、タッチオンを維持した状態で、スクロール領域２０１で矢印５１１の方向へのムーブを検出した場合、スクロール領域２０１に表示された宛先の一覧をスクロールさせる。その際に、スクロール領域２０１で最初にムーブが検出された箇所（仮想ドラッグ操作開始点５１３）をドラッグ操作の起点とみなし、その仮想ドラッグ操作開始点５１３からのムーブによる移動距離に応じた量のスクロールを行う。
【００３１】
次に、図６を参照して、本実施形態１に係る情報処理装置１０１の動作について説明する。
【００３２】
図６は、本実施形態１に係る情報処理装置１０１において、図２に示すアドレス帳が表示部１１９に表示された状態で、ユーザが画面をスクロールする操作を行った場合の処理を説明するフローチャートである。尚、図６のフローチャートで示す処理は、ＲＯＭ１１３、或いは外部メモリ１２０からＲＡＭ１１２に展開されたプログラムをＣＰＵ１１１が実行することによって実現される。
【００３３】
まずＳ６０１でＣＰＵ１１１は、ユーザの所定の操作に応じて、アドレス帳に含まれる宛先の一覧を表示部１１９のスクロール領域２０１に表示させる。次にＳ６０２に進み、ユーザの操作により、表示部１１９上のタッチパネル１１８で、アドレスの一覧が表示されたスクロール領域２０１以外の領域に対するタッチダウンが行われると、ＣＰＵ１１１はそのタッチダウンを検出する。Ｓ６０２でＣＰＵ１１１がタッチダウンを検出した後に、再びユーザ操作が行われるとＳ６０３で、ＣＰＵ１１１は、そのイベントの種類を判定する。Ｓ６０３で、ＣＰＵ１１１が、そのイベントがタッチアップであると判定するとＳ６０４に進み、ＣＰＵ１１１は、そのイベントに対する通常処理を行う。Ｓ６０４の内容については後述する。
【００３４】
一方、Ｓ６０３でＣＰＵ１１１が、そのイベントがムーブと判定するとＳ６０５に進み、ＣＰＵ１１１は、そのイベントを検出した領域を判定する。Ｓ６０５で、ＣＰＵ１１１が、そのムーブをスクロール領域２０１の外で検出したと判定した場合はＳ６０３に戻る。その後、Ｓ６０３でＣＰＵ１１１がタッチアップを検出した判断すると、Ｓ６０４に進み、ＣＰＵ１１１はイベントに対する通常処理を行う。
【００３５】
このように本実施形態１では、スクロール領域２０１の外の領域で、タップ操作（タッチオン→タッチアップ）やフリック操作（所定速度以上のムーブ→タッチアップ）を行った場合には、Ｓ６０４で、そのイベントに対する処理を行うことになる。つまり、Ｓ６０４では、スクロール領域２０１の外の領域に対するイベント（ユーザの操作）に応じた処理を適宜行う。例えば、スクロール領域２０１の外に配置された操作ボタンに対するタップ操作時の処理として、画面の遷移や文字の入力を行う等の処理が考えられる。
【００３６】
一方、Ｓ６０５でＣＰＵ１１１が、ムーブがスクロール領域２０１で発生したと判断した場合はＳ６０６に進み、ＣＰＵ１１１は、スクロール領域２０１に表示された宛先の一覧をスクロール表示させる。その後、タッチパネル１１８で再びユーザによる操作が行われると、ＣＰＵ１１１はＳ６０７に進んで、そのイベントの判定処理を行う。
【００３７】
Ｓ６０７でＣＰＵ１１１がムーブを検出した場合はＳ６０６に戻り、ＣＰＵ１１１は宛先の一覧をスクロールさせる。この時点では、ムーブが検出され、そのままタッチオンが検出されてスクロールが指示されている状態なので、ドラッグ操作によるスクロールを継続して行っている。
【００３８】
一方、Ｓ６０７で、ＣＰＵ１１１がタッチアップを検出した場合はＳ６０８に進み、ＣＰＵ１１１は、スクロールを継続するかどうか判定を行う。具体的には、タッチアップ直前に、ムーブ操作が所定距離以上、所定速度以上行われたか（スクロール継続条件を満たすか）を判断する。Ｓ６０８でＣＰＵ１１１が、スクロール継続条件を満たすと判断した場合はＳ６０９に進み、ＣＰＵ１１１は、ムーブ操作の距離、速度等の値からスクロールの量を算出し、タッチアップ後にその量だけスクロールを継続して行う。これは例えば、フリック操作によるスクロールに相当する。
【００３９】
一方、Ｓ６０８でＣＰＵ１１１が、スクロールの継続条件を満たさないと判断した場合は、スクロールを行うことなく処理を終了する。これは、例えば、スクロール領域２０１でドラッグ操作によるスクロールを行った後、指を止めてからタッチアップした場合などが該当する。
【００４０】
このように本実施形態１に係る情報処理装置１０１は、スクロール領域２０１の外の領域でタッチダウンを検出した後、スクロール領域２０１でムーブを検出すれば、スクロール領域２０１に表示された宛先の一覧のスクロールを行うことができる。また、ムーブの後で、タッチアップ直前にフリック操作を行うことにより、スクロール領域２０１に表示された宛先の一覧のスクロールを行うことができる。
【００４１】
以上説明したように実施形態１によれば、ユーザがスクロール領域２０１の宛先の一覧の外からフリック操作やドラッグ操作を行った場合でも、宛先の一覧をスクロールして表示することができる。このため、特に連続でフリック操作を行うような場面での操作性を向上させることができる。
【００４２】
＜実施形態２＞
次に本発明の実施形態２について説明する。本実施形態２は、フリック操作の開始時に、宛先の一覧が表示されたスクロール領域２０１の外の領域に配置された操作ボタンを押した場合について説明する。以下、実施形態１との差分を中心に説明する。尚、実施形態２に係る情報処理装置１１０のハードウェア構成は前述の実施形態１と同じであるため、その説明を省略する。
【００４３】
図７は、実施形態２に係る情報処理装置において、スクロール領域２０１の外に配置された操作ボタン７１４からフリック操作を行った場合の操作例を示す図である。
【００４４】
ここで操作ボタン７１４は、一般的なＧＵＩ部品の一つで、タップ（タッチオン後にタッチアップ）を行うことにより、所定の処理（画面の遷移や文字の入力など。以下、ボタンの処理と呼ぶ）を行う。
【００４５】
詳細に述べると、まず操作ボタン７１４上でタッチオンを行うことにより、ボタン７１４が押下状態になる。この押下状態では、例えば操作ボタン７１４の色が変化したり、凹んだように表示することで、そのボタンが押下されていることを示す。そして、この状態ではボタン７１４に対応付けられている処理は実行されない。この押下状態のときにタッチアップを行うと、押下状態を解除するとともに、その操作ボタン７１４に対応付けられている処理を実行する。
【００４６】
上述したように、本実施形態２の操作ボタン７１４が押下状態になると、その後、タッチアップを行うまでその押下状態が解除されない。つまり、押下状態のときにムーブにより指をボタン７１４の外に移動させた場合でも押下状態は維持され、タッチアップを行った場合に、その押下状態を解除するとともにボタンに対応付けられた処理を行う。尚、本実施形態２では、タッチアップを行った箇所に関わらず、押下状態の解除とともに操作ボタン７１４に対応付けられた処理を実行している。しかし、タッチアップが操作ボタン７１４の外で行われた場合には、押下状態の解除のみを行い、操作ボタン７１４に対応付けられた処理を実行しないようにしてもよい。
【００４７】
本実施形態２では、表示部１１９上で宛先の一覧が表示されたスクロール領域２０１の外に配置された操作ボタン７１４から矢印７１１の方向にフリック操作を開始する。そして、そのフリック操作がスクロール領域２０１に達すればスクロール領域２０１で、フリック操作が行われたと判定する。このとき、操作ボタン７１４に対応付けられている処理は実行されない。
【００４８】
つまり、フリック開始点７１２でタッチダウンを検出した後、タッチオンを維持した状態で、スクロール領域２０１でムーブ及びタッチアップを検出した場合、スクロール領域２０１に表示された宛先の一覧をスクロールさせる。その際、スクロール領域２０１で最初にムーブが検出された箇所（仮想フリック操作開始点７１３）をフリック操作の起点とみなし、そこからタッチアップが検出された箇所までをフリック操作の継続区間とし、その間の距離に応じた量のスクロールを行う。また或いは、フリック操作開始点７１２を記憶しておき、それをフリック操作の起点とみなしてもよい。
【００４９】
図８は、本実施形態２に係る情報処理装置１０１において、図２に示すアドレス帳が表示部１１９に表示された状態で、ユーザが画面をスクロールする操作を行った場合の処理を説明するフローチャートである。尚、図８のフローチャートで示す処理は、ＲＯＭ１１３、或いは外部メモリ１２０からＲＡＭ１１２に展開されたプログラムをＣＰＵ１１１が実行することによって実現される。尚、図８において、前述の図６のフローチャートで示す処理と同じ工程（ステップ）には同じ番号を付し、それらの説明を省略する。
【００５０】
ユーザ操作により、表示部１１９上のタッチパネル１１８で、アドレスの一覧が表示されたスクロール領域２０１の外に配置されたボタン７１４に対するタッチダウンが行われる。これによりＳ８０１でＣＰＵ１１１は、そのタッチダウンを検出し、Ｓ８０２でＣＰＵ１１１は、ボタン７１４を押下状態にして表示する。Ｓ８０１でＣＰＵ１１１がタッチダウンを検出した後に、表示部１１９上で再びユーザによる操作が行われると、Ｓ６０３でＣＰＵ１１１は、そのイベントの種類を判定する。
【００５１】
Ｓ６０３でＣＰＵ１１１が、イベントがタッチアップだと判定するとＳ８０３に進み、ＣＰＵ１１１がボタン７１４の押下状態を解除し、次にＳ８０４でＣＰＵ１１１が、ボタン７１４に対応付けられている処理を実行する。これは、ボタン７１４に対するタップが行われた場合の挙動である。
【００５２】
またＳ６０３でＣＰＵ１１１が、イベントがムーブだと判定するとＳ６０５に進み、ＣＰＵ１１１は、そのイベントを検出した領域を判定する。Ｓ６０５でＣＰＵ１１１が、ムーブをスクロール領域２０１で検出したと判定した場合はＳ８０５に進み、ＣＰＵ１１１は、ボタン７１４の押下状態を解除してＳ６０６に進む。こうすることにより、ボタン７１４に対する操作は中止され、スクロール領域２０１に対するムーブ操作やフリック操作を正しく検出することができる。
【００５３】
このように本実施形態２に係る情報処理装置１０１は、スクロール領域２０１の外に配置されたボタン７１４でタッチダウンを検出した後、タッチオンを維持した状態でスクロール領域２０１内でムーブを検出すると宛先の一覧をスクロールさせる。これにより、スクロール領域２０１の外からのフリック操作であっても、表示をスクロールさせることができる。
【００５４】
尚、本実施形態２では、スクロール領域２０１に配置されたボタンを例に説明したが、スクロール領域２０１の外に配置され、タップ等による操作が可能なその他の部品（チェックボックスやスライダー等）にも本発明は適用される。
【００５５】
＜実施形態３＞
次に実施形態３について説明する。実施形態３において、ドロップダウンリストに対してフリック操作を行う場合を例に説明する。ドロップダウンリストとは、一般的なＧＵＩ部品の一つで、ボタンをタップすることにより表示されるプルダウンリストである。こうして表示されたリストの項目を選択すると、その選択した項目が、そのボタンに表示される。尚、実施形態３に係る情報処理装置１１０のハードウェア構成は前述の実施形態１と同じであるため、その説明を省略する。
【００５６】
図９は、実施形態３に係る情報処理装置１０１において、ドロップダウンリスト９０２（太枠で囲われた領域）の外の点９０３から矢印９０５の方向にフリック操作を行った例を示す図である。本実施形態３では、ドロップダウンリスト表示ボタン９０１をタップすることにより、ドロップダウンリスト９０２が表示される。ドロップダウンリスト９０２は、フリック操作により、表示された項目の一覧をスクロールさせる。ドロップダウンリスト９０２を表示している間は、ドロップダウンリスト９０２に対する操作のみが有効になる。ドロップダウンリスト９０２の外でタップ等の操作を行った場合は、ドロップダウンリスト９０２が非表示になる。
【００５７】
本実施形態３では、表示部１１９上に表示されたドロップダウンリスト９０２の外からフリック操作を行った場合に、フリック操作がドロップダウンリスト９０２に達すれば、ドロップダウンリスト９０２に表示された宛先の一覧をスクロールさせる。この場合、ドロップダウンリスト９０２で最初にムーブが検出された箇所（仮想フリック操作開始点９０４）をフリック操作の起点とみなし、そこからタッチアップが検出された箇所までをフリック操作の継続区間とし、その距離に応じた量のスクロールを行う。
【００５８】
図１０は、本実施形態３に係る情報処理装置１０１において、ドロップダウンリスト９０２が表示された状態で、ユーザが画面をスクロールする操作を行った場合の処理を説明するフローチャートである。図６と同じステップについては同じ番号で示し、図６と異なるステップのみ異なる番号で示されている。以下、図６と異なる部分について説明するが、必要に応じて図６のステップについても言及する。尚、図１０のフローチャートで示す処理は、ＲＯＭ１１３、或いは外部メモリ１２０からＲＡＭ１１２に展開されたプログラムをＣＰＵ１１１が実行することによって実現される。
【００５９】
まずＳ１００１で、表示部１１９に表示されたドロップダウンリスト表示ボタン９０１にユーザがタップを行うと、ＣＰＵ１１１及び表示制御部１１５は、ドロップダウンリスト９０２を表示部１１９に表示させる。そして、ユーザの操作により、表示部１１９上のタッチパネル１１８でタッチダウンが行われると、Ｓ１００２でＣＰＵ１１１は、そのタッチダウンを検出する。Ｓ１００２でＣＰＵ１１１がドロップダウンリスト９０２の外でのタッチダウンを検出した後に、タッチパネル１１８上で再びユーザによる操作が行われると、Ｓ６０３でＣＰＵ１１１は、そのイベントの種類を判定する。
【００６０】
Ｓ６０３でＣＰＵ１１１が、そのイベントがタッチアップ操作と判定するとＳ１００３に進み、ＣＰＵ１１１は、ドロップダウンリスト９０２を非表示にして、この処理を終了する。またＳ６０３でＣＰＵ１１１が、そのイベントがムーブ操作と判定するとＳ１００４に進み、ＣＰＵ１１１は、そのイベントが発生した領域を判定する。Ｓ１００４でＣＰＵ１１１が、そのイベントがドロップダウンリスト９０２の外で発生したと判定するとＳ６０３に戻る。一方、Ｓ１００４でＣＰＵ１１１が、そのイベントがドロップダウンリスト９０２内で発生したと判定するとＳ１００５に進み、ＣＰＵ１１１は、ドロップダウンリスト９０２をスクロールさせる。その後、タッチパネル１１８上で再びユーザによる操作が行われると、ＣＰＵ１１１はＳ６０７に進み、そのイベントの判定処理を行う。Ｓ６０７でＣＰＵ１１１がムーブを検出した場合はＳ１００５に戻り、ＣＰＵ１１１はドロップダウンリスト９０２をスクロールさせる。この時点では、ムーブが検出され、そのままタッチオンが検出されている状態なので、ドラッグ操作によるドロップダウンリスト９０２のスクロールを行っている状態である。
【００６１】
一方、Ｓ６０７で、ＣＰＵ１１１がタッチアップを検出した場合はＳ６０８に進み、ＣＰＵ１１１が、スクロールの継続条件を満たすかどうかを判定する。Ｓ６０８で、スクロールの継続条件を満たすと判定するとＳ１００６に進み、ＣＰＵ１１１は、ムーブ操作の距離、速度等の値からスクロールの量を算出し、タッチアップ後にその量だけドロップダウンリスト９０２のスクロールを継続して実行する。
【００６２】
このように実施形態３に係る情報処理装置１０１によれば、ドロップダウンリスト９０２の外でタッチダウンを検出した後、タッチオンを維持したままドロップダウンリスト９０２でムーブを検出すれば、ドロップダウンリスト９０２をスクロールさせる。これにより、ユーザがドロップダウンリスト９０２の外からフリック操作を行った場合でも、ドロップダウンリスト９０２に表示された宛先表の一覧をスクロールさせることができ、フリック操作の操作性が向上する。
【００６３】
尚、上述の実施形態１〜３では、フリック操作の場合で説明したが、本発明はドラッグ操作の場合も同様に適用できる。例えば実施形態３で、ドロップダウンリスト９０２の外でタッチダウンを検出した後、タッチオンを維持した状態で、ドロップダウンリスト９０２でムーブを検出すれば、ドロップダウンリスト９０２に表示された宛先表の一覧をスクロールさせても良い。
【００６４】
また本実施形態３では、ドロップダウンリストについて記述したが、これと類似する機能を持つリスト或いはメニュー等（コンボボックスやポップアップリスト、チョイスなど）に対しても適用できる。
【００６５】
＜その他の実施形態＞
以上、本発明をその好適な実施形態に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。また、上述の実施形態の一部を適宜組み合わせてもよい。
【００６６】
例えば、表示部にスクロール表示されるコンテンツはアドレス帳の宛先の情報に限定されない。スクロール表示可能なものであれば、その他、あらゆるデータの表示に本発明は適用可能である。また、スクロールの方向も上下方向のみならず、あらゆる方向のスクロールに適用可能である。
【００６７】
また、上述の情報処理装置１０１は、様々な装置を含むものである。例えば、パーソナルコンピュータやＰＤＡ、携帯電話端末に限らず、プリンタ、スキャナ、ＦＡＸ、複写機、複合機、カメラ、ビデオカメラ、その他の画像ビューワ等を含む。
【００６８】
（その他の実施形態）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2014067195.tif 000003
【図２】
2014067195.tif 000004
【図３】
2014067195.tif 000005
【図４】
2014067195.tif 000006
【図５】
2014067195.tif 000007
【図６】
2014067195.tif 000008
【図７】
2014067195.tif 000009
【図８】
2014067195.tif 000010
【図９】
2014067195.tif 000011
【図１０】
2014067195.tif 000012