以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
<電子機器100の全体構成>
まず、本実施の形態に係る電子機器100の全体構成について説明する。電子機器100は、電子辞書、PDA(Personal Digital Assistant)、パーソナルコンピュータ、携帯型電話機などのような、タッチパネルを有する携帯型デバイスによって実現される。
図1は、本実施の形態に係る電子機器を示す第1の概略図である。より詳細には、図1(A)は、ひらがな入力モードにおいて、ユーザが第1の操作キー(以下、「あ」行ボタンともいう。)にタッチした状態の電子機器100を示すイメージ図である。図1(B)は、ひらがな入力モードにおいて、ユーザが第2の操作キー(以下、「お」ボタンともいう。)にタッチした状態の電子機器100を示すイメージ図である。図1(C)は、ひらがな入力モードにおいて、ユーザが他の第1の操作キー(以下、「た」行ボタンともいう。)にタッチした状態の電子機器100を示すイメージ図である。図1(D)は、ひらがな入力モードにおいて、ユーザが他の第2の操作キー(以下、「と」ボタンともいう。)にタッチした電子機器100を示すイメージ図である。
図1を参照して、電子機器100は、タッチパネル120を含む。タッチパネル120は、タッチパネル120に対するタッチ操作を受け付けて、タッチ位置に基づいてユーザから様々な命令を受け付ける。タッチパネル120は、ユーザからの命令に基づいて、文字(テキスト)や画像などを表示する。なお、本実施の形態に係る電子機器100は、タッチパネル120を介してユーザからの命令を受け付けるものであるが、電子機器はタッチパネル120とは別にハードウェアキーボードやその他のスイッチを有していてもよい。
<電子機器100の動作概要>
次に、図1を参照して、本実施の形態に係る電子機器100の動作概要について説明する。
図1(A)を参照して、電子機器100は、タッチパネル120に、既に入力された文字(テキスト)や、次に文字が入力されるべき位置(文字入力位置)を示すためのカーソル121を表示させる。電子機器100は、タッチパネル120に、入力モードを切り替えるための切替ボタン122や、かなを漢字に変換するための変換ボタン123を表示させる。
直前に入力された文字列が選択されている状態において変換ボタン123が押下されると、電子機器100は当該文字列を漢字に変換した上で当該漢字をタッチパネル120に表示させる。一方、文字列が選択されていない状態において変換ボタン123が押下されると、電子機器100は「かな漢字変換モード」と「かな漢字非変換モード」とを切り替える。
電子機器100は、ひらがな入力モードにおいて、タッチパネル120に複数の第1の操作キーを第1のソフトウェアキーボード120A(第1の画像)として表示させる。複数の第1の操作キーは、「あ」行ボタン、「か」行ボタン、「さ」行ボタン、「た」行ボタン、「な」行ボタン、「は」行ボタン、「ま」行ボタン、「や」行ボタン、「ら」行ボタン、「わ」行ボタン、「?」行ボタンを含む。本実施の形態に係る電子機器100は、第1のソフトウェアキーボード120Aに対するスライド操作を受け付けることによって、現在の(最新の)タッチ位置に対応する第1の操作キーの入力を受け付ける。たとえば、スライド操作とは、ユーザが指を第1のソフトウェアキーボード120A上でスライドさせる動作をいう。
ユーザが第1のソフトウェアキーボード120Aのうちのいずれかの第1の操作キーにタッチすると、電子機器100は、第1の操作キーの選択命令(第1の命令)を受け付ける。電子機器100は、タッチパネル120に、タッチされた第1の操作キーに対応する複数の第2の操作キーを第2のソフトウェアキーボード120B(第2の画像)として表示させる。
たとえば、「あ」行ボタンに対応する複数の第2の操作キーは、「あ」ボタン、「い」ボタン、「う」ボタン、「え」ボタン、「お」ボタン、「ぁ」ボタン、「ぃ」ボタン、「ぅ」ボタン、「ぇ」ボタン、「ぉ」ボタンを含む。具体的には、ユーザが「あ」行ボタンにタッチすると、電子機器100は、タッチパネル120の第1のソフトウェアキーボード120Aの近傍に「あ」ボタン、「い」ボタン、「う」ボタン、「え」ボタン、「お」ボタン、「ぁ」ボタン、「ぃ」ボタン、「ぅ」ボタン、「ぇ」ボタン、「ぉ」ボタンを含む第2のソフトウェアキーボード120Bを表示する(以下、第1の状態という。)。
第1の状態において、図1(B)に示すように、ユーザが指やスタイラスペンなどを複数の第2の操作キーのうちのいずれかまでスライドさせると、電子機器100は当該スライド後のタッチ位置に対応する第2の操作キーの選択命令(第2の命令)を受け付ける。たとえば、指が「あ」行ボタンから「お」ボタンへとスライドすると、電子機器100は「お」ボタンの選択命令を受け付ける。本実施の形態においては、電子機器100は、タッチ位置が検出されなくなったときに第2の命令の入力を確定する。たとえば、ユーザが指をタッチパネル120の「お」ボタンの表示領域から持ち上げたときに、電子機器100は「お」をタッチパネル120に表示させる。
第1の状態において、図1(C)に示すように、ユーザが指やスタイラスペンなどを他の第1の操作キーまでスライドさせると、電子機器100は当該スライド後のタッチ位置に対応する第1の操作キーの選択命令(第1の命令)を受け付ける。電子機器100は、タッチパネル120の第1のソフトウェアキーボード120Aの近傍に、新たにタッチされた第1の操作キーに対応する複数の第2の操作キーを第2のソフトウェアキーボード120Bとして表示させる。
たとえば、「た」行ボタンに対応する複数の第2の操作キーは、「た」ボタン、「ち」ボタン、「つ」ボタン、「て」ボタン、「と」ボタン、「だ」ボタン、「ぢ」ボタン、「づ」ボタン、「で」ボタン、「ど」ボタンを含む。具体的には、指が「あ」行ボタンから「た」行ボタンへとスライドすると、電子機器100は「た」ボタン、「ち」ボタン、「つ」ボタン、「て」ボタン、「と」ボタン、「だ」ボタン、「ぢ」ボタン、「づ」ボタン、「で」ボタン、「ど」ボタンを含む第2のソフトウェアキーボード120Bをタッチパネル120に表示させる(以下、第2の状態という)。
第2の状態において、図1(D)に示すように、ユーザが指やスタイラスペンなどを複数の第2の操作キーのうちのいずれかまでスライドさせると、電子機器100は当該スライド後のタッチ位置に対応する第2の操作キーの選択命令(第2の命令)を受け付ける。たとえば、指が「た」行ボタンから「と」ボタンへとスライドすると、電子機器100は「と」ボタンの選択命令を受け付ける。本実施の形態においては、電子機器100は、タッチ位置が検出されなくなったときに第2の命令の入力を確定する。たとえば、ユーザが指をタッチパネル120の「と」ボタンの表示領域から持ち上げたときに、電子機器100は「と」をタッチパネル120に表示させる。
このように、本実施の形態に係る電子機器100は、タッチパネル120に第1の操作キーと選択された第1の操作キーに対応する第2の操作キーを表示させるため、操作キーが占める面積(操作キーの表示領域)が小さい。すなわち、本実施の形態に係る電子機器100は、タッチパネル120の表示可能領域を有効に利用することができ、操作キー以外の文字や画像の視認性を向上させることができる。
さらに、本実施の形態に係る電子機器100は、指やスタイラスペン(タッチ位置)のスライド操作が所定の条件を満たす場合に、新たに選択された第1の操作キーに対応する第2の操作キーを表示する。すなわち、本実施の形態に係る電子機器100は、スライド操作が所定の条件を満たす場合に、表示される第2の操作キーを切り替える。たとえば、図1(A)に示す状態から図1(C)に示す状態へと遷移する。
逆に、電子機器100は、指やスタイラスペン(タッチ位置)のスライド操作が所定の条件を満たさない場合には、先に選択されていた第1の操作キーに対応する第2の操作キーを表示し続ける。すなわち、本実施の形態に係る電子機器100は、スライド操作が所定の条件を満たさない場合には、表示される第2の操作キーを切り替えない。たとえば、図1(A)に示す状態から図1(B)に示す状態へと遷移する。あるいは、図1(C)に示す状態から図1(D)に示す状態へと遷移する。
換言すれば、指やスタイラスペン(タッチ位置)の一部が新たな第1の操作キーにタッチした場合であっても、指やスタイラスペン(タッチ位置)のスライド操作が所定の条件を満たさない場合には、前に選択されていた第1の操作キーに対応する第2の操作キーを表示し続ける。すなわち、図1(A)に示す状態から図1(B)に示す状態へと遷移する。あるいは、たとえば、図1(C)に示す状態から図1(D)に示す状態へと遷移する。逆に、指やスタイラスペン(タッチ位置)の一部が新たな第1の操作キーにタッチした場合に、指やスタイラスペン(タッチ位置)のスライド操作が所定の条件を満たす場合には、新たに選択された第1の操作キーに対応する第2の操作キーを表示する。たとえば、図1(A)に示す状態から図1(C)に示す状態へと遷移する。
このように、本実施の形態に係る電子機器100は、第2の操作キー(第2のソフトウェアキーボード120B)が第1の操作キー(第1のソフトウェアキーボード120A)の近傍に配置されても、操作キーを選択するため操作性を低下させない。換言すれば、操作性を低下させることなく第2の操作キーを第1の操作キーの近傍に配置することができるため、タッチパネル120の表示可能領域を有効に利用することができる。以下、このような機能を実現するための構成について詳述する。
<電子機器100のハードウェア構成>
次に、電子機器100の具体的構成の一態様について説明する。図2は、電子機器100のハードウェア構成を表わすブロック図である。図2を参照して、電子機器100は、主たる構成要素として、CPU110と、タッチパネル120と、メモリ130と、メモリインターフェイス140と、通信インターフェイス150とを含む。
CPU110は、メモリ130あるいは外部の記録媒体141に記憶されているプログラムを実行することによって、電子機器100の各部を制御する。CPU110は、メモリ130あるいは外部の記録媒体141に記憶されているプログラムを実行することによって、後述する機能ブロックの各々を実現する。
タッチパネル120は、所定時間毎に外部の物体によるタッチパネル120へのタッチ操作を検知して、タッチ位置(座標)をCPU110に入力する。CPU110は、タッチパネル120から順次入力されるタッチ位置に基づいて、スライド操作(タッチ位置の変化)を受け付ける。タッチパネル120は、CPU110からのデータに基づいて文字や画像を表示する。
なお、タッチパネル120は、抵抗膜方式、表面弾性波方式、赤外線方式、電磁誘導方式、静電容量方式などのいずれのタイプであってもよい。また、タッチパネル120は、光センサ液晶を含んでもよい。このように、本実施の形態に係るタッチパネル120は、表示部と、操作部とを実現する。
メモリ130は、ROM(Read Only Memory)、SRAM(Static Random Access Memory)、NV−RAM、ハードディスク、マスクROM、EPROM(Erasable Programmable Read Only Memory)、EEPROM(Electronically Erasable Programmable Read-Only Memory)、フラッシュROMなどによって実現される。メモリ130は、CPU110によって実行されるプログラムや、CPU110によるプログラムの実行により生成されたデータ、タッチパネル120を介して入力されたデータなどを記憶する。
より詳細には、メモリ130は、プログラムなどのデータを不揮発的に格納したり、タッチ位置やスライド操作などを揮発的に格納したりする。メモリ130は、プログラムの一部として、あるいはプログラムと独立して、後述するひらがなデータベース131A、カタカナデータベース131B、アルファベットデータベース131C、数字データベース131Dを格納する。
メモリインターフェイス140には、外部の記録媒体141が接続される。外部の記録媒体141としては、USB(Universal Serial Bus)メモリ、メモリカード、FD(Flexible Disk)、磁気テープ、カセットテープ、光ディスク(MO(Magnetic Optical Disc)、MD(Mini Disc)、DVD(Digital Versatile Disc)、CD(Compact Disc))、IC(Integrated Circuit)カード、光カードなどが挙げられる。
CPU110は、メモリインターフェイス140を介して外部の記録媒体141に格納されているデータを読みして、当該データをメモリ130に格納する。逆に、CPU110は、メモリ130からデータを読み出して、メモリインターフェイス140を介して当該データを外部の記録媒体141に格納する。
通信インターフェイス150は、アンテナやコネクタによって実現される。通信インターフェイス150は、有線通信あるいは無線通信によって他の装置との間でデータをやり取りする。CPU110は、通信インターフェイス150を介して、他の装置からプログラムや画像データやテキストデータなどを受信したり、他の装置に画像データやテキストデータを送信したりする。
<本実施の形態に係る電子機器100の機能構成>
以下では、図2、図3を参照して、本実施の形態に係る電子機器100の機能構成について説明する。なお、図3は、本実施の形態に係る電子機器100の機能構成を示すブロック図である。
本実施の形態に係る電子機器100は、受付部1101と、表示制御部1103と、判断部1104とを含む。また、電子機器100は、図2にも示したように、タッチパネル120と、メモリ130とを含む。メモリ130は、各入力モードにおける第1の操作キーおよび第2の操作キーの対応関係と、第2の操作キーと文字コードとの対応関係とを格納する。
受付部1101と、表示制御部1103と、判断部1104とは、CPU110などによって実現される機能である。より詳細には、CPU110が有する各機能は、CPU110がメモリ130や外部の記録媒体141に記憶される制御プログラムを実行して、図2に示される各ハードウェアを制御することによって実現される機能である。
たとえば、受付部1101、表示制御部1103、判断部1104を実現するための制御プログラムは、辞書や電子メールなどのアプリケーションプログラムに組み込まれていてもよい。すなわち、辞書のアプリケーションや電子メールのアプリケーションが、受付部1101、表示制御部1103、判断部1104の機能を実現してもよい。あるいは、制御プログラムが、これらのアプリケーションプログラムとは別個の制御プログラムとして、これらのアプリケーションと連動してあるいは独立して実行されてもよい。
受付部1101は、タッチパネル120を介して、複数の第1の操作キーの中から1つの第1の操作キーを選択するための第1の命令を受け付ける。受付部1101は、複数の第2の操作キーの中から1つの第2の操作キーを選択するための第2の命令を受け付ける。受付部1101は、各種アイコンの選択命令(タッチ操作)なども受け付ける。本実施の形態においては、受付部1101は、タッチパネル120を介して、第1のソフトウェアキーボード120Aを立ち上げるためのアイコンの選択命令を受け付ける。
受付部1101は、図1に示すように、タッチパネル120を介して、切替ボタン122や、変換ボタン123に対する選択命令(タッチ操作)を受け付ける。受付部1101が切替ボタン122に対するタッチ操作を受け付けると、電子機器100は、ひらがな入力モードと、カタカナ入力モードと、アルファベット入力モードと、数字入力モードとを切り替える。受付部1101がひらがな入力モードにおいて変換ボタン123に対するタッチ操作を受け付けると、電子機器100は、かなを漢字に変換するかな漢字変換モードと、かなを漢字に変換しないかな漢字非変換モードとを切り替える。
より詳細には、受付部1101は、タッチパネル120から順次入力されるタッチ位置に基づいて、スライド操作を受け付ける。スライド操作は、タッチ位置を示す複数の座標情報、あるいはスライド方向(タッチ位置の移動方向)を示すベクトル情報などを含む。すなわち、スライド操作は、タッチ位置の変化を示す情報を含む。
受付部1101は、スライド操作に含まれる複数の座標情報あるいはベクトル情報と、第1の操作キーの各々の表示領域と、第2の操作キーの各々の表示領域とに基づいて、第1の命令と第2の命令とを受け付ける。本実施の形態に係る受付部1101は、後述する確定データとは独立して第1の命令と第2の命令とを表示制御部1103および判断部1104に入力する。
受付部1101は、タッチパネル120からのタッチ位置の入力がなくなったときに、スライド操作が終了したことを示すデータ(確定データという。)を表示制御部1103あるいは判断部1104に入力する。受付部1101は、タッチ位置が入力されて、タッチ位置が変化する前にタッチ位置の入力がなくなった場合にも、すなわちクリック操作が入力された場合にも、確定データを表示制御部1103あるいは判断部1104に入力する。
図1に示したように、表示制御部1103は、タッチパネル120に、入力された文字と、文字の入力位置を示すカーソル121と、複数の第1の操作キー(「あ」行ボタンや「た」行ボタンなど)とを表示させる。表示制御部1103は、受付部1101からの第1の命令に応じて、メモリ130から、選択された第1の操作キーに対応する複数の第2の操作キーを読み出す。表示制御部1103は、タッチパネル120に、文字の入力位置と異なる位置に、複数の第2の操作キー(「い」ボタンや「ち」ボタンなど)を表示させる。本実施の形態に係る表示制御部1103は、タッチパネル120に、既に入力された文字(テキスト)の表示位置とも異なる位置に、第2の操作キーを表示させる。
本実施の形態に係る表示制御部1103は、選択された第1の操作キーの左端の左右方向の座標(X座標)が、当該第1の操作キーに対応する複数の第2の操作キーの左端の左右方向の座標(X座標)とを一致させる。すなわち、「あ」行ボタンの左端のX座標と「あ」ボタンの左端のX座標とが一致する。「た」行ボタンの左端のX座標と「た」ボタンの左端のX座標とが一致する。
なお、本実施の形態においては、第1の操作キーの配列方向が左右方向である。好ましくは、第2の操作キーの配列方向も左右方向である。ただし、第1の操作キーの配列方向が上下方向であってもよい。この場合には、第2の操作キーの配列方向が上下方向であることが好ましい。
これは、第2の操作キーがタッチパネル120の中央部に表示されることによって操作キー以外の文字や画像の視認性が低下することを防ぐためである。より詳細には、表示制御部1103が、第1の操作キーがタッチパネル120の端部に表示し、第2の操作キーもタッチパネル120の端部の近傍に表示することが好ましい。これによって、タッチパネル120の中央部分に表示される文字や画像が見易くなる。
表示制御部1103は、第2の命令に基づいて、選択された第2の操作キーに対応する文字コードをメモリ130から読み出す。より詳細には、表示制御部1103は、受付部1101からの確定データに基づいて、スライド操作が終了した時点において受付部1101が受け付けた第2の命令に基づいて、当該第2の操作キーに対応する文字コードをメモリ130から読み出す。表示制御部1103は、読み出した文字コードに基づいて、タッチパネル120の文字の入力位置(カーソル121の表示位置)に、選択された第2の操作キーに対応する文字を既に入力された文字として表示させる。
ひらがな入力モードにおいて、受付部1101が切替ボタン122に対するタッチ操作を受け付けると、電子機器100はカタカナ入力モードへと移行する。すなわち、表示制御部1103は、タッチパネル120を介して、カタカナ入力モードの第1のソフトウェアキーボード120Aを表示する。
カタカナ入力モードにおいて、受付部1101が切替ボタン122に対するタッチ操作を受け付けると、電子機器100はアルファベット入力モードへと移行する。すなわち、表示制御部1103は、タッチパネル120を介して、アルファベット入力モードの第1のソフトウェアキーボード120Aを表示する。
アルファベット入力モードにおいて、受付部1101が切替ボタン122に対するタッチ操作を受け付けると、電子機器100は数字入力モードへと移行する。すなわち、表示制御部1103は、タッチパネル120を介して、数字入力モードの第1のソフトウェアキーボード120Aを表示する。
数字入力モードにおいて、受付部1101が切替ボタン122に対するタッチ操作を受け付けると、電子機器100はひらがな入力モードへと移行する。すなわち、表示制御部1103は、タッチパネル120を介して、ひらがな入力モードの第1のソフトウェアキーボード120Aを表示する。
以下では、本実施の形態に係る電子機器100における、各入力モードの第1の操作キーおよび第2の操作キーの対応関係と、各入力モードにおける第1の操作キー(第1のソフトウェアキーボード120A)および第2の操作キー(第2のソフトウェアキーボード120B)の表示方法とについて説明する。
まずは、ひらがな入力モードにおける第1の操作キーおよび第2の操作キーの対応関係について説明する。図4は、本実施の形態に係るひらがな入力モードの第1の操作キーと第2の操作キーとの対応関係を示すイメージ図である。
図4に示すように、メモリ130は、ひらがなデータベース131Aを格納する。ひらがなデータベース131Aは、ひらがな入力モードにおける第1の操作キーと第2の操作キーとの対応関係を格納する。換言すれば、ひらがなデータベース131Aは、第1の操作キーの各々に対応づけて複数の第2の操作キーを格納する。あるいは、ひらがなデータベース131Aは、第2の操作キーの各々を第1の操作キーのいずれかと対応付けて格納する。
たとえば、ひらがなデータベース131Aは、第1の操作キーとしての「あ」行ボタンに対応付けて、「あ」ボタン、「い」ボタン、「う」ボタン、「え」ボタン、「お」ボタンを第1グループとして格納する。本実施の形態に係るひらがなデータベース131Aは、第1の操作キーとしての「あ」行ボタンに対応付けて、「ぁ」ボタン、「ぃ」ボタン、「ぅ」ボタン、「ぇ」ボタン、「ぉ」ボタンを第2グループとして格納する。
たとえば、ひらがなデータベース131Aは、第1の操作キーとしての「た」行ボタンに対応付けて、「た」ボタン、「ち」ボタン、「つ」ボタン、「て」ボタン、「と」ボタンを第1グループとして格納する。本実施の形態に係るひらがなデータベース131Aは、第1の操作キーとしての「た」行ボタンに対応付けて、「だ」ボタン、「ぢ」ボタン、「づ」ボタン、「で」ボタン、「ど」ボタンを第2グループとして格納する。本実施の形態に係るひらがなデータベース131Aは、第1の操作キーとしての「た」行ボタンに対応付けて、「っ」ボタンを第3グループとして格納する。
たとえば、ひらがなデータベース131Aは、第1の操作キーとしての「は」行ボタンに対応付けて、「は」ボタン、「ひ」ボタン、「ふ」ボタン、「へ」ボタン、「ほ」ボタンを第1グループとして格納する。本実施の形態に係るひらがなデータベース131Aは、第1の操作キーとしての「は」行ボタンに対応付けて、「ば」ボタン、「び」ボタン、「ぶ」ボタン、「べ」ボタン、「ぼ」ボタンを第2グループとして格納する。本実施の形態に係るひらがなデータベース131Aは、第1の操作キーとしての「は」行ボタンに対応付けて、「ぱ」ボタン、「ぴ」ボタン、「ぷ」ボタン、「ぺ」ボタン、「ぽ」ボタンを第3グループとして格納する。
次に、ひらがな入力モードにおける第1の操作キーおよび第2の操作キーの表示形態について説明する。図5は、本実施の形態に係るひらがな入力モードにおける第1の画面遷移を示すイメージ図である。ここでは、電子機器100が英和辞書および和英辞書のアプリケーションを起動している場合について説明する。
図5(A)を参照して、表示制御部1103は、タッチパネル120に、英語の検索ワードを入力するためのテキストボックスや日本語の検索ワードを入力するためのテキストボックスを表示する。そして、日本語入力モードにおいては、表示制御部1103は、タッチパネル120に、日本語の検索ワードを入力するためのテキストボックス中に、次に文字が入力されるべき位置を示すカーソル121を表示させる。
受付部1101がタッチパネル120を介して第1の操作キーとしての「は」行ボタンに対するタッチ操作を受け付けると、表示制御部1103は、ひらがなデータベース131Aを参照して、「は」行ボタンに対応する第2の操作キー、すなわち、「は」ボタン、「ひ」ボタン、「ふ」ボタン、「へ」ボタン、「ほ」ボタン、「ば」ボタン、「び」ボタン、「ぶ」ボタン、「べ」ボタン、「ぼ」ボタン、「ぱ」ボタン、「ぴ」ボタン、「ぷ」ボタン、「ぺ」ボタン、「ぽ」ボタンを読み出す。表示制御部1103は、第2のソフトウェアキーボード120Bとして、タッチパネル120に読み出した第2の操作キーを表示させる。
図5(B)を参照して、受付部1101がタッチパネル120を介して第2の操作キーとしての「は」ボタンに対するタッチ操作を受け付けると、表示制御部1103はカーソル121の表示位置に文字「は」を表示させる。
図5(C)を参照して、受付部1101がタッチパネル120を介して第1の操作キーとしての「な」行ボタンに対するタッチ操作を受け付けると、表示制御部1103は、ひらがなデータベース131Aを参照して、「な」行ボタンに対応する第2の操作キー、すなわち、「な」ボタン、「に」ボタン、「ぬ」ボタン、「ね」ボタン、「の」ボタンを読み出す。表示制御部1103は、タッチパネル120に読み出した第2の操作キーを表示させる。図示しないが、受付部1101がタッチパネル120を介して第2の操作キーとしての「な」ボタンに対するタッチ操作を受け付けると、表示制御部1103はカーソル121の表示位置に文字「な」を表示させる。
そして、受付部1101がタッチパネル120を介して切替ボタン122に対するタッチ操作を受け付けると、電子機器100はカタカナ入力モードへと移行する。
図6は、本実施の形態に係るひらがな入力モードにおける第2の画面遷移を示すイメージ図である。図6(A)を参照して、受付部1101がタッチパネル120を介して第1の操作キーとしての「は」行ボタンに対するタッチ操作を受け付けると、表示制御部1103は、ひらがなデータベース131Aを参照して、「は」行ボタンに対応する第2の操作キーの第1グループ、すなわち、「は」ボタン、「ひ」ボタン、「ふ」ボタン、「へ」ボタン、「ほ」ボタンのみを読み出してもよい。表示制御部1103は、タッチパネル120に読み出した第2の操作キーの第1グループを表示させる。
図6(B)を参照して、受付部1101がタッチパネル120を介して、再度、第1の操作キーとしての「は」行ボタンに対するタッチ操作を受け付けると、表示制御部1103は、ひらがなデータベース131Aを参照して、「は」行ボタンに対応する第2の操作キーの第2グループ、すなわち、「ば」ボタン、「び」ボタン、「ぶ」ボタン、「べ」ボタン、「ぼ」ボタンのみを読み出してもよい。表示制御部1103は、タッチパネル120に読み出した第2の操作キーの第2グループを表示させる。
図6(C)を参照して、受付部1101がタッチパネル120を介して、再度、第1の操作キーとしての「は」行ボタンに対するタッチ操作を受け付けると、表示制御部1103は、ひらがなデータベース131Aを参照して、「は」行ボタンに対応する第2の操作キーの第3グループ、すなわち、「ぱ」ボタン、「ぴ」ボタン、「ぷ」ボタン、「ぺ」ボタン、「ぽ」ボタンのみを読み出してもよい。表示制御部1103は、タッチパネル120に読み出した第2の操作キーの第3グループを表示させる。
次に、カタカナ入力モードにおける第1の操作キーおよび第2の操作キーの対応関係について説明する。図7は、本実施の形態に係るカタカナ入力モードの第1の操作キーと第2の操作キーとの対応関係を示すイメージ図である。
図7に示すように、メモリ130は、カタカナデータベース131Bを格納する。カタカナデータベース131Bは、カタカナ入力モードにおける第1の操作キーと第2の操作キーとの対応関係を格納する。換言すれば、カタカナデータベース131Bは、第1の操作キーの各々に対応づけて複数の第2の操作キーを格納する。
たとえば、カタカナデータベース131Bは、第1の操作キーとしての「ア」行ボタンに対応付けて、「ア」ボタン、「イ」ボタン、「ウ」ボタン、「エ」ボタン、「オ」ボタンを第1グループとして格納する。本実施の形態に係るカタカナデータベース131Bは、第1の操作キーとしての「ア」行ボタンに対応付けて、「ァ」ボタン、「ィ」ボタン、「ゥ」ボタン、「ェ」ボタン、「ォ」ボタンを第2グループとして格納する。本実施の形態に係るカタカナデータベース131Bは、第1の操作キーとしての「ア」行ボタンに対応付けて、「ヴ」ボタンを第3グループとして格納する。
たとえば、カタカナデータベース131Bは、第1の操作キーとしての「ハ」行ボタンに対応付けて、「ハ」ボタン、「ヒ」ボタン、「フ」ボタン、「ヘ」ボタン、「ホ」ボタンを第1グループとして格納する。本実施の形態に係るカタカナデータベース131Bは、第1の操作キーとしての「ハ」行ボタンに対応付けて、「バ」ボタン、「ビ」ボタン、「ブ」ボタン、「ベ」ボタン、「ボ」ボタンを第2グループとして格納する。本実施の形態に係るカタカナデータベース131Bは、第1の操作キーとしての「ハ」行ボタンに対応付けて、「パ」ボタン、「ピ」ボタン、「プ」ボタン、「ペ」ボタン、「ポ」ボタンを第3グループとして格納する。
カタカナ入力モードにおける第1の操作キーおよび第2の操作キーの表示形態については、図5および図6に示したものと同様であるため、ここでは説明を繰り返さない。なお、受付部1101がタッチパネル120を介して切替ボタン122に対するタッチ操作を受け付けると、電子機器100はアルファベット入力モードへと移行する。
次に、アルファベット入力モードにおける第1の操作キーおよび第2の操作キーの対応関係について説明する。図8は、本実施の形態に係るアルファベット入力モードの第1の操作キーと第2の操作キーとの対応関係を示すイメージ図である。
図8に示すように、メモリ130は、アルファベットデータベース131Cを格納する。アルファベットデータベース131Cは、アルファベット入力モードにおける第1の操作キーと第2の操作キーとの対応関係を格納する。換言すれば、アルファベットデータベース131Cは、第1の操作キーの各々に対応づけて複数の第2の操作キーを格納する。
たとえば、アルファベットデータベース131Cは、第1の操作キーとしての「a」グループボタンに対応付けて、「a」ボタン、「b」ボタン、「c」ボタンを第1グループ(小文字グループ)として格納する。本実施の形態に係るアルファベットデータベース131Cは、第1の操作キーとしての「a」グループボタンに対応付けて、「A」ボタン、「B」ボタン、「C」ボタンを第2グループ(大文字グループ)として格納する。
たとえば、アルファベットデータベース131Cは、第1の操作キーとしての「s」グループボタンに対応付けて、「s」ボタン、「t」ボタン、「u」ボタンを第1グループとして格納する。本実施の形態に係るアルファベットデータベース131Cは、第1の操作キーとしての「s」グループボタンに対応付けて、「S」ボタン、「T」ボタン、「U」ボタンを第2グループとして格納する。
次に、アルファベット入力モードにおける第1の操作キーおよび第2の操作キーの表示形態について説明する。図9は、本実施の形態に係るアルファベット入力モードにおける画面遷移を示すイメージ図である。ここでは、電子機器100が英和辞書および和英辞書のアプリケーションを起動している場合について説明する。
図9(A)を参照して、表示制御部1103は、タッチパネル120に、英語の検索ワードを入力するためのテキストボックスや日本語の検索ワードを入力するためのテキストボックスを表示する。そして、英語入力モードにおいては、表示制御部1103は、タッチパネル120に、英語の検索ワードを入力するためのテキストボックス中に、次に文字が入力されるべき位置を示すカーソル121を表示させる。
受付部1101がタッチパネル120を介して第1の操作キーとしての「a」グループボタンに対するタッチ操作を受け付けると、表示制御部1103は、アルファベットデータベース131Cを参照して、「a」グループボタンに対応する第2の操作キー、すなわち、「a」ボタン、「b」ボタン、「c」ボタン、「A」ボタン、「B」ボタン、「C」ボタンを読み出す。表示制御部1103は、タッチパネル120に読み出した第2の操作キーを表示させる。
図9(B)を参照して、受付部1101がタッチパネル120を介して第2の操作キーとしての「a」ボタンに対するタッチ操作を受け付けると、表示制御部1103はカーソル121の表示位置に文字「a」を表示させる。
図9(C)を参照して、受付部1101がタッチパネル120を介して第1の操作キーとしての「s」グループボタンに対するタッチ操作あるいは「s」グループボタンへのスライド操作を受け付ける。表示制御部1103は、アルファベットデータベース131Cを参照して、「s」グループボタンに対応する第2の操作キー、すなわち、「s」ボタン、「t」ボタン、「u」ボタン、「S」ボタン、「T」ボタン、「U」ボタンを読み出す。表示制御部1103は、タッチパネル120に読み出した第2の操作キーを表示させる。図示しないが、受付部1101がタッチパネル120を介して第2の操作キーとしての「s」ボタンに対するタッチ操作を受け付けると、表示制御部1103はカーソル121の表示位置に文字「s」を表示させる。
そして、受付部1101がタッチパネル120を介して切替ボタン122に対するタッチ操作を受け付けると、電子機器100は数字入力モードへと移行する。
なお、アルファベット入力モードにおいても、表示制御部1103はタッチパネル120に図6と同様に画面遷移を実行させても良い。すなわち、図示しないが、受付部1101がタッチパネル120を介して第1の操作キーとしての「s」グループボタンに対するタッチ操作を受け付けると、表示制御部1103は、アルファベットデータベース131Cを参照して、「s」グループボタンに対応する第2の操作キーの第1グループ、すなわち、「s」ボタン、「t」ボタン、「u」ボタンのみを読み出してもよい。表示制御部1103は、タッチパネル120に読み出した第2の操作キーの第1グループを表示させる。
そして、受付部1101がタッチパネル120を介して、再度、第1の操作キーとしての「s」グループボタンに対するタッチ操作を受け付けると、表示制御部1103は、アルファベットデータベース131Cを参照して、「s」グループボタンに対応する第2の操作キーの第2グループ、すなわち、「S」ボタン、「T」ボタン、「U」ボタンのみを読み出してもよい。表示制御部1103は、タッチパネル120に読み出した第2の操作キーの第2グループを表示させる。
次に、数字入力モードにおける操作キーについて説明する。図10は、本実施の形態に係る数字入力モードの操作キーを示すイメージ図である。
図10に示すように、メモリ130は、数字データベース131Dを格納する。数字データベース131Dは、数字に対応する数字キーと、記号に対応する記号キーとを含む。本実施の形態に係る表示制御部1103は、数字入力モードにおいては、タッチパネル120に数字キーと記号キーとを同時に表示させる。
図3に戻って、判断部1104は、スライド前の(タッチ位置が変化する前の)タッチ位置に対応するグループと、スライド後の(現在の)タッチ位置に対応するグループとが異なるか否かを判断する。より詳細には、判断部1104は、スライド前に選択されている第1の操作キーと現在選択されている第1の操作キーとが異なっているか否かを判断する。本実施の形態においては、判断部1104は、受付部1101から新たな第1の命令が入力されると、スライド前のタッチ位置に対応するグループと、スライド後のタッチ位置に対応するグループとが異なると判断する。
判断部1104は、新たな第1の命令が入力されたときに、タッチ位置の変化が所定の条件を満たすか否かを判断する。判断部1104は、たとえば、以下のようにして条件判断を行う。
判断部1104は、受付部1101からスライド操作を受け付けて、タッチ位置のスライド方向を取得する。より詳細には、受付部1101が、複数の連続したタッチ位置に対応する座標情報に基づいてスライド方向(ベクトル情報など)を計算し、当該スライド方向を判断部1104に入力する。ただし、判断部1104が、受付部1101から複数の連続したタッチ位置に対応する座標情報を順次受け付けて、当該座標情報に基づいてスライド方向を計算してもよい。前述したように、受付部1101と判断部1104とは、ともにCPU110がプログラムを実行することによって実現されるものであって、いずれがスライド方向を計算してもよい。
図11は、本実施の形態に係る条件判断方法および表示画面の推移を示すイメージ図である。より詳細には、図11(A)は、スライド操作前のタッチパネル120を示すイメージ図である。図11(B)は、スライド操作が所定の条件を満たす場合におけるスライド操作後のタッチパネル120を示すイメージ図である。図11(C)は、スライド操作が所定の条件を満たさない場合におけるスライド操作後のタッチパネル120を示すイメージ図である。
図11に示すように、本実施の形態に係る判断部1104は、スライド方向と第1の操作キーの配列方向との間の角度が所定値未満であるか否かを判断する。より詳細には、判断部1104は、スライド方向と配列方向との間の角度(スライド角度)を計算し、当該スライド角度が所定角度α未満であるか否かを判断する。
図11(B)に示すように、判断部1104は、スライド方向と第1の操作キーの配列方向との間の角度が所定角度α未満である場合に、タッチ位置の変化が所定の条件を満たすと判断する。逆に、図11(C)に示すように、判断部1104は、スライド方向と第1の操作キーの配列方向との角度が所定角度α未満でない場合に、タッチ位置の変化が所定の条件を満たさないと判断する。判断部1104は、判断結果を表示制御部1103に入力する。
図11(B)に示すように、表示制御部1103は、タッチ位置の変化が所定の条件を満たすときに、スライド後のタッチ位置に対応する第1の操作キー(第1の命令)に基づいて、タッチパネル120に第1の操作キー(第2のソフトウェアキーボード120B)を表示させる。逆に、図11(C)に示すように、表示制御部1103は、タッチ位置の変化が所定の条件を満たさないときに、スライド前のタッチ位置に対応する第1の操作キーに基づいて、タッチパネル120に第2の操作キー(第2のソフトウェアキーボード120B)を表示させる。すなわち、表示制御部1103は、タッチ位置の変化が所定の条件を満たさないときは、受付部1101から新たな第1の命令が入力されても、第2のソフトウェアキーボード120Bを切り替えない。
このように、本実施の形態に係る表示制御部1103は、判断部1104からの判断結果に基づいて、受付部1101からの第1の命令を有効なものと判断したり、当該第1の命令を無効なものと判断したりする。その結果、本実施の形態に係る電子機器100は、第2の操作キーが第1の操作キーの近傍に配置されても、ユーザによる操作キーの選択に関する操作性を低下させない。換言すれば、操作キーの選択に関する操作性を低下させることなく、第2の操作キーを第1の操作キーの近傍に配置することによって表示領域を有効に利用することができる。
図3に戻って、判断部1104は、第2の操作キー(第2のソフトウェアキーボード120B)が表示されてから第1の時間内に受付部1101が第2の命令を受け付けたか否かを判断する。また、判断部1104は、第2の操作キーが非表示になってから第2の時間内に受付部1101が第1の命令を受け付けたか否かを判断する。
表示制御部1103は、第2の操作キーが表示されてから第1の時間内に受付部1101が第2の命令を受け付けない場合に、第2の操作キーを非表示にする。表示制御部1103は、第2の操作キーが非表示になってから第2の時間内に受付部1101が第1の命令を受け付けない場合、第1の操作キー(第1のソフトウェアキーボード120A)を非表示にする。
表示制御部1103は、第2の操作キーが非表示になってから第2の時間内に受付部1101が第1の命令を受け付けない場合、タッチパネル120に第1の操作キーを表示させる(起動させる)ためのアイコンを表示させる。表示制御部1103は、アイコンに対するタッチ操作に応じてタッチパネル120に第1の操作キーを表示させる。
第1の操作キーと第2の操作キーを非表示にする構成について、以下に詳述する。図12は、本実施の形態に係るひらがな入力モードにおける第3の画面遷移を示すイメージ図である。図12(A)に示すように、表示制御部1103が、タッチパネル120に、次に入力されるべき文字の位置を示すためのカーソル121の表示位置と異なる位置に、第1のソフトウェアキーボード120Aと第2のソフトウェアキーボード120Bとを表示させる。第2のソフトウェアキーボード120Bが表示されてから第1の時間、受付部1101がタッチ操作を受け付けない場合、図12(B)に示すように、表示制御部1103はタッチパネル120に第2のソフトウェアキーボード120Bを非表示にさせる。
さらに、第2のソフトウェアキーボード120Bが非表示にされてから第2の時間、受付部1101がタッチ操作を受け付けない場合、図12(C)に示すように、表示制御部1103はタッチパネル120に第1のソフトウェアキーボード120Aを非表示にさせる。このとき、表示制御部1103は、タッチパネル120に、第1のソフトウェアキーボード120Aを立ち上げるためのアイコン126を表示させる。すなわち、図12(C)および図12(B)を参照して、受付部1101がタッチパネル120を介してアイコン126に対するタッチ操作を受け付けると、表示制御部1103は再びタッチパネル120に第1のソフトウェアキーボード120Aを表示させる。
このような構成によって、本実施の形態に係る電子機器100は、さらに表示領域を有効に利用することができる。すなわち、タッチパネル120に対する視認性がさらに向上する。
<文字受付処理>
次に、図2、図3、図13を参照して、本実施の形態に係る電子機器100における文字受付処理について説明する。なお、図13は、本実施の形態に係る電子機器100における文字受付処理の処理手順を示すフローチャートである。
受付部1101として機能するCPU110は、タッチパネル120を介して、第1の操作キーに対するタッチ操作を受け付けると、文字受付処理を実行する。CPU110は、タッチ位置P0(基準タッチ位置P0)をメモリ130に記憶する(ステップS102)。CPU110は、基準タッチ位置P0に対応する第1の操作キーをメモリ130に記憶する(ステップS104)。
CPU110は、メモリ130の第1の操作キーと第2の操作キーとの対応関係を参照して、基準タッチ位置P0に対応する第1の操作キーに対応する複数の第2の操作キーを読み出す。CPU110は、読み出した複数の第2の操作キーに基づいて、タッチパネル120に第2のソフトウェアキーボード120Bを表示させる(ステップS106)。その後、CPU110は、タッチパネル120を介して順次タッチ位置Pを取得する(ステップS108)。
CPU110は、現在のタッチ位置Pが第2の操作キーの表示領域内であるか否かを判断する(ステップS110)。現在のタッチ位置Pが第2の操作キーの表示領域内でない場合(ステップS110においてNOである場合)、CPU110は、タッチパネル120からタッチ位置Pが入力されたか否かを判断する(ステップS112)。タッチパネル120からタッチ位置Pが入力されなかった場合(ステップS112においてNOである場合)、CPU110は、文字受付処理を終了する。
タッチパネル120からタッチ位置Pが入力された場合(ステップS112においてYESである場合)、CPU110は、入力された当該タッチ位置に基づいてメモリ130のタッチ位置Pを更新する。CPU110は、基準タッチ位置P0と現在のタッチ位置Pとからスライド方向を計算し、スライド角度を計算する。判断部1104として機能するCPU110は、スライド角度が所定角度α未満であるか否かを判断する(ステップS114)。スライド角度が所定角度α未満でない場合(ステップS114においてNOである場合)、CPU110は、ステップS108からの処理を繰り返す。
スライド角度が所定角度α未満である場合(ステップS114においてYESである場合)、CPU110は、現在のタッチ位置Pが他の第1の操作キーの表示領域内であるか否かを判断する(ステップS116)。タッチ位置Pが他の第1の操作キーの表示領域内でない場合(ステップS116においてNOである場合)、CPU110は、ステップS108からの処理を繰り返す。
タッチ位置Pが他の第1の操作キーの表示領域内である場合(ステップS116においてYESである場合)、表示制御部1103として機能するCPU110は、当該他の第1の操作キーをメモリ130に格納する(ステップS118)。すなわち、CPU110は、他の第1の操作キーの選択を有効なものとして、メモリ130の選択された第1の操作キーを更新する。
CPU110は、メモリ130の第1の操作キーと第2の操作キーとの対応関係を参照して、タッチ位置Pに対応する第1の操作キーに対応する複数の第2の操作キーを読み出す。CPU110は、読み出した複数の第2の操作キーに基づいて、タッチパネル120に第2のソフトウェアキーボード120Bを表示させる(ステップS120)。すなわち、CPU110は、タッチパネル120によって表示される第2のソフトウェアキーボード120Bを切り替える。
CPU110は、現在のタッチ位置Pに基づいてメモリ130の基準タッチ位置P0を更新する(ステップS122)。CPU110は、ステップS108からの処理を繰り返す。ただし、CPU110は、タッチ操作(スライド操作)が終了するまで基準タッチ位置P0を更新しない形態であってもよい。
ステップS110において、現在のタッチ位置Pが第2の操作キーの表示領域内である場合(ステップS110においてYESである場合)、CPU110は、タッチパネル120からタッチ位置Pが入力されたか否かを判断する(ステップS124)。タッチパネル120からタッチ位置Pが入力された場合(ステップS124においてYESである場合)、CPU110は、入力された当該タッチ位置Pに基づいてメモリ130のタッチ位置Pを更新する(ステップS126)。CPU110は、ステップS124からの処理を繰り返す。
タッチパネル120からタッチ位置Pが入力されなくなった場合(ステップS124においてNOである場合)、CPU110は、現在のタッチ位置が第2の操作キーの表示領域内であるか否かを判断する(ステップS128)。現在のタッチ位置が第2の操作キーの表示領域内である場合(ステップS128においてYESである場合)、CPU110は、メモリ130を参照して当該第2の操作キーに対応する文字コードを読み出す(ステップS130)。CPU110は、読み出した文字コードに基づいて、タッチパネル120に選択された第2の操作キーに対応する文字を表示させる(ステップS132)。CPU110は、タッチパネル120に第2の操作キーを非表示にさせる(ステップS134)。CPU110は、文字受付処理を終了する。
現在のタッチ位置が第2の操作キーの表示領域内でない場合(ステップS128においてNOである場合)、CPU110は、タッチパネル120に第2の操作キーを非表示にさせる(ステップS134)。CPU110は、文字受付処理を終了する。
<文字受付処理の変形例>
次に、図2、図3、図14を参照して、本実施の形態に係る電子機器100における文字受付処理の変形例について説明する。なお、図14は、本実施の形態に係る電子機器100における文字受付処理の変形例の処理手順を示すフローチャートである。本変形例に係る文字受付処理は、図13に示す文字受付処理におけるステップS114とステップS116との処理順序が入れ替わったものである。そのため、当該ステップ以外のステップに関する説明は繰り返さない。
図14に示すように、タッチパネル120からタッチ位置Pが入力された場合(ステップS112においてYESである場合)、判断部1104として機能するCPU110は、タッチ位置Pが他の第1の操作キーの表示領域内であるか否かを判断する(ステップS214)。タッチ位置Pが他の第1の操作キーの表示領域内でない場合(ステップS214においてNOである場合)、CPU110は、ステップS108からの処理を繰り返す。
タッチ位置Pが他の第1の操作キーの表示領域内である場合(ステップS214においてYESである場合)、CPU110は、入力されたタッチ位置Pに基づいてメモリ130のタッチ位置Pを更新する。CPU110は、基準タッチ位置P0と現在のタッチ位置Pとからスライド方向を計算し、スライド角度を計算する。CPU110は、スライド角度が所定角度α未満であるか否かを判断する(ステップS216)。スライド角度が所定角度α未満でない場合(ステップS216においてNOである場合)、CPU110はステップS108からの処理を繰り返す。
スライド角度が所定角度α未満である場合(ステップS216においてYESである場合)、表示制御部1103として機能するCPU110は他の第1の操作キーをメモリ130に格納する(ステップS118)。
<その他の実施の形態>
本発明は、システム或いは装置にプログラムを供給することによって達成される場合にも適用できることはいうまでもない。そして、本発明を達成するためのソフトウェアによって表されるプログラムを格納した外部の記録媒体141(メモリ130)を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU)が外部の記録媒体141(メモリ130)に格納されたプログラムコードを読出し実行することによっても、本発明の効果を享受することが可能となる。
この場合、外部の記録媒体141(メモリ130)から読出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコードを記憶した外部の記録媒体141(メモリ130)は本発明を構成することになる。
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
さらに、外部の記録媒体141(メモリ130)から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わる他の記録媒体に書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。