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

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

▶ キヤノン株式会社の特許一覧

特許6971573電子機器、その制御方法およびプログラム
<>
  • 特許6971573-電子機器、その制御方法およびプログラム 図000002
  • 特許6971573-電子機器、その制御方法およびプログラム 図000003
  • 特許6971573-電子機器、その制御方法およびプログラム 図000004
  • 特許6971573-電子機器、その制御方法およびプログラム 図000005
  • 特許6971573-電子機器、その制御方法およびプログラム 図000006
  • 特許6971573-電子機器、その制御方法およびプログラム 図000007
  • 特許6971573-電子機器、その制御方法およびプログラム 図000008
  • 特許6971573-電子機器、その制御方法およびプログラム 図000009
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6971573
(24)【登録日】2021年11月5日
(45)【発行日】2021年11月24日
(54)【発明の名称】電子機器、その制御方法およびプログラム
(51)【国際特許分類】
   G06F 3/0485 20130101AFI20211111BHJP
   G06F 3/0484 20130101ALI20211111BHJP
   G06F 3/041 20060101ALI20211111BHJP
【FI】
   G06F3/0485
   G06F3/0484 150
   G06F3/041 600
【請求項の数】21
【全頁数】21
(21)【出願番号】特願2016-253006(P2016-253006)
(22)【出願日】2016年12月27日
(65)【公開番号】特開2018-106480(P2018-106480A)
(43)【公開日】2018年7月5日
【審査請求日】2019年12月18日
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100090273
【弁理士】
【氏名又は名称】國分 孝悦
(72)【発明者】
【氏名】岡田 孝一
【審査官】 菅原 浩二
(56)【参考文献】
【文献】 特開2014−006748(JP,A)
【文献】 特開2016−139264(JP,A)
【文献】 特開2008−146664(JP,A)
【文献】 特開2015−138332(JP,A)
【文献】 特開2016−009315(JP,A)
【文献】 特表2008−512756(JP,A)
【文献】 特開2011−053972(JP,A)
【文献】 特開2006−185443(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/0485
G06F 3/0484
G06F 3/041
(57)【特許請求の範囲】
【請求項1】
表示画面に対するタッチを検出可能なタッチ検出手段と、
前記表示画面に対するタッチの押圧力を検出する圧力検知手段と、
前記表示画面に表示対象を表示するように制御する制御手段と、を有し、
前記制御手段は、
スクロール可能な第1のコンテンツ内の一部の領域に、スクロール可能な第2のコンテンツが表示されているときに、
前記表示画面が所定の押圧力未満でタッチされ、タッチ位置が移動したことに応じて、記第1のコンテンツスクロールするように制御し、
前記表示画面が前記所定の押圧力以上でタッチされ、タッチ位置が移動したことに応じて、前記第1のコンテンツはスクロールせずに、前記第2のコンテンツスクロールするように制御する、
ことを特徴とする電子機器。
【請求項2】
前記制御手段は、
前記表示画面がタッチされたときのタッチ位置に関わらず、前記タッチの押圧力に応じて、スクロールするコンテンツを切り換えるように制御することを特徴とする請求項1記載の電子機器。
【請求項3】
前記制御手段は、
前記第2のコンテンツの領域がタッチされた場合に、前記タッチの押圧力に応じて、スクロールするコンテンツを決定することを特徴とする請求項1記載の電子機器。
【請求項4】
前記制御手段は、
前記表示画面へのタッチの押圧力に応じて、前記第2のコンテンツの表示領域を示す枠の表示形態を変更することを特徴とする請求項1ないしの何れか1項に記載の電子機器。
【請求項5】
前記制御手段は、
前記表示画面へのタッチの押圧力に応じて、前記第2のコンテンツの表示領域を示す枠の色を変更することを特徴とする請求項に記載の電子機器。
【請求項6】
前記制御手段は、
前記第1のコンテンツ上であって前記第2のコンテンツ以外の領域がタッチされてから、タッチ位置が移動した場合には、前記タッチの押圧力に関わらず、記第1のコンテンツスクロールするように制御することを特徴とする請求項1ないしの何れか1項に記載の電子機器。
【請求項7】
前記制御手段は、
前記第1のコンテンツ上であって前記第2のコンテンツ以外の領域がタッチされ、前記所定の押圧力以上でタッチ位置が移動した場合には、前記第1のコンテンツおよび前記第2のコンテンツスクロールしないように制御することを特徴とする請求項に記載の電子機器。
【請求項8】
前記制御手段は、
前記タッチ位置が移動したことに応じてコンテンツスクロールしてから、前記表示画面が再びタッチされタッチ位置が移動した場合には、押圧力に関わらず、前回スクロールしたコンテンツスクロールするように制御することを特徴とする請求項1ないしの何れか1項に記載の電子機器。
【請求項9】
前記制御手段は、
前記表示画面が再びタッチされたときのタッチ位置が、前記第1のコンテンツ上であって前記第2のコンテンツ以外の領域である場合には、記第1のコンテンツスクロールするように制御することを特徴とする請求項に記載の電子機器。
【請求項10】
前記制御手段は、
前記タッチ位置が移動したことに応じてコンテンツスクロールしてから、前記表示画面が再びタッチされタッチ位置が移動した場合には、タッチ位置に関わらず、前回スクロールしたコンテンツスクロールするように制御することを特徴とする請求項1ないしの何れか1項に記載の電子機器。
【請求項11】
前記制御手段は、
前記タッチ位置が移動したことに応じてコンテンツスクロールしてから、第1の期間が経過するまでに前記表示画面が再びタッチされタッチ位置が移動した場合には、前回スクロールしたコンテンツスクロールするように制御することを特徴とする請求項ないし10の何れか1項に記載の電子機器。
【請求項12】
前記制御手段は、
前記第1の期間が経過した後に前記表示画面がタッチされタッチ位置が移動した場合には、前記第1の期間が経過した後にタッチ位置が移動したときの押圧力に応じて、スクロールするコンテンツを切り換えることを特徴とする請求項11に記載の電子機器。
【請求項13】
前記制御手段は、
前記タッチ位置が移動したことに応じてコンテンツスクロールしてから、前記表示画面がタッチされ、前記スクロールとは異なるタッチ操作を受け付けた場合には、押圧力またはタッチ位置に関わらず、前回スクロールしたコンテンツに対して、前記異なるタッチ操作に応じた制御をすることを特徴とする請求項1ないし12の何れか1項に記載の電子機器。
【請求項14】
前記制御手段は、
前記タッチ位置が移動したことに応じてコンテンツスクロールしてから第2の期間が経過するまでに前記異なるタッチ操作を受け付けた場合には、前回スクロールしたコンテンツに対して、前記異なるタッチ操作に応じた制御をすることを特徴とする請求項13に記載の電子機器。
【請求項15】
前記異なるタッチ操作に応じた制御とは、前記コンテンツを拡大または縮小する制御であることを特徴とする請求項13または14に記載の電子機器。
【請求項16】
前記制御手段は、
スクロールされるコンテンツをユーザに対して識別可能に通知することを特徴とする請求項1ないし15の何れか1項に記載の電子機器。
【請求項17】
前記制御手段は、
スクロールされるコンテンツに対して、強調表示、色の変更および表示アイテムの表示のうち少なくとも何れか一つを行うことにより、スクロールされるコンテンツをユーザに対して通知することを特徴とする請求項16に記載の電子機器。
【請求項18】
前記電子機器は、撮像手段および表示画面を有する撮像装置であることを特徴とする請求項1ないし17の何れか1項に記載の電子機器。
【請求項19】
表示画面に対するタッチを検出するタッチ検出ステップと、
前記表示画面に対するタッチの押圧力を検出する圧力検出ステップと、
前記表示画面に表示対象を表示するように制御する制御ステップと、を有し、
前記制御ステップでは、
スクロール可能な第1のコンテンツ内の一部の領域に、スクロール可能な第2のコンテンツが表示されているときに、
前記表示画面が所定の押圧力未満でタッチされ、タッチ位置が移動したことに応じて、記第1のコンテンツスクロールするように制御し、
前記表示画面が前記所定の押圧力以上でタッチされ、タッチ位置が移動したことに応じて、前記第1のコンテンツはスクロールせずに、前記第2のコンテンツスクロールするように制御する、
ことを特徴とする電子機器の制御方法。
【請求項20】
コンピュータを、請求項1ないし18の何れか1項に記載された電子機器の制御手段として機能させるためのプログラム。
【請求項21】
請求項19に記載の電子機器の制御方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電子機器、その制御方法およびプログラム関するものである。
【背景技術】
【0002】
近年、電子機器を操作するためのインターフェースとしてタッチパネルが用いられている。タッチパネルは操作面に表示された画面との組み合わせにより様々な操作を単一の入力デバイスで実現できる。一方、タッチパネルでは操作が煩雑になってしまうことがある。例えば、スマートフォンでWEBページを閲覧する場合、タッチパネル上で指を下から上へ這うように操作(スクロール操作)することで画面をスクロールさせる。しかし、WEBページ内にスクロール可能な別のスクロール画面があると、スクロール操作の対象がWEBページそのものと別のスクロール画面とに分かれてしまい、WEBページをスクロールさせたいのに別のスクロール画面がスクロールされてしまうことがある。
【0003】
特許文献1には、タッチパネル上で指スライドによるスクロール操作を、オブジェクトのドラッグ操作と区別するために、タッチ箇所が同時に複数箇所であることを検知して、スクロール指示を判断してスクロールさせるスクロール装置が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平11−102274号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、特許文献1のスクロール装置では指の本数を変えて操作しなければならなかったり、ペンによる入力では操作することができなかったりするために、使い勝手が悪いという問題がある。
本発明は、上述したような問題点に鑑みてなされたものであり、ユーザが所望する操作を実現できるようにすることを目的とする。
【課題を解決するための手段】
【0006】
本発明の電子機器は、表示画面に対するタッチを検出可能なタッチ検出手段と、前記表示画面に対するタッチの押圧力を検出する圧力検知手段と、前記表示画面に表示対象を表示するように制御する制御手段と、を有し、前記制御手段は、スクロール可能な第1のコンテンツ内の一部の領域に、スクロール可能な第2のコンテンツが表示されているときに、前記表示画面が所定の押圧力未満でタッチされ、タッチ位置が移動したことに応じて、記第1のコンテンツスクロールするように制御し、前記表示画面が前記所定の押圧力以上でタッチされ、タッチ位置が移動したことに応じて、前記第1のコンテンツはスクロールせずに、前記第2のコンテンツスクロールするように制御する、ことを特徴とする。
【発明の効果】
【0007】
本発明によれば、ユーザが所望する操作を実現することができる。
【図面の簡単な説明】
【0008】
図1】電子機器の構成の一例を示すブロック図である。
図2】表示制御の処理の一例を示すフローチャートである。
図3】タッチ入力制御の処理の一例を示すフローチャートである。
図4】タップ判定処理の一例を示すフローチャートである。
図5】マルチタッチ処理の一例を示すフローチャートである。
図6】シングルタップ処理の一例を示すフローチャートである。
図7】ディスプレイの表示例を示す図である。
図8】ディスプレイの表示例を示す図である。
【発明を実施するための形態】
【0009】
<第1の実施形態>
以下、図面を参照して、本発明に係る実施形態について説明する。
図1は、本実施形態に係る電子機器100の構成の一例を示すブロック図である。ここでは、電子機器100が例えばスマートフォンであるものとして説明する。
【0010】
電子機器100は、CPU101、メモリ102、不揮発性メモリ103、画像処理部104、ディスプレイ105、記録媒体I/F106、外部I/F108、通信I/F109、システムタイマ111、操作部112、圧力検出部113などを有する。これらの各構成部は、内部バス114によって接続され、内部バス114を介して互いにデータを送受信することができる。
CPU101は電子機器100全体を制御する。具体的には、CPU101は不揮発性メモリ103に格納されたプログラムに従って電子機器100の各部を制御する。CPU101は表示制御手段および制御手段の一例に対応する。
【0011】
メモリ102はCPU101のワークメモリとして用いられる。メモリ102は例えばRAM(半導体素子を利用した揮発性のメモリなど)である。
不揮発性メモリ103は画像データ、音声データ、その他のデータ(閾値、タイマの設定時間)、および、CPU101が動作するための各種プログラムなどが格納される。不揮発性メモリ103は例えばハードディスク(HD)やROMなどである。
画像処理部104は、CPU101の制御に基づいて、不揮発性メモリ103や記録媒体107に格納された画像データ、外部I/F108を介して取得した映像信号、通信I/F109を介して取得した画像データなどに対して各種画像処理を施す。画像処理部104による画像処理には、A/D変換処理、D/A変換処理、画像データの符号化処理、圧縮処理、デコード処理、拡大/縮小処理(リサイズ)、ノイズ低減処理、色変換処理などが含まれる。なお、画像処理部104は特定の画像処理を施すための専用の回路ブロックで構成してもよい。また、画像処理の種別によっては画像処理部104を用いずにCPU101がプログラムに従って画像処理を施してもよい。
【0012】
ディスプレイ105は、CPU101の制御に基づいて、画像やGUI(Graphical User Interface)を構成するGUI画面などを表示する。CPU101は、プログラムに従って表示制御信号を生成し、ディスプレイ105に表示するための映像信号を生成してディスプレイ105に出力するように電子機器100の各部を制御する。ディスプレイ105は出力された映像信号に基づいて映像を表示する。なお、電子機器100自体が備える構成としてはディスプレイ105に表示させるための映像信号を出力するためのインターフェースまでとし、ディスプレイ105は外付けのモニタ(テレビなど)で構成してもよい。
【0013】
記録媒体I/F106は、メモリーカードやCD、DVDなどの記録媒体107が装着可能である。記録媒体I/F106は、CPU101の制御に基づいて、装着された記録媒体107からのデータの読み出しや記録媒体107に対するデータの書き込みを行う。
外部I/F108は外部装置との間で映像信号や音声信号の入出力を行うためのインターフェースである。外部I/F108は外部装置と有線ケーブルや無線によって接続される。
通信I/F109は、外部装置やインターネット110などと通信して、ファイルやコマンドなどの各種データの送受信を行うためのインターフェースである。
システムタイマ111は、各種制御に用いる時間あるいは内蔵された時計の時間を計測する計時部である。
【0014】
操作部112は、キーボードなどの文字情報入力デバイスや、マウスやタッチパネルといったポインティングデバイス、ボタン、ダイヤル、ジョイスティック、タッチセンサ、タッチパッドなどを含む、ユーザ操作を受け付けるための入力デバイスである。ここで、操作部112の一つとして、ディスプレイ105に対する接触を検出可能なタッチパネル112aを有する。タッチパネル112aとディスプレイ105とは一体的に構成することができる。例えば、タッチパネル112aを光の透過率がディスプレイ105の表示を妨げないように構成し、ディスプレイ105の表示面の上層に取り付ける。そして、タッチパネル112aにおける入力座標と、ディスプレイ105上の表示座標とを対応付ける。これにより、恰もユーザがディスプレイ105上に表示された画面を直接的に操作可能であるかのようなGUIを構成することができる。タッチパネル112aは、ディスプレイ105の操作面に対するタッチを検出可能なタッチ検出手段の一例に対応する。CPU101はタッチパネル112aにより検出されたタッチに基づいて以下の操作あるいは状態を検出できる。
【0015】
・タッチパネル112aにタッチしていなかった指やペンが新たにタッチパネル112aにタッチしたこと。すなわち、タッチの開始(以下、タッチダウン(Touch-Down)と称する)。
・タッチパネル112aを指やペンでタッチしている状態であること(以下、タッチオン(Touch-On)と称する)。
・タッチパネル112aを指やペンでタッチしたまま移動していること(以下、タッチムーブ(Touch-Move)と称する)。
・タッチパネル112aへタッチしていた指やペンを離したこと。すなわち、タッチの終了(以下、タッチアップ(Touch-Up)と称する)。
・タッチパネル112aに何もタッチしていない状態(以下、タッチオフ(Touch-Off)と称する)。
【0016】
タッチダウンが検出されると、同時にタッチオンであることも検出される。タッチダウンの後、タッチアップが検出されない限りは、通常はタッチオンが検出され続ける。タッチムーブが検出されるのもタッチオンが検出されている状態である。タッチオンが検出されていても、タッチ位置が移動していなければタッチムーブは検出されない。タッチしていた全ての指やペンがタッチアップしたことが検出された後は、タッチオフとなる。
これらの操作・状態や、タッチパネル112a上に指やペンがタッチしている位置座標は内部バス114を通じてタッチパネル112aからCPU101に通知される。CPU101は通知された情報に基づいてタッチパネル112a上でどのような操作が行なわれたかを判定する。CPU101はタッチムーブについてはタッチパネル112a上で移動する指やペンの移動方向についても、位置座標の変化に基づいて、タッチパネル112a上の垂直成分・水平成分毎に判定できる。また、タッチパネル112a上をタッチダウンから一定のタッチムーブを経てタッチアップをしたとき、ストロークを描いたこととする。素早くストロークを描く操作をフリック(フリック操作)と呼ぶ。フリックは、タッチパネル112a上に指をタッチしたままある程度の距離だけ素早く動かして、そのまま離すといった操作であり、言い換えればタッチパネル112a上を指ではじくように素早くなぞる操作である。CPU101は、所定距離以上を、所定速度以上でタッチムーブしたことを検出し、そのままタッチアップを検出した場合にはフリックが行なわれたと判定する。また、CPU101は、所定距離以上を、所定速度未満でタッチムーブしたことを検出した場合はドラッグが行なわれたと判定する。また、CPU101は同時に、複数のタッチ位置(タッチ入力点数)を検出したり、複数のタッチ操作を検出したりすることができる。例えば、CPU101は複数点(例えば2点)が同時にタッチされ、互いのタッチ位置が近づくタッチ操作を検出した場合にはピンチイン、互いのタッチ位置が離れるタッチ操作を検出した場合にはピンチアウトが行われたと判定する。なお、ピンチアウトとピンチインとを合せてピンチ(あるいはピンチ操作)と称する。また、CPU101はタッチダウンとタッチアップとのタッチ操作を検出した場合にはシングルタップ(あるいはシングルタップ操作)が行われたと判定する。また、CPU101は所定期間内にタッチダウンとタッチアップとを2回繰り返すタッチ操作を検出した場合にはダブルタップ(あるいはダブルタップ操作)が行われたと判定する。
【0017】
タッチパネル112aは、抵抗膜方式や静電容量方式、表面弾性波方式、赤外線方式、電磁誘導方式、画像認識方式、光センサ方式などの方式のうち何れの方式を用いてもよい。方式によって、タッチパネル112aに対する接触があったことでタッチがあったと検出する方式や、タッチパネル112aに対する指やペンの接近があったことでタッチがあったと検出する方式があるが、何れの方式であってもよい。
【0018】
圧力検出部113は、ディスプレイ105の操作面に対する押圧力を検出する。圧力検出部113は、圧力検出手段の一例に対応する。圧力検出部113は、ディスプレイ105に対するタッチ操作によって押圧された場合の押圧力の強度を連続的に検出することができる。圧力検出部113は例えば、歪みゲージセンサや静電容量センサを用いることができる。歪みゲージセンサを用いる場合には、ディスプレイ105の操作面に対する押圧力によって歪む部分に歪みゲージセンサを設置し、歪みゲージセンサからの出力値によってディスプレイ105の操作面に対する押圧力を検出する。静電容量センサを用いる場合には、ディスプレイ105と平行に静電容量センサを設ける。ディスプレイ105の操作面に対する押圧力によって操作面が歪むことで、操作面上の指と静電容量センサとの距離を静電容量値から算出し、算出した距離に基づいて押圧力を検出したり、算出した距離を圧力と同等に扱うことで押圧力を検出したりしてもよい。なお、圧力検出部113は、ディスプレイ105の操作面に対する押圧力を検出可能なものであれば、他の方式のものであってもよい。また、圧力検出部113はタッチパネル112aと一体に構成されるものであってもよい。
【0019】
図7(a)は、ディスプレイ105に表示される画面の一例を示す図である。
第1表示領域701は、タッチパネル112aを備えたディスプレイ105に表示されている表示領域であり、第2表示領域702を包含する領域である。第2表示領域702は、第1表示領域701に含まれている領域であり、第1表示領域701とは別にスクロールが可能な表示領域である。スクロールバー703は、第1表示領域701に表示されている表示対象をスクロール可能であり、且つディスプレイ105に表示されている表示対象に対する表示領域全体の位置を示すものである。
【0020】
第1表示領域701と第2表示領域702としては、例えば、文書、画像または地図データなどが配置されたドキュメントであるWEBページを表示する第1表示領域と、Webページの一部に配置された画像を表示する第2表示領域とが挙げられる。第2表示領域702に表示する画像として、通常の撮像画像や動画のほか、全方位カメラで撮像された全方位画像やコンピュータグラフィックで作成された全方位画像の少なくとも一部を表示することも可能である。なお、第2表示領域702に表示されるコンテンツはスクロール可能な表示対象であれば、画像以外にも文書、地図データなどであってもよい。
【0021】
本実施形態では、ディスプレイ105の操作面に対してタッチムーブが行われた場合に、第1表示領域701内でのタッチであれば、タッチ位置に関わらず、タッチの押圧力に応じてスクロールさせる制御対象を切り換える。
図7(b)に示すように、第1表示領域701内の第2表示領域702にタッチされ、弱い押圧力でタッチムーブが行われた場合、図7(c)に示すように、第1表示領域701に表示された表示対象の全体がスクロールされる。すなわち、第1表示領域701内の文書などの表示対象と、第2表示領域702そのものとが、タッチムーブに応じて一緒にスクロールされる。したがって、図7(b)から図7(c)に示すように、スクロールの前後で第1表示領域701に対する第2表示領域702の表示位置も変化する。
一方、図7(d)に示すように、第1表示領域701内の第2表示領域702にタッチされ、強い押圧力でタッチムーブが行われた場合、図7(e)に示すように、第2表示領域702に表示された表示対象のみがスクロールされる。すなわち、第1表示領域701に表示された第2表示領域702以外の文書などの表示対象はスクロールされず、第1表示領域701に対する第2表示領域702の表示位置は変わらない。一方、タッチムーブに応じて第2表示領域702内の表示対象だけがスクロールされる。したがって、図7(d)から図7(e)に示すように、スクロールの前後で第1表示領域701に対する第2表示領域702の表示位置は変化しない。
【0022】
次に、図7(a)〜(e)を用いて説明した表示制御を実現するフローチャートを図2図6を参照して説明する。図2図6のフローチャートの処理は、CPU101が不揮発性メモリ103に記録されたプログラムをメモリ102に読み出して実行することで実現する。
図2のフローチャートの処理は、電子機器100が起動されブラウザソフト等によってWEBページなどのコンテンツをディスプレイ105に表示させる指示を受け付けることで開始される。なお、コンテンツには、第1表示領域701内に表示される文書などの表示対象と、第2表示領域702内に表示される画像などの表示対象が含まれているものとする。
S201では、CPU101はディスプレイ105に初期画面を表示する。例えば、WEBページを表示する場合には、図7(a)に示すようにWEBページの先頭位置が初期画面として表示される。
【0023】
S202では、CPU101はタッチ入力制御を行う。タッチ入力制御の処理は、図3に示すフローチャートを参照して後述する。
S203では、CPU101はタッチ入力制御の結果に基づいて画面を更新する。
S204では、CPU101は表示制御を終了するか否かを判定する。終了しない場合にはS202からS204までの処理を繰り返し、表示制御を終了する場合には図2のフローチャートを終了する。
【0024】
図3は、図2に示すS202のタッチ入力制御の処理を示すフローチャートである。ここでは、ユーザがタッチムーブしたときの押圧力に応じてスクロールする制御対象を第1表示領域701内の表示対象とするか、第2表示領域702の表示対象とするかを決定する。
S301からS307までの処理はタッチ入力された後の処理であるために詳細は後述し、S308の処理から説明する。
【0025】
S308では、CPU101はディスプレイ105の操作面に対してタッチダウンがあったか否かを判定する。タッチダウンがなければタッチ入力制御を終了し、タッチダウンがあった場合にはS309に進む。
S309では、CPU101はタッチ入力点数を判定する。タッチ入力点数とは、タッチ入力されたタッチ点の数である。2点以上である場合にはS310に進み、マルチタッチ処理を行う。S310のマルチタッチ処理は、図5のフローチャートを参照して後述する。一方、1点のみの場合にはS311に進む。
【0026】
S311では、CPU101はタッチムーブがあったか否かを判定する。タッチムーブがなかった場合にはS312に進む。
S312では、CPU101はタッチアップされたか否かを判定する。タッチアップされた場合にはタッチ点の数が1点からのタッチアップであるためにタッチオフの状態となる。なお、タッチムーブからのタッチアップあるいはマルチタッチ(ピンチ操作など)からのタッチアップなどは、後述するS325において判定されるためにS312のタッチアップの判定には含まれない。タッチアップされた場合にはS313に進み、シングルタップ操作であるかダブルタップ操作であるかを判定するためのタップ判定処理を行う。S313のタップ判定処理は、図4のフローチャートを参照して後述する。なお、タッチアップがない場合にはS309に戻り、処理を繰り返す。
また、S311においてタッチムーブがあった場合にはS314に進む。
【0027】
S314では、CPU101はタッチムーブをスクロール操作として確定する。なお、タッチダウンされたときのタッチ位置が第1表示領域701内であり、且つタッチボタンなどの機能領域以外であった場合にのみ、CPU101はタッチムーブをスクロール操作として確定してもよい。したがって、タッチ位置が第1表示領域701以外あるいはタッチボタンなどの機能領域内であった場合には、CPU101はタッチムーブをスクール操作として確定せず、タッチ位置に応じた他の処理を行う。
【0028】
S315では、CPU101はスクロールタイマが起動中であるか否かを判定する。スクロールタイマとは、システムタイマ111を用いて起動するタイマの一つであり、スクロール操作からの経過時間を監視するタイマである。スクロールタイマには、第1表示領域701あるいは第2表示領域702のうち同一の表示領域に対してユーザが連続したスクロール操作を行うときに想定される時間(第1の期間)が設定される。この設定時間は予め不揮発性メモリ103に記憶されている。本実施形態ではスクロールタイマの設定時間として例えば1秒が適用される。なお、スクロールタイマが起動中にダブルタップ操作やピンチ操作が行われた場合には、制御対象は直前にスクロールした表示領域の表示対象となる。このようなスクロールタイマを用いた処理の詳細は後述する。
S315においてスクロールタイマが起動中ではない場合にはS316に進む。
【0029】
S316では、CPU101はスクロールタイマを起動する。
S317では、CPU101は制御対象とする表示領域の表示対象を決定するためにタッチムーブの押圧力を取得する。具体的には、CPU101は圧力検出部113により検出された押圧力を取得する。
S318では、CPU101は押圧力の強弱を判定する。具体的には、CPU101は取得した押圧力と閾値(所定の押圧力)とを比較して、押圧力が閾値未満(所定の押圧力未満)であるか否かを判定する。この閾値は予め不揮発性メモリ103に記憶されている。押圧力が閾値未満の場合にはS319に進む。
【0030】
S319では、CPU101は制御対象が第1表示領域701の表示対象であることをユーザに識別可能に通知する。具体的には、図7(b)に示すように、CPU101は第1表示領域701の外枠を太線にして強調表示することで、ユーザは第1表示領域701の表示対象がスクロールされる制御対象であることを識別できる。なお、制御対象が第1表示領域701の表示対象であることをユーザが識別できる形態であれば他の通知方法でもよい。例えば、第1表示領域701の外枠や第1表示領域701内の色を変更してもよく、第2表示領域702の外側(第2表示領域702とは関係のない位置)にスクロール可能な方向を示す矢印などの表示アイテムを表示してもよい。
【0031】
S320では、CPU101はタッチムーブに応じて第1表示領域701内の表示対象の全体をスクロールする。具体的には、図7(b)から図7(c)に示すように、第2表示領域702における表示対象(第2の表示対象)の表示位置の移動を伴って、第1表示領域701における表示対象(第1の表示対象)の表示範囲を変更するようにスクロールする。
S321では、CPU101は制御対象が第1表示領域701の表示対象であることを示す情報をメモリ102に記憶(バックアップ)する。ここでは、第1表示領域701の情報がメモリ102に記憶される。この情報は、スクロールタイマと共に次の操作の制御対象を決定するために用いるものであり、詳細は後述する。
【0032】
一方、S318において、押圧力が閾値以上(所定の押圧力以上)の場合にはS322に進む。
S322では、CPU101は制御対象が第2表示領域702の表示対象であることをユーザに識別可能に通知する。具体的には、図7(d)に示すように、CPU101は第2表示領域702の外枠を太線にして強調表示することで、ユーザは第2表示領域702の表示対象がスクロールされる制御対象であることを識別できる。なお、制御対象が第2表示領域702の表示対象であることをユーザが識別できる形態であれば他の通知方法でもよい。例えば、第2表示領域702の外枠や第2表示領域702内の色を変更してもよく、第2表示領域702内にスクロール可能な方向を示す矢印などの表示アイテムを表示してもよい。
【0033】
S323では、CPU101はタッチムーブに応じて第2表示領域702内の表示対象をスクロールする。具体的には、図7(d)から図7(e)に示すように、第2表示領域702の表示対象(第2の表示対象)のみの表示範囲を変更するようにスクロールする。一方、第1表示領域701の表示対象(第1の表示対象)のうち第2表示領域702の表示対象(第2の表示対象)以外の部分はスクロールしない。
S324では、CPU101は制御対象が第2表示領域702の表示対象であることを示す情報をメモリ102に記憶(バックアップ)する。ここでは、第2表示領域702の情報がメモリ102に記憶される。
【0034】
S325では、CPU101はタッチアップがあったか否かを判定する。タッチアップがあった場合はS326に進む。なお、ここでタッチアップがあった場合には少なくとも1度タッチムーブがあった後のタッチアップなので、シングルタップとダブルタップのどちらでもない。
S326では、CPU101はタッチムーブがフリック操作であるか否かを判定する。具体的には、CPU101はタッチアップを検出する直前に所定距離以上を所定速度以上でタッチムーブされたか(フリック操作であった)否かを判定する。フリック操作である場合にはS327に進み、フリック操作ではない場合にはタッチ入力制御を終了する。
S327では、CPU101はスクロールタイマを更新する。すなわち、CPU101はスクロールタイマをリセットして再び起動し、設定時間が経過してタイムアウトするまでカウントする。また、CPU101はフリック操作に応じて慣性スクロールを行う。具体的には、CPU101はタッチアップ後に、タッチアップ直前のタッチムーブの速度に応じた初速で、メモリ102に記憶されたバックアップ情報が示す制御対象をスクロールし、時間の経過と共に減速させて停止させる。
【0035】
S325においてタッチアップがない場合はS328に進む。
S328では、CPU101は再びタッチムーブがあったか否かを判定する。再びタッチムーブがあった場合にはスクロール操作として確定し、S331に進む。なお、詳細は後述するが、S331以降ではCPU101はスクロールの制御対象を、直前にスクロールした表示領域の表示対象と同一の表示対象とする。なお、CPU101はメモリ102に記憶されたバックアップ情報に基づいて直前にスクロールした表示領域の表示対象を判定する。
S328においてタッチムーブがない場合はS329に進む。
【0036】
S329では、CPU101はタッチ入力点数が2点以上になったか否かを判定する。具体的には、CPU101は現在検出されている1点のタッチ入力が離れることなく、追加してタッチダウンがあったか否かを判定する。タッチ入力点数が2点以上になった場合にはS330に進み、マルチタッチ処理を行う。S330のマルチタッチ処理は、図5のフローチャートを参照して後述する。一方、タッチ入力点数が2点以上ではない場合にはS325に戻り、処理を繰り返す。
【0037】
上述したS315においてスクロールタイマが起動中である場合にはS331に進む。S315からS331に進む場合とは、スクロールタイマがタイムアウトするまでの間に再びタッチムーブが行われた場合である。
S331では、CPU101はスクロールタイマを更新する。すなわち、CPU101はスクロールタイマをリセットして再び起動し、設定時間が経過してタイムアウトするまでカウントする。
S332では、CPU101はスクロールの制御対象を、直前にスクロールした表示領域の表示対象と同一の表示対象にするために、直前にスクロールした制御対象を判定する。具体的には、CPU101はメモリ102に記憶されたバックアップ情報を読み出すことでスクロールの制御対象を判定する。制御対象が第1表示領域701の表示対象の場合にはS333に進む。
【0038】
S333では、CPU101は第1表示領域701の表示対象に対するスクロール操作が受け付け可能であるか否かを判定する。受け付け可能である場合にS320に進む。一方、受け付けできない場合には、CPU101は第1表示領域701の表示対象に対するスクロール操作を制限して、S325に進む。具体的には、CPU101は第1表示領域701の表示対象の全体をスクロールさせる処理を停止する。ここで、第1表示領域701の表示対象に対するスクロール操作の受け付けができない場合とは、例えば連続して第1表示領域701の表示対象の全体をスクロールさせている最中に、画面上に第2表示領域702の表示対象が表示された場合などが該当する。このように、第2表示領域702の表示対象が表示されたときに、第1表示領域701の表示対象に対するスクロール操作を受け付けないようにすることで、ユーザに対して第2表示領域702の表示内容を確認させることができる。なお、表示内容を確認させる必要がなければ、S333の処理を省略してもよい。また、第1表示領域701の表示対象の全体のスクロールを停止させる場合において画面上に表示される第2表示領域702の表示対象は、いままでに表示されていない表示対象であることが好ましい。CPU101はいままで表示した第2表示領域702の表示対象の情報をメモリ102に記憶しておくことで、いままでに表示したか否かを判定することができる。
【0039】
また、S333において受け付けできない場合には、CPU101はスクロールを停止してから停止タイマを起動して、停止タイマで設定される時間(第2の期間)が経過するまで、スクロール操作を受け付けない処理を追加してもよい。停止タイマの設定時間は予め不揮発性メモリ103に記憶されている。ただし、停止タイマの設定時間が経過する前であっても、CPU101は第2表示領域702の表示対象に対するスクロール操作を受け付けて、第2表示領域702の表示対象をスクロールしてもよい。この場合には、ユーザは第2表示領域702の表示内容を確認することができる。また、停止タイマの設定時間が経過してタイムアウトした場合には、CPU101は第1表示領域701の表示対象に対するスクロール操作を受け付けて、第1表示領域701の表示対象の全体をスクロールする。
【0040】
S332において、制御対象が第2表示領域702の表示対象の場合にはS323に進み、CPU101は第2表示領域702の表示対象をスクロールする。すなわち、CPU101はスクロール操作の押圧力およびタッチ位置に関わらず、第2表示領域702内の表示対象をスクロールする。連続してスクロール操作する場合には押圧力を一定にすることが困難であるために、スクロールの制御対象をバックアップ情報に記憶された制御対象とすることで、ユーザは押圧力によらず、連続するスクロール操作を容易に続けることができる。
なお、操作性を考慮する必要がなければ、再びスクロール操作が行われたときに、上述したS318の処理と同様、押圧力の強弱に応じてスクロールの制御対象を切り換えてもよい。また、S332からS323までの間で、S333と同様の処理を追加してもよい。具体的には、CPU101は第2表示領域702の表示対象に対するスクロール操作が受け付け可能であるか否かを判定し、受け付け可能である場合にはS323に進む。一方、受け付けできない場合にはS325に進むことで、CPU101は第2表示領域702の表示対象に対するスクロール操作を制限する。
【0041】
また、S333の処理は、S327においてフリック操作に応じて慣性スクロールする場合にも適用することができる。例えば、CPU101は第1表示領域701あるいは第2表示領域702の表示対象に対するフリック操作が受け付け可能であるか否かを判定する。受け付けができない場合には、CPU101は第1表示領域701あるいは第2表示領域702の表示対象に対するフリック操作を制限し、第1表示領域701あるいは第2表示領域702の表示対象をスクロールする処理を停止する。
【0042】
以上のような処理によって、タッチムーブの押圧力の強弱に応じてスクロールの制御対象を切り換えることができる。これによって、例えば、ユーザが第1表示領域701に表示された表示対象の全体をスクロール操作するつもりが、意図せずに第2表示領域702にタッチしてしまった場合でも、軽い力でスクロール操作することで全体のスクロールが行われる。すなわち、ユーザはタッチ位置を細かく調整することなく大雑把な操作で意図した対象のスクロールを行うことができる。このように、押圧力に応じて制御対象を切り換えることができるので、ユーザは所望する操作を実現することができる。
【0043】
なお、S318では、押圧力の判定をタッチ位置(タッチダウン位置)に関わらず行う(あるいはタッチ位置が第1表示領域701内のときに行う)ものとしたが、この場合に限られない。例えば、CPU101はタッチ位置が第2表示領域702内(第2表示領域702の表示対象上)であるか否かを判定し、第2表示領域702内である場合のみ行うようにしてもよい。すなわち、タッチ位置が第1表示領域701内であって、第2表示領域702以外の場合には、押圧力の強弱に関わらずS319に進む。この場合、ユーザには第2表示領域702内のスクロール操作を行う意思はないと想定でき、CPU101は押圧力に関わらず、タッチムーブに応じて第1表示領域701に表示された表示対象の全体をスクロールする。
【0044】
また、S318では、押圧力が閾値以上の場合には、タッチ位置(タッチダウン位置)に関わらず(あるいはタッチ位置が第1表示領域701内の場合)、S322に進み第2表示領域702の表示対象をスクロールの制御対象としたが、この場合に限られない。例えば、CPU101はタッチ位置が第2表示領域702内であるか否かを判定し、第2表示領域702内の場合にのみ行うようにしてもよい。すなわち、S318において押圧力が閾値以上の場合であっても、CPU101はタッチ位置が第2表示領域702以外である場合には、S322〜S324の処理を省略してもよい。この場合、CPU101はユーザが第2表示領域702以外にタッチして、押圧力が閾値以上でタッチムーブ操作を行っても、その操作を無効とし、何れの表示領域の表示対象もスクロールしない。
【0045】
また、S332では、スクロール操作のタッチ位置(タッチダウン位置)に関わらず、スクロールの制御対象を、直前にスクロールした表示領域の表示対象と同一の表示対象としたが、スクロール操作の位置を考慮してもよい。具体的には、S331の処理の前に、CPU101はスクロール操作をしたときのタッチ位置(タッチダウン位置)が第2表示領域702内であるか否かを判定し、処理を分岐することができる。
スクロール操作をしたときのタッチ位置が第2表示領域702内である場合には上述したS332以降の処理を行う。一方、スクロール操作をしたときのタッチ位置が第2表示領域702以外である場合にはS332に進むことなく、S320に進み、CPU101は第1表示領域701の表示対象の全体をスクロールする。
【0046】
次に、バックアップ情報のクリア処理に関するS301〜S307の処理について説明する。
S301では、CPU101はスクロールタイマが設定時間を経過してタイムアウトしたか否かを判定する。直前に行ったスクロールから設定時間が経過した場合にはスクロールタイマがタイムアウトする。タイムアウトした場合にはS302に進む。
S302では、CPU101は直前にスクロールした制御対象を判定する。具体的には、CPU101はメモリ102に記憶されたバックアップ情報を読み出すことでスクロールの制御対象を判定する。制御対象が第1表示領域701の表示対象の場合にはS303に進み、第2表示領域702の表示対象の場合にはS304に進む。
【0047】
S303では、CPU101は制御対象が第1表示領域701の表示対象であることをユーザに識別させていた通知を解除する。具体的には、CPU101は第1表示領域701の外枠を通常の線に戻して強調表示を終了する。
S304では、CPU101は制御対象が第2表示領域702の表示対象であることをユーザに識別させていた通知を解除する。具体的には、CPU101は第2表示領域702の外枠を通常の線に戻して強調表示を終了する。
S305では、CPU101はメモリ102に記憶されたバックアップ情報をクリア(消去)する。S303、S304およびS305は、スクロールタイマを用いた各種の連続操作の受け付けを終了するための処理である。したがって、スクロールタイマがタイムアウトした後に新たなスクロール操作があった場合には、再びS318において押圧力の強弱が判定され、押圧力に応じてスクロールの制御対象が切り換えられる。
【0048】
S301においてスクロールタイマがタイムアウトとしていない場合には、S306に進む。
S306では、CPU101はタップタイマが設定時間を経過してタイムアウトしたか否かを判定する。後述するS313のタップ判定処理によって、直前にタッチムーブを伴わないタップ操作が行われ、設定時間が経過していなければタップタイマが動作している状態(タイムアウトしていない状態)である。タイムアウトする場合には、タッチ操作が短い時間に連続で2回タップするダブルタップ操作ではなくシングルタップ操作である。したがって、S307に進みシングルタップ処理を行う。S307のシングルタップ処理は、図6のフローチャートを参照して後述する。一方、タイムアウトしていない場合には、2回目のタップによるダブルタップ操作の可能性があるため、シングルタップ処理を行わずにS308に進む。
S308以降の処理は上述した通りである。
【0049】
次に、上述したS313のタップ判定処理について図4のフローチャートを参照して説明する。
S401では、CPU101はタップタイマが起動中であるか否かを判定する。タップタイマとは、短い時間に連続で2回タップするダブルタップ操作であるか、1回のタップ操作すなわちシングルタップ操作であるかを判定するためのタイマである。タップタイマには、ユーザがダブルタップ操作を行うときに想定されるタップ間隔の時間が設定される。この設定時間は予め不揮発性メモリ103に記憶されている。本実施形態ではタップタイマの設定時間として例えば0.5秒が適用される。
なお、初回はタップタイマが起動していないのでS402に進み、CPU101はタップタイマを起動する。
【0050】
一方、直前にタップ操作を行われ、設定時間が経過しない場合にはタップタイマが起動中であるためにS403に進む。
S403では、CPU101はタップ操作をダブルタップ操作として確定する。すなわち、タップタイマが起動中でありS403に進む場合とは、直前に別のタップ操作が行われているため、CPU101はタップ操作をダブルタップ操作であると判定することができる。なお、本実施形態では、ダブルタップ操作が画面表示の拡大や縮小を行うための操作であるものとして説明する。
【0051】
S404では、CPU101はタップタイマを停止する。ここで、タップタイマを停止するのはダブルタップ操作を確定した後ではタップタイマは不要になるためである。
S405では、CPU101はダブルタップ操作が行われたときにスクロールタイマが起動中であるか否かを判定する。ここでのスクロールタイマの設定時間は、第3の期間の一例に対応する。本実施形態では第1の期間と第3の期間とは同一時間であるが、異なっていてもよい。スクロールタイマが起動中である場合にはS406に進む。
S406では、CPU101はスクロールタイマを更新する。
S407では、CPU101は直前にスクロールした制御対象を判定する。具体的には、CPU101はメモリ102に記憶されたバックアップ情報を読み出すことでスクロールの制御対象を判定する。制御対象を判定するのは、タブルタップ操作の制御対象を、直前にスクロールした表示領域の表示対象と同一の表示対象とするためである。すなわち、タブルタップ操作の制御対象を、押圧力やダブルタップ操作のタッチ位置によらず、直前にスクロールした制御対象とする。制御対象が第1表示領域701の表示対象の場合にはS408に進み、第2表示領域702の表示対象の場合にはS409に進む。
【0052】
S408では、CPU101は制御対象を第1表示領域701内の表示対象の全体として拡大または縮小を行う。なお、拡大および縮小はダブルタップ操作を行うごとに交互に行われる。
図8(a)、(b)は、ディスプレイ105に表示される画面の一例を示す図である。
図8(a)では、第1表示領域701の外枠が太線で強調表示されており、直前にスクロールした制御対象が第1表示領域701の表示対象であったものとする。図8(a)からダブルタップ操作が行われると、図8(b)に示すように第1表示領域701に表示された表示対象の全体が拡大される。すなわち、第1表示領域701に表示された文書などの表示対象と、第2表示領域702そのものが一緒に拡大される。したがって、図8(a)から図8(b)に示すように、拡大の前後で第2表示領域702の大きさも変化する。
一方、図8(b)では、スクロールの制御対象が第1表示領域701の表示対象であり、既に拡大された状態であったものとする。図8(b)からダブルタップ操作が行われると、図8(a)に示すように第1表示領域701に表示された表示対象の全体が縮小して拡大前の倍率に戻される。すなわち、第1表示領域701に表示された文書などの表示対象と、第2表示領域702そのものが一緒に縮小する。したがって、図8(b)から図8(a)に示すように、縮小の前後で第2表示領域702の大きさも変化する。
【0053】
S409では、CPU101は制御対象を第2表示領域702内の表示対象として拡大または縮小を行う。なお、拡大および縮小はダブルタップ操作を行うごとに交互に行われる。
図8(c)、(d)は、ディスプレイ105に表示される画面の一例を示す図である。
図8(c)では、第2表示領域702の外枠が太線で強調表示されており、直前にスクロールした制御対象が第2表示領域702の表示対象であったものとする。図8(c)からダブルタップ操作が行われると、図8(d)に示すように第2表示領域702に表示された表示対象だけが拡大される。すなわち、第1表示領域701に表示された表示対象のうち、第2表示領域702以外の部分の大きさは変わらない。したがって、図8(c)から図8(d)に示すように、拡大の前後で第2表示領域702の大きさは変化しない。
一方、図8(d)では、スクロールの制御対象が第2表示領域702の表示対象であり、既に拡大された状態であったものとする。図8(d)からダブルタップ操作が行われると、図8(c)に示すように第2表示領域702に表示された表示対象を縮小して拡大前の倍率に戻される。また、第1表示領域701に表示された表示対象のうち、第2表示領域702以外の部分の大きさが変わらない。したがって、図8(d)から図8(c)に示すように、縮小の前後で第2表示領域702の大きさは変化しない。
【0054】
なお、S407では、ダブルタップ操作のタッチ位置(タッチダウン位置)に関わらず、タブルタップ操作の制御対象を、直前にスクロールした表示領域の表示対象と同一の表示対象としたが、ダブルタップ操作のタッチ位置を考慮してもよい。具体的には、S406の処理の前に、CPU101はダブルタップ操作をしたときのタッチ位置(タッチダウン位置)が第2表示領域702内であるか否かを判定し、処理を分岐することができる。なお、ダブルタップ操作のタッチ位置が第2表示領域702内である場合とは、ダブルタップ操作のタッチ位置のうち1回目と2回目との何れか少なくとも一方のタッチ位置が第2表示領域702内である場合を含めることができる。ただし、1回目と2回目との両方のタッチ位置が第2表示領域702内である場合に、ダブルタップ操作のタッチ位置が第2表示領域702内であるとしてもよい。
ダブルタップ操作のタッチ位置が第2表示領域702内である場合には上述したS407以降の処理を行う。一方、ダブルタップ操作のタッチ位置が第1表示領域701内であって第2表示領域702以外である場合にはS407に進むことなく、S408に進み、CPU101は第1表示領域701の表示対象の全体を拡大または縮小する。
【0055】
S405においてスクロールタイマが起動していない場合にはS410に進む。
S410では、CPU101はダブルタップ操作のタッチ位置を判定する。ダブルタップ操作のタッチ位置が第1表示領域701内であって第2表示領域702以外である場合にはS408に進み、CPU101は第1表示領域701の表示対象の全体を拡大または縮小する。一方、ダブルタップ操作のタッチ位置が第2表示領域702内である場合にはS409に進み、CPU101は第2表示領域702の表示対象を拡大または縮小する。その後、S204に戻る。
【0056】
次に、上述したS310およびS330のマルチタッチ処理について図5のフローチャートを参照して説明する。ここでは、タッチ入力点数が2点以上であるためにS310またはS330に進んだことから、CPU101は2点以上のタッチをピンチ操作として確定する。なお、ピンチ操作は通常2本の指で操作するが、本実施形態では指の本数は区別しないものとする。また、ピンチ操作は2本の指の距離に応じて拡大率を変更する技術を含むが、ここでは単純化するために拡大または縮小する場合について説明する。
【0057】
S501では、CPU101はピンチ操作が行われたときにスクロールタイマが起動中であるか否かを判定する。ここでのスクロールタイマの設定時間は、第3の期間の一例に対応する。本実施形態では第1の期間と第3の期間とは同一時間であるが、異なっていてもよい。スクロールタイマが起動中である場合にはS502に進む。
S502では、CPU101はスクロールタイマを更新する。
S503では、CPU101は直前にスクロールした制御対象を判定する。具体的には、CPU101はメモリ102に記憶されたバックアップ情報を読み出すことでスクロールの制御対象を判定する。制御対象を判定するのは、ピンチ操作の制御対象を、直前にスクロールした表示領域の表示対象と同一の表示対象とするためである。すなわち、ピンチ操作の制御対象を、押圧力やピンチ操作のタッチ位置によらず、直前にスクロールした制御対象とする。制御対象が第1表示領域701の表示対象の場合にはS504に進み、図8(a)、(b)に示すように、CPU101は制御対象を第1表示領域701の表示対象として、第1表示領域701の表示対象の全体を拡大または縮小する。
一方、制御対象が第2表示領域702の表示対象の場合にはS505に進み、図8(c)、(d)に示すように、CPU101は制御対象を第2表示領域702の表示対象として、第2表示領域702の表示対象を拡大または縮小する。
【0058】
S501において、スクロールタイマが起動していない場合にはS506に進む。
S506では、CPU101はピンチ操作のタッチ位置を判定する。ピンチ操作のタッチ位置が第1表示領域701内であって第2表示領域702以外である場合にはS504に進み、CPU101は第1表示領域701の表示対象の全体を拡大または縮小する。一方、ピンチ操作のタッチ位置が第2表示領域702内である場合にはS505に進み、CPU101は第2表示領域702の表示対象を拡大または縮小する。なお、CPU101はピンチ操作の2点間の距離が離れれば拡大、近づけば縮小するように制御する。
S507では、CPU101はタッチ入力点数が2点以上であるか否かを判定する。タッチ入力点数が2点以上である場合にはS501に戻り、処理を繰り返す。一方、タッチ入力点数が2点以上ではない場合には処理を終了し、S325に戻る。
【0059】
なお、S503では、ピンチ操作のタッチ位置(タッチダウン位置)に関わらず、ピンチ操作の制御対象を、直前にスクロールした表示領域の表示対象と同一の表示対象としたが、ピンチ操作のタッチ位置を考慮してもよい。具体的には、S502の処理の前に、CPU101はピンチ操作をしたときのタッチ位置(タッチダウン位置)が第2表示領域702内であるか否かを判定し、処理を分岐することができる。なお、ピンチ操作のタッチ位置が第2表示領域702内である場合とは、ピンチ操作のタッチ位置のうち何れか1点が第2表示領域702内である場合を含めることができる。ただし、ピンチ操作のタッチ位置の全ての点が第2表示領域702内である場合に、ピンチ操作のタッチ位置が第2表示領域702内であるとしてもよい。
ピンチ操作のタッチ位置が第2表示領域702内である場合には上述したS503以降の処理を行う。一方、ピンチ操作のタッチ位置が第1表示領域701内であって第2表示領域702以外である場合にはS503に進むことなく、S504に進み、CPU101は第1表示領域701の表示対象の全体を拡大または縮小する。
【0060】
次に、上述したS307のシングルタップ処理について図6のフローチャートを参照して説明する。ここでは、タップタイマが設定時間を経過してタイムアウトしたことでS307に進んだことから、CPU101はタッチ操作をシングルタップ操作として確定する。
S601では、CPU101はシングルタップ操作が行われたときにスクロールタイマが起動中であるか否かを判定する。スクロールタイマが起動中ではない場合にはS602に進み、スクロールタイマが起動中である場合にはS603に進む。
S602では、CPU101はシングルタップ操作に応じた制御を行う。例えば、シングルタップ操作のタッチ位置にタッチボタンがあれば、CPU101はタッチボタンに対応する機能を実行する。
【0061】
S603では、CPU101はスクロールタイマを停止する。
S604では、CPU101は直前にスクロールした制御対象を判定する。具体的には、CPU101はメモリ102に記憶されたバックアップ情報を読み出すことでスクロールの制御対象を判定する。制御対象が第1表示領域701の表示対象の場合にはS605に進み、制御対象が第2表示領域702の表示対象の場合にはS606に進む。
S605では、CPU101は制御対象が第1表示領域701の表示対象であることをユーザに識別させていた通知を解除する。具体的には、CPU101は第1表示領域701の外枠を通常の線に戻して強調表示を終了する。
S606では、CPU101は制御対象が第2表示領域702の表示対象であることをユーザに識別させていた通知を解除する。具体的には、CPU101は第2表示領域702の外枠を通常の線に戻して強調表示を終了する。
S607では、CPU101はメモリ102に記憶されたバックアップ情報をクリア(消去)し、S308に戻る。
なお、S603からS607までの処理は、スクロール操作において強調表示や連続操作を終了するための処理であり、必要なければ省略してもよく、その他の処理で実現してもよい。
【0062】
以上のように、本実施形態によればCPU101は操作面がタッチされ、所定の押圧力未満でタッチ位置が移動したことに応じて、第2の表示対象の表示位置の移動を伴って第1の表示対象の表示範囲を変更する。一方、CPU101は操作面がタッチされ、所定の押圧力以上でタッチ位置が移動したことに応じて、第1の表示対象のうち第2の表示対象以外の部分を移動することなく、第2の表示対象の表示範囲を変更する。したがって、押圧力に応じて表示範囲を変更する表示対象が切り換えられることから、ユーザは所望する表示領域の表示範囲を容易に変更することができる。
また、CPU101が押圧力に応じて表示範囲を変更した際に、再び操作面がタッチされタッチ位置が移動された場合には、直前に表示範囲を変更した同一の表示対象に対して、表示範囲を変更する。したがって、押圧力やタッチ位置に関わらずに、直前に表示範囲を変更した同一の表示対象に対して表示範囲を変更することができることから、ユーザは押圧力やタッチ位置を気にすることなく所望する表示対象の表示範囲を変更することができる。
【0063】
なお、本実施形態では、タッチムーブにおける押圧力が所定の押圧力未満の場合に第1表示領域701内の表示対象の全体をスクロールし、所定の押圧力以上の場合に第2表示領域702内の表示対象をスクロールしたが、この場合に限られない。例えば、押圧力に応じて切り換える表示対象を逆にしてもよい。具体的には、CPU101はタッチムーブにおける押圧力が所定の押圧力以上の場合に第1表示領域701内の表示対象の全体をスクロールし、所定の押圧力未満の場合に第2表示領域702内の表示対象をスクロールしてもよい。
また、本実施形態のS302、S332、S407、S503またはS604では、直前にスクロールした制御対象を判定するとして説明したが、この場合に限られない。例えば、S302、S332、S407、S503またはS604では、CPU101は以前にスクロールしたときの押圧力に応じて切り換えた(あるいは決定した)制御対象を判定するとしてもよい。
【0064】
また、本実施形態では、CPU101が上述した各種制御を行う場合について説明したが、この場合に限られず、1つのハードウェアが行ってもよく、複数のハードウェアが処理を分担することで装置全体の制御を行ってもよい。
また、本発明をその好適な実施形態に基づいて詳述したが、本発明は上述した特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。更に、上述した実施形態は本発明の一実施形態を示すものにすぎず、上述した実施形態を適宜変更することが可能である。
【0065】
また、上述した実施形態では、本発明を電子機器100に適用した場合について説明したが、この場合に限られず、タッチパネルと、タッチパネルの操作面への押圧力を検出可能な装置であれば適用可能である。すなわち、本発明はパーソナルコンピュータ、PDA、携帯電話端末、携帯型の画像ビューワ、ディスプレイを備えるプリンタ装置などに適用可能である。また、本発明はデジタルフォトフレーム、音楽プレーヤー、ゲーム機、電子ブックリーダ、タブレット端末、スマートフォン、投影装装置、ディスプレイを備える家電装置や車載装置などにも適用可能である。なお、タッチパネルは必ずしもディスプレイ機能を有していなくてもよい。例えば、ディスプレイを備える筐体とキーボードおよび表示機能を有さないタッチパッド(タッチパネル)を備えた筐体とが折り畳み可能なノート型のPCにも適用可能である。タッチパッドの操作面に対する押圧力を検出可能(すなわち押し込み可能なタッチパッドを有する)であれば、タッチパッドに対するタッチ操作を、上述の実施形態のディスプレイ105(タッチパネル112a)に対するタッチ操作と同様に扱って適用実施できる。
【0066】
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記録媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【符号の説明】
【0067】
100:電子機器 101:CPU 102:メモリ 103:不揮発性メモリ 104:画像処理部 105:ディスプレイ 106:記録媒体I/F 107:記録媒体 108:外部I/F 109:通信I/F 111:システムタイマ 112:操作部 112a:タッチパネル 113:圧力検出部
図1
図2
図3
図4
図5
図6
図7
図8