以下、図面を参照しつつ、電子機器の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。なお、本開示において、電子機器の代表例は、電子辞書である。ただし、「電子機器」は、パーソナルコンピュータ、携帯型電話機、電子ノート、PDA(Personal Digital Assistant)などのような、タッチパネルを有する他の情報端末としても実現可能である。
[第1の実施の形態]
<1.開示の概要>
図1および図2を参照して、第1の実施の形態の電子機器に関する開示の概要を説明する。図1では、電子機器のタッチパネルに表示される画面の一例として、画面500が示され、また、タッチパネルにタッチするためのツールとして、スタイラス900が示されている。ユーザは、スタイラス900の先端にある尖った部分で、タッチパネルをタッチする。
ユーザは、スタイラス900を、タッチパネルにタッチさせたまま移動させることができる。図1では、破線で示されたスタイラス900は、移動前の状態を示す。また、実線で示されたスタイラス900は、移動後の状態を示す。矢印A1は、スタイラス900の移動の方向を示す。本明細書では、スタイラス900をタッチパネルにタッチさせたまま移動させることを、「スタイラス900をスライドさせる」ともいう。
電子機器は、スタイラス900がタッチパネル上でスライドされると、当該タッチパネルにメニュー600を表示する。メニュー600は、電子機器によって実現される制御を特定する1つ以上の項目を含む。図1に示された例では、メニュー600は、6つの項目(「HOME」「戻る」「履歴」「単語帳」「2画面検索」および「文字サイズ」)を含む。「HOME」は、実行中のアプリケーションのホーム画面を表示する。「戻る」は、表示される画面を1つ前の画面に戻す。「履歴」は、タッチパネルに検索の履歴を表示させる。「単語帳」は、単語帳として電子機器において格納されている情報を表示する。「2画面検索」は、複数の単語についての検索画面をタッチパネルに同時に表示する。「文字サイズ」は、タッチパネルにおいて表示される文字を変更する。
タッチパネルにおいてメニュー600が表示される位置は、スタイラス900のスライド(タッチパネル上の移動)が開始されてから特定の時間が経過したときのスタイラス900のタッチ位置に基づく。図1に示された例では、メニュー600が表示される位置は、スタイラス900の先端が項目「履歴」を表わす文字の右上と重なるように、特定される。
なお、メニュー600では、6つの項目のうち、その時点で指定されている項目が他の項目と異なる態様で表示される。図1に示された例では、項目「履歴」が指定されている。
<2.電子機器のハードウェア構成>
次に、電子機器のハードウェア構成を説明する。図2は、電子機器(電子機器100)のハードウェア構成を表わすブロック図である。
図2に示されるように、電子機器100は、主たる構成要素として、CPU(Central Processing Unit)110と、タッチパネル120と、メモリ130と、メモリインターフェイス140と、通信インターフェイス150と、時計160とを含む。
タッチパネル120は、抵抗膜方式、表面弾性波方式、赤外線方式、電磁誘導方式、静電容量方式などのいずれのタイプであってもよい。タッチパネル120は、光センサ液晶を含んでもよい。タッチパネル120は、所定時間毎に外部の物体によるタッチパネル120へのタッチ操作を検知して、タッチ座標(タッチ位置)をCPU110に入力する。換言すれば、CPU110は、タッチパネル120から順次タッチ座標を取得する。
メモリ130は、各種のRAM(Random Access Memory)や、ROM(Read-Only Memory)や、ハードディスクなどによって実現される。メモリ130は、CPU110によって実行されるプログラム、および、当該プログラムの実行に利用されるデータを記憶する。プログラムに利用されるデータは、たとえば、単語と説明文とが対応付けられた辞書データベース、および、タッチパネル120を介して入力されたタッチ座標の時系列データである。
メモリインターフェイス140は、外部の記憶媒体141からデータを読み出す。CPU110は、メモリインターフェイス140を介して外部の記憶媒体141に格納されているデータを読み出して、当該データをメモリ130に格納する。また、CPU110は、メモリ130からデータを読み出して、メモリインターフェイス140を介して当該データを外部の記憶媒体141に格納する。CPU110が実行するプログラムは、記憶媒体141に格納されていてもよい。また、CPU110が実行するプログラムは、ネットワークを介してダウンロードされて、メモリ130に格納されてもよい。
記憶媒体141としては、CD−ROM(Compact Disc - Read Only Memory)、DVD−ROM(Digital Versatile Disk - Read Only Memory)、USB(Universal Serial Bus)メモリ、メモリカード、FD(Flexible Disk)、ハードディスク、磁気テープ、カセットテープ、MO(Magnetic Optical Disc)、MD(Mini Disc)、IC(Integrated Circuit)カード(メモリカードを除く)、光カード、マスクROM、EPROM、EEPROM(Electronically Erasable Programmable Read-Only Memory)などの、不揮発的にプログラムを格納する媒体が挙げられる。
通信インターフェイス150は、アンテナやコネクタによって実現される。通信インターフェイス150は、有線通信あるいは無線通信によって他の装置との間でデータをやり取りする。CPU110は、通信インターフェイス150を介して、他の装置からプログラムや画像データやテキストデータなどを受信し、また、他の装置に画像データやテキストデータを送信する。
時計160は、CPU110からの指令に基づいて、時刻あるいは期間を計測する。CPU110は、時計160からの時刻に基づいて、タッチ座標に対応する時刻を時系列としてメモリ130に記憶する。
CPU110は、メモリ130あるいは記憶媒体141に記憶されているプログラムを実行することによって、電子機器100の各部を制御する。すなわち、CPU110は、メモリ130あるいは記憶媒体141に記憶されているプログラムを実行することによって、図6に示された処理を実現する。
<3.電子機器の機能構成>
次に、電子機器の機能的な構成を説明する。図3は、電子機器の部分的な機能構成を説明するための図である。
図3に示されるように、CPU110は、少なくとも3つの機能(タッチ位置検出部111、表示制御部112、および、アプリケーション実行部113)を有する。タッチ位置検出部111は、タッチパネル120からのタッチ座標(タッチ位置)の入力を受け付ける。表示制御部112は、タッチパネル120に表示画面のデータを送信する。アプリケーション実行部113は、タッチパネル120から入力されたタッチ位置に基づいて、タッチパネル120に表示させる画面のデータを生成する。アプリケーション実行部113は、電子機器を辞書として機能させるためのアプリケーションを実行するCPU110によって実現される。
タッチ位置検出部111および表示制御部112は、たとえばタッチパネル120のドライバソフトウェアを実行するCPU110によって実現される。より具体的には、タッチ位置検出部111は、当該ドライバソフトウェアにおける、タッチパネル120から入力されたタッチ位置を特定するモジュールを実行するCPU110によって実現される。表示制御部112は、当該ドライバソフトウェアにおける、タッチパネル120の表示を制御するモジュールを実行するCPU110によって実現される。
<4.処理の内容>
図4および図5を参照して、電子機器における、メニューの表示に関する処理の内容を説明する。図4および図5は、電子機器における、スタイラスによる操作に応じたメニューの表示態様を説明するための図である。
第1の実施の形態の電子機器は、ユーザがタッチパネル120上でスタイラス900をスライドさせると、タッチパネル120上にメニュー(図1のメニュー600)を表示させる。また、電子機器は、ユーザがタッチパネル120上でさらにスタイラス900をスライドさせると、スタイラス900によるタッチ位置の移動に応じてメニューの表示位置を移動させる。また、電子機器は、ユーザから、メニュー内の項目を指定する操作および指定された項目を選択する操作を受け付ける。電子機器は、選択された項目によって特定される制御を実行する。本明細書では、電子機器は、その動作モードとして、2つのモード(「追従モード」および「選択モード」)を含む。
「追従モード」は、スタイラス900のタッチ位置に応じて、メニュー600の表示位置を変更するモードである。より具体的には、スタイラス900のタッチ位置が、スライドにより変更されると、図4に示されるように変更される。図4において、破線で示されたスタイラス900は、図1において実線で示されたスタイラス900の位置であって、変更前のスタイラス900の位置を示す。図4において、実線で示されたスタイラス900は、変更後のスタイラス900の位置を示す。また、矢印A4は、スタイラス900の移動方向を示す。メニュー600は、項目「履歴」の中の特定の位置がスタイラス900の先端に重なるように、表示される。つまり、図1および図4の双方において、移動後のスタイラス900の先端とメニュー600との関係は一致している。
「選択モード」は、スタイラス900のタッチ位置に応じて、メニュー600内の項目を指定するモードである。より具体的には、メニュー600内でのスタイラス900のタッチ位置が変更されると、図5に示されるように、指定される項目が変更される。図5では、項目「文字サイズ」が指定されている。なお、図5において、破線はスタイラス900の変更前の位置を示し、矢印A6は、スタイラス900の移動方向を示す。
第1の実施の形態の電子機器100において、CPU110は、選択モード中にメニュー600内のタッチ位置に表示されている項目を指定する。そして、CPU110は、選択モード中に、指定された項目を選択する操作(たとえば、タッチパネル120上のタッチの解除)が実行されると、当該指定された項目に対応する制御を実行する。より具体的には、CPU110は、図5に示された状態でスタイラス900がタッチパネル120から離れると、項目「文字サイズ」に対応する制御、つまり、タッチパネル120において表示される文字のサイズを変更する制御を実行する。
<5.処理の流れ>
次に、電子機器100におけるメニュー600の表示に関してCPU110が実行する処理の流れを説明する。図6は、電子機器100において、メニューの表示に関して実行される処理のフローチャートである。
なお、図6を参照して説明される処理では、モードの変更についての条件、メニューの消去、ならびに、メニュー内の項目の指定および選択についての条件の一例として、以下の1)〜5)に示されるような操作が割り当てられている。
1)追従モードから選択モードへ、モードを変更するための操作
タッチパネルに表示されたメニューの上で、タッチ位置が一定時間以上移動しない。
2)選択モードから追従モードへ、モードを変更するための操作
タッチ位置が、メニューの外へ移動する。
3)メニューの表示を消去するための操作
タッチパネルの表示領域内であってメニュー外において、シングルタッチされる。
4)メニュー内の項目を指定するための操作
(選択モードにおいて)メニュー内でタッチ位置が移動される。
5)メニュー内の項目を選択するための操作
(選択モードにおいて)メニュー内でタッチが解除される。
図6を参照して、ステップS10で、CPU110は、たとえば動作フラグを「追従」に設定することにより、電子機器100の動作モードを追従モードに設定する。そして、CPU110は、ステップS20へ制御を進める。
ステップS20で、CPU110は、タッチパネル120からの検出出力に基づいて、タッチパネル120においてタッチ操作が検出されたか否かを判断する。CPU110は、タッチ操作が検出されるまでステップS20で制御を留め(ステップS20でNO)、タッチ操作が検出されたと判断すると(ステップS20でYES)、ステップS30へ制御を進める。
ステップS30で、CPU110は、ステップS20でタッチパネル120上でのタッチが検出されてから所定時間(たとえば、1秒間)が経過したか否かを判断する。そして、CPU110は、当該所定時間が経過したと判断すると(ステップS30でYES)、ステップS60へ制御を進める。一方、CPU110は、まだ当該所定時間が経過していないと判断すると(ステップS30でNO)、ステップS40へ制御を進める。
ステップS40で、CPU110は、タッチパネル120からの検出出力に基づいて、タッチパネル120におけるタッチが解除された(スタイラス900がタッチパネル120から離れた)か否かを判断する。そして、CPU110は、まだタッチパネル120におけるタッチが解除されていないと判断すると(ステップS40でNO)、ステップS30へ制御を戻す。一方、CPU110は、タッチパネル120におけるタッチが解除されたと判断すると(ステップS40でYES)、ステップS50へ制御を進める。
ステップS50では、CPU110は、タッチされた位置に応じた制御を実行した後、ステップS10へ制御を戻す。なお、ステップS50が実行される時点では、まだ、タッチパネル120にはメニュー600が表示されていない。
一方、ステップS60で、CPU110は、タッチパネル120におけるタッチ位置の移動の距離が、予め定められた距離α以上となったか否かを判断する。CPU110は、タッチ位置の移動距離が距離α以上となったと判断するまでステップS60に制御を留め(ステップS60でNO)、そして、距離α以上となったと判断すると(ステップS60でYES)、ステップS70へ制御を進める。
なお、ステップS60における判断は、タッチ位置の移動について、「同じ方向での移動」という条件が追加されてもよい。この場合、CPU110は、タッチ位置が、左方向にαの半分の距離だけ移動した後、右方向にαの半分の距離だけ移動した場合には、タッチ位置はまだ距離α以上移動していない、と判断する。つまり、この場合、タッチ位置が、左方向にαの半分の距離だけ移動した後、右方向にα以上の距離を移動したことを条件として、ステップS70へ制御を進める。
ステップS70で、CPU110は、図1等に示されたように、メニュー600をタッチパネル120に表示させる。メニュー600の表示位置は、スタイラス900によるタッチ位置に基づいて決定される。そして、制御はステップS80へ進められる。
ステップS80で、CPU110は、追従モードから選択モードへモードを変更するための条件が成立したか否かを判断する。当該条件は、たとえば、上記した「1)追従モードから選択モードへ、モードを変更するための操作」が実行されることによって成立する。そして、CPU110は、当該条件が成立したと判断するまでステップS80に制御を留め(ステップS80でNO)、当該条件が成立したと判断すると(ステップS80でYES)、ステップS90へ制御を進める。なお、CPU110は、ステップS90へ制御を進めるまで、図1および図4を参照して説明されたように、タッチ位置の変更に応じてメニュー600の表示位置を変更する。
ステップS90で、CPU110は、たとえば動作フラグを「選択」に設定することにより、電子機器100の動作モードを追従モードから選択モードへと変更する。そして、CPU110は、ステップS100へ制御を進める。
ステップS100で、CPU110は、選択モードから追従モードへモードを変更するための条件が成立したか否かを判断する。当該条件は、たとえば、上記した「2)選択モードから追従モードへ、モードを変更するための操作」が実行されることによって成立する。そして、CPU110は、当該条件が成立したと判断するまでステップS100に制御を留め(ステップS100でNO)、当該条件が成立したと判断すると(ステップS100でYES)、ステップS110へ制御を進める。なお、CPU110は、ステップS110へ制御を進めるまで、図4および図5を参照して説明されたように、タッチ位置の変更に応じてメニュー600内で指定される項目を変更する。
ステップS110で、CPU110は、たとえば動作フラグを「追従」に設定することにより、電子機器100の動作モードを選択モードから追従モードへと変更する。そして、CPU110は、ステップS80へ制御を戻す。
図6に示された処理において、ステップS70の制御が実行された後、CPU110は、上記「3)メニューの表示を消去するための操作」が実行されると、タッチパネル120内のメニュー600の表示を消去させて、ステップS10へ制御を戻す。また、CPU110は、動作モードが選択モードであるときに、上記「5)メニュー内の項目を選択するための操作」が実行されると、選択された項目に応じた制御を実行する。
<6.第1の実施の形態のまとめ>
以上説明された図6の処理では、タッチパネル120上でタッチが開始された後、タッチパネル120でのタッチが継続した場合、タッチの開始から所定の時間経過したときのタッチ位置である第1のタッチ位置に応じた位置に、メニューを表示させる。
図6の処理では、メニューの表示位置は、タッチ位置に追従して変更された。なお、メニューの表示位置は、タッチ位置に追従して変更されなくとも良い。つまり、タッチ開始から所定時間経過後のタッチ位置に対応する位置に表示された後、メニューの表示位置は変更されなくてもよい。
また、図6の処理では、タッチ位置が距離α以上移動したことを条件として、タッチパネル120にメニュー600がされる(ステップS60でYES)。図7は、ステップS60において判断された条件を説明するための図である。図7には、タッチパネル120における表示内容が、画面500A,500B,500Cとして段階的に示される。なお、本明細書では、特に説明がない限り、画面500A等の画面の縦および横の少なくとも一方の寸法は、タッチパネル120の縦および横の少なくとも一方の寸法と一致する。
画面500Aには、2つのスタイラス900が示されている。1つは、破線で表され、タッチパネル120へのタッチ開始時のスタイラス900の位置を示す。もう1つは、実線で表され、移動後のスタイラス900の位置を示す。矢印A2は、スタイラス900の移動方向を示す。第1の実施の形態の電子機器では、スタイラス900の一定方向(たとえば、矢印A2で示される方向)での移動距離が距離α以上となったことを条件として、タッチパネル120にメニュー600が表示される。
画面500Bは、画面500Aとして示された状態から、さらに、スタイラス900が矢印A2で示された方向に距離βだけ移動された状態を示す。このようにスタイラス900のタッチ位置が変更されると、メニュー600の表示位置は、スタイラス900の移動に追従して、変更される。つまり、メニュー600の表示位置は、実線で示された位置へと変更される。なお、破線で示されたメニュー600は、変更前の表示位置(つまり、画面500Aにおいて実線で示された位置)を示す。
画面500Cは、画面500Bにおいて示された状態から、さらに、タッチ位置が矢印A3に沿って移動したときの、メニュー600の表示位置を示す。画面500Cにおいて、破線は、変更前のスタイラス900とメニュー600の位置を示す。矢印A3の方向は、矢印A2の方向と異なる。メニュー600は、一旦タッチパネル120上に表示されると、スタイラス900のタッチ位置の移動方向が変更されても、タッチ位置に追従するように変更される。
図7を参照して説明されたように、第1の実施の形態では、タッチパネル120上で、少なくとも距離α以上スタイラス900がスライドされることを条件として、メニュー600が表示される。これにより、ユーザがメニュー600を表示させることを意図してスタイラス900をスライドさせたときにのみ、メニュー600が表示され得る。したがって、ユーザが意図しないときにメニュー600が表示される事態を回避できる。なお、このような距離αを閾値として用いる制御は、電子機器におけるメニューの表示の開始に必須ではない。
また、第1の実施の形態では、タッチパネル120におけるメニューの表示位置は、スタイラス900のタッチ位置に追従して変化し得る。このとき、メニューは、タッチ位置が当該メニューの特定の位置(たとえば、項目「履歴」を表わす文字の右上)と重なるように、タッチ位置に追従する。ただし、メニューの全体がタッチパネル120に表示されるように、タッチ位置とメニューの相対位置は変更され得る。図8は、タッチ位置とメニューの相対位置の例外を説明するための図である。
図8は、スタイラス900のタッチ位置が、矢印A5に従って、破線で示された位置から実線で示された位置へと変更された状態を示す。図8において、スタイラス900が実線で示された位置までスライドされたとき、タッチ位置とメニューとの相対的な位置関係が維持されると、メニューの左端を含む一部がタッチパネル120内に表示されなくなる。そこで、電子機器のCPU110は、メニューの全体をタッチパネル120に表示するために、スタイラス900のタッチ位置がタッチパネル120の端部に近づいた場合には、タッチ位置とメニューとの相対的な位置関係を、図8に示されるように変更する。
なお、図6の処理では、電子機器の動作モードは、追従モードと選択モードとを含む。図9は、電子機器における追従モードと選択モードとを説明するための図である。図9では、メニュー600とスタイラス900との組み合わせについて、3つの状態が示されている。メニュー600Aは、メニュー600の表示が開始された時点での、メニュー600とスタイラス900との位置関係を示す。選択モードでは、メニュー600A内でスタイラス900がスライドすると、メニュー600の表示態様は、メニュー600Aからメニュー600Bへと切り替えられる。メニュー600Bでは、項目「HOME」が指定されている。
その後、電子機器の動作モードが選択モードから追従モードへと切り替えられると、メニュー600の表示位置は、スタイラス900のタッチ位置に追従するように変更される。メニュー600B上のスタイラス900が矢印AUで示されるように上方に移動すると、メニュー600Cとして示されるように、メニュー600の表示も上方に移動する。
なお、第1の実施の形態の電子機器において、モードの変更等のための操作は、上記1)〜5)として示されたものに限定されない。
選択モードから追従モードへ動作モードが変更される操作の一例は、上記したように、タッチ位置がメニューの外へ移動する操作である。より具体的には、CPU110は、たとえば、タッチ位置のスライド方向がメニュー600の内側から外側に向かう方向であり、かつ、タッチ位置がメニュー600の端部に位置したことを条件として、選択モードから追従モードへ動作モードを変更する。
選択モードから追従モードへの動作モードの変更のための操作のさらに他の例は、「タッチ位置がメニューの外へ移動し、さらに、メニュー外で一定時間以上タッチが継続される。」という操作である。
選択モードから追従モードへの動作モードの変更のための操作のさらに他の例は、「タッチパネルに表示されたメニューの上で、タッチ位置が一定時間以上移動しない」という操作である。
また、メニューの表示を消去するための操作の他の例は、メニュー600の内側から外側へスタイラス900をスライドさせる操作である。この場合、選択モードから追従モードへの動作モードの変更のための操作として、タッチが継続されたままタッチ位置がメニュー600の外枠周辺で一定時間以上固定する操作が採用されてもよい。
また、電子機器において、CPU110は、動作モードの切替を報知してもよい。当該報知の一例は、たとえば、メニューの外枠の色の変更である。より具体的には、たとえば、CPU110は、選択モードではメニュー600の外枠を赤色で表示し、追従モードではメニュー600の外枠を黒色で表示する。
報知の他の例として、CPU110は、選択モードと追従モードにおいて、互いに異なる線の種類(実線、破線、点線、等)で、メニュー600の外枠を表示してもよい。
また、報知のさらに他の例として、CPU110は、メニュー600自体の表示態様を変更しても良い。たとえば、CPU110は、メニュー600を、選択モードでは二次元的に表示し、追従モードでは三次元的に表示する。
また、報知のさらに他の例として、CPU110は、動作モードを切り替えるときに音声を出力してもよい。
[第2の実施の形態]
第2の実施の形態の電子機器のハードウェア構成および機能構成は、第1の実施の形態と同様とすることができる。
第2の実施の形態では、電子機器のCPU110は、スタイラス900のタッチ位置に応じて、メニュー600内で、項目のレイアウトを変更する。図10〜図13は、タッチパネル120において表示されるメニューについての、レイアウトの例を説明するための図である。
図10では、画面500内に、オブジェクト510が表示されている。オブジェクト510は、画面500に表示されるコンテンツに重ねられて表示され、「Sジャンプ」「全文検索」等の複数の項目を含む。CPU110は、オブジェクト510と重ならないようにレイアウトを変更されたメニュー610を表示する。より具体的には、図1等のメニュー600では6個の項目が上から下に一方向に並べられているのに対し、メニュー610では、5個の項目が上から下に一方向に並べられ、さらに、1個の項目(「文字サイズ」)は、当該5個の項目の右側に配置されている。
図11では、領域590として、タッチパネル120内の表示領域が示されている。また、図11では、スタイラス900の9個のタッチ位置としてスタイラス901〜909が示されている。さらに、図11では、スタイラス901〜909として示された9個のタッチ位置のそれぞれに対応して表示される9個のメニュー600(メニュー901〜909)が示されている。
まず、スタイラス901で示されるように、タッチ位置が領域590の真ん中であれば、メニュー901として示されるように、6個の項目は、図1等と同様に一方向に並べられて配置される。
スタイラス905またはスタイラス908で示されるように、タッチ位置が領域590の右端または左端に近づくと、メニュー605またはメニュー608で示されるように、メニュー内の項目の配列は変更されないが、タッチ位置とメニューとの相対的な位置関係が変更される。
そして、スタイラス902またはスタイラス903で示されるように、タッチ位置が領域590の上端または下端に近づくと、メニュー602またはメニュー603で示されるように、メニューの上下方向の寸法が短くなるように、項目が縦方向に2列で配列される。
さらに、スタイラス904、スタイラス906、スタイラス907、または、スタイラス909で示されるように、タッチ位置が領域590の角に近づくと、メニューは上下方向の寸法が短くなるように、項目が縦2列で配列され、さらに、メニュー内の全ての項目が領域590内に表示されるように、スタイラス900とメニューとの相対的な位置関係が変更される。
なお、メニュー600における6個の項目の配置が縦1列になるか縦2列になるかは、スタイラス900によるタッチ位置の上下方向の位置に応じて決定されてもよい。より具体的には、図12に示されるように、領域590において、タッチ位置が線501よりも上方に位置することを条件として、CPU110は、メニュー611またはメニュー612として示されるように、メニュー600内の6個の項目の2列で配置する。また、領域590において、タッチ位置が線502よりも下方に位置することを条件として、CPU110は、メニュー613またはメニュー614として示されるように、メニュー600内の6個の項目の2列で配置する。
さらには、CPU110は、タッチ位置が領域590の上端または下端の近傍に位置するときには、図13に示されるように、メニュー600内の6個の項目を縦3列で配置してもよい。図13では、タッチ位置がスタイラス921およびスタイラス922で示されている。また、スタイラス921およびスタイラス922のそれぞれに対応するメニュー600表示位置が、メニュー621およびメニュー622で示されている。
[第3の実施の形態]
第3の実施の形態の電子機器のハードウェア構成および機能構成は、第1の実施の形態と同様とすることができる。
第3の実施の形態では、メニュー600の表示開始時に、メニュー600がスタイラス900のスライド動作に応じて段階的に表示される。図14は、第3の実施の形態における、メニューの段階的な表示を説明するための図である。
図14には、3つの状態(A)〜(C)が示されている。図14の例では、メニュー600の表示開始時、スタイラス900は、左から右へスライドする。まず状態(A)で示されるように、メニュー600の表示開始時は、メニュー600の右端のみが表示される。状態(A)から、スタイラス900が左へスライドすると、状態(B)で示されるように、メニュー600の表示される部分が増加する。さらにスタイラス900が左へスライドすると、メニュー600がすべて表示されるようになる。
このように段階的にメニュー600を表示することにより、メニュー600が表示されることに対するユーザの注意を高めることができる。
なお、第3の実施の形態において、CPU110は、メニュー600の表示開始時とは反対の向きにスタイラス900がスライドされることに応じて、メニュー600の表示を段階的に消去してもよい。
つまり、図14において状態(C)としてメニュー600がすべて表示された後、スタイラス900が右へとスライドされると、状態(B)、状態(A)を順番に経て、メニュー600の表示を段階的に消去してもよい。
[第4の実施の形態]
第4の実施の形態の電子機器のハードウェア構成および機能構成は、第1の実施の形態と同様とすることができる。図15および図16は、第4の実施の形態における、メニュー600とスタイラス900の相対位置を説明するための図である。第4の実施の形態では、タッチ位置が、メニュー600の外であってメニュー600の左側に位置するように、メニュー600の表示位置がタッチ位置に追従する。
なお、第4の実施の形態においても、タッチ位置がタッチパネル120の表示領域の上端または下端に近づいたときには、メニュー600のすべての項目がタッチパネル120内に表示されるように、図16に示されるように、タッチ位置とメニュー600との相対位置が変更され得る。図16には、スタイラス931〜スタイラス936として、スタイラス900の6個のタッチ位置が示されている。そして、メニュー631〜636として、スタイラス931〜スタイラス936によって示された6個のタッチ位置のそれぞれに対応して表示されるメニュー600の表示位置が示されている。
より具体的には、図16に示されるように、スタイラス931で示されるタッチ位置が、矢印A11で示されるように、メニュー632まで上方に移動すると、メニュー600の表示位置はメニュー631からメニュー632へと変更される。さらに、タッチ位置が、矢印A12で示されるように、メニュー633まで上方に移動すると、メニュー600の表示位置はメニュー632からメニュー633へと変更される。
また、スタイラス934で示されるタッチ位置が、矢印A13で示されるように、メニュー635まで上方に移動すると、メニュー600の表示位置はメニュー634からメニュー635へと変更される。さらに、タッチ位置が、矢印A14で示されるように、メニュー636まで上方に移動すると、メニュー600の表示位置はメニュー635からメニュー636へと変更される。
[第5の実施の形態]
第5の実施の形態の電子機器のハードウェア構成および機能構成は、第1の実施の形態と同様とすることができる。
第5の実施の形態では、電子機器のCPU110は、ユーザがスタイラス900をタッチパネル120上でスライドさせたとき、スライドの方向に応じて、実行する処理の種類を決定する。実行する処理は、メニュー600の表示、画面スクロール、および、画面上に表示されているテキストの選択を含む。図17〜図19は、第5の実施の形態の電子機器における、スライド方向と実行される処理の種類との対応関係の例を示す図である。
図17に示された例では、CPU110は、矢印A20で示されるように、スライドの方向が上向きまたは下向きであれば、スタイラス900のスライドに応じて、タッチパネル120に表示される画面をスクロールする。また、スライドの方向が右向きであれば、CPU110は、タッチパネル120に表示されているテキストのうち、スライドされた範囲のテキストを選択する。そして、スライドの方向が左向きであれば、CPU110は、スタイラス900のタッチ位置に応じた位置にメニューを表示する。
図18に示された例では、CPU110は、矢印A21で示されるように、スライドの方向が上下左右のいずれであっても、スタイラス900のタッチ位置に応じた位置にメニューを表示する。
図19に示された例では、CPU110は、矢印A23で示されるように、スライドの方向が上向きまたは下向きであれば、スタイラス900のスライドに応じて、タッチパネル120に表示される画面をスクロールする。また、スライドの方向が右向きまたは左向きであれば、CPU110は、スタイラス900のタッチ位置に応じた位置にメニューを表示する。
第5の実施の形態において、CPU110は、タッチパネル120に表示されているコンテンツに応じて、スライドの方向に対応する処理を図17〜図19のいずれかから選択してもよい。たとえば、CPU110は、タッチパネル120に表示されているコンテンツが、図17に示されるようにテキストを含む場合には、図17に示された態様で、スライドの方向と実行する処理の種類とを関連付ける。
今回開示された実施の形態およびその変形例はすべての点で例示であって制限的なものではないと考えられるべきである。本開示の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。