以下、本発明につき図面を参照しつつ詳細に説明する。なお、以下の説明により本発明が限定されるものではない。また、以下の説明における構成要素には、当業者が容易に想定できるもの、実質的に同一のもの、いわゆる均等の範囲のものが含まれる。以下においては、情報処理装置として携帯電話端末を例として説明するが、本発明の適用対象は携帯電話端末に限定されるものではなく、タッチパネルを備える各種装置、例えば、PHS(Personal Handyphone System)、PDA、ポータブルナビゲーション装置、パーソナルコンピュータ、ゲーム機、デジタルカメラ等に対しても本発明は適用できる。
図1は、本発明の端末装置の一実施形態である携帯電話端末1の外観を示す正面図である。携帯電話端末1は、タッチパネル2と、ボタン3A、ボタン3Bおよびボタン3Cからなる入力部3を備える。タッチパネル2は、文字、図形、画像等を表示するとともに、指、スタイラス、ペン等(以下、単に「指」という)を用いてタッチパネル2に対して行われる各種動作を検出する。入力部3は、いずれかのボタンが押下された場合に、押下されたボタンに対応する機能を起動させる。
携帯電話端末1は、オブジェクトを閲覧するためのオブジェクト閲覧画面をタッチパネル2に表示させ、オブジェクト閲覧画面に表示されているオブジェクトの属性情報の入力をタッチパネル2から受け付ける。
ここでオブジェクトとは、携帯電話端末1が表示、再生、編集等の各種処理を行う対象のデータであり、例えば、画像データ、動画データ、音楽データ、ワープロ文書、電子メール、アドレス帳の個人データ等に相当する。また、オブジェクト閲覧画面とは、オブジェクトの選択や閲覧の為に、オブジェクトに対応するサムネール等のアイコンを所定の順序で順次表示する画面である。また、属性情報とは、オブジェクトの属性を示す文字情報であり、例えば、ファイル名、タイトル、コメント、作者名である。オブジェクトがアドレス帳の個人データである場合、氏名、電話番号、メールアドレス等も属性情報に含まれる。
オブジェクト閲覧画面を表示中の携帯電話端末1の動作について図2を参照しながら説明する。s1では、携帯電話端末1は、利用者が行った所定の操作に応じて、タッチパネル2にオブジェクト閲覧画面を表示している。具体的には、携帯電話端末1は、現在の操作対象であるオブジェクトOB2のアイコンをタッチパネル2の中央に大きめに表示している。そして、オブジェクトOB2よりも表示順序が1つ若いオブジェクトOB1のアイコンが、オブジェクトOB2のアイコンの右側にやや小さく表示され、オブジェクトOB2よりも表示順序が1つ後のオブジェクトOB3のアイコンが、オブジェクトOB2のアイコンの左側にやや小さく表示されている。なお、オブジェクト閲覧画面では、オブジェクトのファイル名等の文字データをアイコンの近隣または内部に表示してもよい。
このようなオブジェクト閲覧画面が表示されている状態で、利用者が、オブジェクトOB2のアイコンをタップする動作を行うと、携帯電話端末1は、タッチパネル2を通じてその動作を検知して、オブジェクトOB2の拡大表示、再生、編集可能状態への遷移等の所定の処理を実行する。なお、タップとは、指をタッチパネル2に触れさせた後、即座に指をタッチパネル2から離す動作である。
また、このようなオブジェクト閲覧画面が表示されている状態で、利用者が、s2のように、オブジェクトOB2のアイコンの表示領域内で指をタッチパネル2に接触させた後、s3のように、タッチパネル2に触れたままの状態で指を右方向へ移動させる動作を行うと、携帯電話端末1は、タッチパネル2を通じてその動作を検知して、アイコンを右方向へシフトさせる。
その結果、s4に示すように、オブジェクトOB3のアイコンが、現在の操作対象としてタッチパネル2の中央に大きめに表示される。そして、操作対象であったオブジェクトOB2のアイコンが、オブジェクトOB3のアイコンの右側にやや小さく表示され、オブジェクトOB3よりも表示順序が1つ後のオブジェクトOB4のアイコンが、オブジェクトOB3のアイコンの左側にやや小さく表示される。
また、利用者が、s2のように、オブジェクトOB2のアイコンの表示領域内で指をタッチパネル2に接触させた後、タッチパネル2に触れたままの状態で指を左方向へ移動させる動作を行うと、携帯電話端末1は、タッチパネル2を通じてその動作を検知して、アイコンを左方向へシフトさせる。
このように、オブジェクト閲覧画面では、利用者は、オブジェクトのアイコンを参照してオブジェクトの内容を確認しながら、タッチパネル2上のアイコンに対して直感的な操作を行うことにより、オブジェクトの選択や閲覧等を行うことができる。
さらに、携帯電話端末1のオブジェクト閲覧画面では、タッチパネル2に表示されているアイコンに対応するオブジェクトの属性情報の入力を簡単に行うことができる。オブジェクト閲覧画面が表示されている状態で、利用者が、s2のように、オブジェクトOB2のアイコンの表示領域内で指をタッチパネル2に接触させると、携帯電話端末1は、タッチパネル2に仮想キーボード4を表示させる。仮想キーボード4は、物理的なキーボードのキーを模した複数の仮想的なボタンを含んでいる。
そして、利用者が、s5のように、タッチパネル2に触れたままの状態で指を仮想キーボード4内へ移動させる動作を行うと、携帯電話端末1は、オブジェクトOB2の属性情報の入力を仮想キーボード4から受け付ける状態となる。そして、携帯電話端末1は、s6のように、利用者が仮想キーボード4を用いて入力した文字列を識別し、識別した文字列を入力文字表示画面15に表示する。
ここで、携帯電話端末1は、仮想キーボード4内のボタンを1つずつタップする方式だけではなく、連続方式による文字の入力も受け付ける。連続方式とは、利用者が指をタッチパネル2に接触させたまま仮想キーボード4上を移動させることによって複数の文字を連続して入力することを可能にする方式である。連続方式では、利用者は、例えば、指をタッチパネル2に接触させたままで、「W」のボタン、「E」のボタン、「T」のボタンの順に滑るように移動させることで「WET」という文字列を入力することができる。
このように、連続方式では、ボタン毎に指を上げ下げする動作を行わずに、タッチパネル2上で指を滑るように移動させるだけで複数の文字を入力することができるため、非常に高速に文字を入力することができる。特に、図2のs5のように、タッチパネル2に触れたままの状態で指をオブジェクトOB2のアイコンの表示領域から仮想キーボード4内へ移動させた後に文字を入力する場面では、指がタッチパネル2に触れた状態を保ったまま、指を上げ下げせずに文字を入力することができるため、連続方式は、文字を高速に入力するために非常に有利である。
そして、属性情報の入力が完了して、利用者が入力文字表示画面15の保存ボタンをタップする等して属性情報の保存を指示すると、携帯電話端末1は、s7のように属性選択画面16を表示する。属性選択画面16は、入力された文字列をどの属性情報として保存するかの選択を受け付ける画面であり、「ファイル名」、「タイトル」、「コメント」等の選択肢を含む。
なお、属性選択画面16が表示する選択肢は、オブジェクトの種類によって異なる。また、属性情報が入力されるたびに属性選択画面16を表示して、入力された文字列をどの属性情報として保存するかの選択を受け付ける代わりに、入力された文字列をどの属性情報として保存するかを予め利用者に選択させておいてもよい。
属性選択画面16においていずれかの選択肢が選択されると、携帯電話端末1は、入力された文字列を、選択された選択肢に対応する属性情報として、オブジェクトOB2と対応付けて記憶させる。そして、携帯電話端末1は、s8に示すように、仮想キーボード4と属性選択画面16を消去して、オブジェクト閲覧画面をs1の時点と同様の状態に戻す。
そして、利用者は、他のオブジェクトの属性情報をさらに入力したい場合は、s3に示したような操作を行って所望のオブジェクトのアイコンを表示させた後、s5〜s7に示した操作を行って属性情報を入力する。
以上説明してきたように、携帯電話端末1は、操作対象のオブジェクトを任意に変更可能なオブジェクト閲覧画面を表示した状態で、指をタッチパネル2から離すことなくオブジェクトの属性情報の入力を行うことができるように構成されているので、利用者は、オブジェクトの属性情報の入力を迅速に行うことができる。
次に、連続方式による文字入力についてさらに詳しく説明する。上述したように、連続方式では、ボタン毎に指を上げ下げする動作を行わずに、タッチパネル2上で指を滑るように移動させるだけで複数の文字を入力することができるため、非常に高速に文字を入力することができる。
ただし、連続方式では、利用者が指を移動させた軌跡上にある各ボタンについて、利用者がそのボタンに対応する文字を入力するために意図的に触れたのか、あるいは、利用者が他のボタン上へ指を移動させるために単にその上を通過させたに過ぎないのかを判定する必要がある。例えば、仮想キーボード4の配列がQWERTY配列であり、利用者が上記の「WET」という単語を入力したいものとする。この場合、利用者の指は「E」のボタンから「T」のボタンへ移動する際に、それらのボタンの間にある「R」のボタン上を通過することになる。このため、「R」のボタンについては意図的に触れたわけではないと判定できなかった場合には、利用者の意図に反して「WERT」という文字列が入力として受け付けられてしまう。
そこで、携帯電話端末1は、利用者が指を移動させた軌跡上にあるボタンのうち、特定の動作がタッチパネル2によって検出された位置に表示されているボタンを、利用者が文字を入力するために意図的に触れたものであると判定する。具体的には、携帯電話端末1は、指の接触を開始する動作がタッチパネル2によって検出された場合、接触の開始が検出された位置にボタンがあれば、そのボタンは意図的に触れられたと判定する。また、携帯電話端末1は、指の移動が終了しタッチパネル2から離れる動作がタッチパネル2によって検出された場合、接触の終了が検出された位置にボタンがあれば、そのボタンは意図的に触れられたと判定する。
また、携帯電話端末1は、指がタッチパネル2に触れたまま移動方向を変更する動作がタッチパネル2によって検出された場合、移動方向の変更が検出された位置にボタンがあれば、そのボタンは意図的に触れられたと判定する。具体的には、携帯電話端末1は、指がボタンに進入したときの移動方向と指がボタンから出るときの移動方向とを比較し、移動方向の角度差が閾値よりも大きければ、利用者が意図的にそのボタンに触れたと判定する。
これは、他のボタンへの移動中において、単に通過するに過ぎない場合、指はボタン上を一定方向へ移動し、図3に示すように進入時の移動方向(ベクトル)を示すV1と脱出時の移動方向を示すV2の角度差は小さくなると考えられるためである。また、図4に示すように進入時の移動方向を示すV3と脱出時の移動方向を示すV4の角度差が大きい場合、利用者が意図的にそのボタンに触れた後に他のボタンに触れるために移動方向を変更した可能性が高いためである。つまり、このボタンが目的ボタンの一つであったと判定できる。
また、携帯電話端末1は、図5に示すように、指がタッチパネル2に触れたままあるボタン領域内で回転する軌跡を描いて移動する動作がタッチパネル2によって検出された場合に、利用者が意図的にそのボタンに触れたと判定する。単に通過するに過ぎない場合に指がこのような軌跡を描いて移動することはないと考えられるためである。なお、回転する軌跡に限らずに、山型や波状等の特徴的な形状の軌跡が指によってボタン領域内で描かれた場合に、利用者が意図的にそのボタンに触れたと判定することとしてもよい。
このようにボタン領域内で特徴的な形状の軌跡を描く指の移動が検出された場合にそのボタンが意図的に触れられたと判定することにより、利用者は同じ文字を容易に連続して入力することが可能になる。例えば、「W」という文字を3回連続して入力したい場合、利用者は「W」のボタン領域内で円を3回描くように指を移動させればよい。ここで、例えば、ボタン領域内での指の移動ベクトルの角度の総計が360度を超える度に1回転とカウントすることにより、回転数をカウントすることができる。
利用者が携帯電話端末1に「エレクトロニクス(EREKUTORONIKUSU)」と入力する場合の操作例を図6に示す。s11では、「E」のボタン領域内に指が置かれた後、指がタッチパネル2に触れたまま、「R」、「E」、「H」、「J」、「K」の順にボタンの上を通過している。この場合、携帯電話端末1は、指が置かれた「E」のボタンと、進入方向と脱出方向の角度差が閾値よりも大きい「R」、「E」、「K」のボタンが意図的に触れられたと判断する。
s12では、指がタッチパネル2に触れたまま、「U」、「Y」、「T」、「Y」、「U」、「I」の順にボタンの上を通過している。この場合、携帯電話端末1は、進入方向と脱出方向の角度差が閾値よりも大きい「U」、「T」のボタンが意図的に触れられたと判断する。s13では、指がタッチパネル2に触れたまま、「O」、「I」、「U」、「Y」、「T」、「R」、「T」、「Y」、「U」、「I」の順にボタンの上を通過している。この場合、携帯電話端末1は、進入方向と脱出方向の角度差が閾値よりも大きい「O」、「R」のボタンが意図的に触れられたと判断する。
s14では、指がタッチパネル2に触れたまま、「O」、「K」、「N」、「J」の順にボタンの上を通過している。この場合、携帯電話端末1は、進入方向と脱出方向の角度差が閾値よりも大きい「O」、「N」のボタンが意図的に触れられたと判断する。s15では、指がタッチパネル2に触れたまま、「I」、「K」、「U」、「G」、「F」、「D」、「S」、「R」、「T」、「Y」の順にボタンの上を通過している。この場合、携帯電話端末1は、進入方向と脱出方向の角度差が閾値よりも大きい「I」、「K」、「U」、「S」のボタンが意図的に触れられたと判断する。
s16では、タッチパネル2に触れたまま「U」のボタンへ移動した指が、「U」のボタン領域内でタッチパネル2から離れている。この場合、携帯電話端末1は、指がタッチパネル2から離れた位置にある「U」のボタンが意図的に触れられたと判断する。
以上の操作により、携帯電話端末1は、「E」、「R」、「E」、「K」、「U」、「T」、「O」、「R」、「O」、「N」、「I」、「K」、「U」、「S」、「U」の順にボタンが意図的に触れられたと判定し、これらのボタンに対応する文字を時系列に連結した「エレクトロニクス(EREKUTORONIKUSU)」を入力された文字列として受け付ける。この文字列は、利用者が入力しようとした文字列と一致する。
図6の例が示すように、携帯電話端末1は、利用者の指がタッチパネル2に触れたまま移動した軌跡上の各ボタンについて、意図して触れられたのか、単にその上を通過したに過ぎないのかを、利用者が自然に行う動作に基づいて精度よく判定して文字の入力を受け付ける。このため、利用者は、携帯電話端末1に対して文字を高速かつ正確に入力することができる。
なお、携帯電話端末1は、単に指が通過したに過ぎないと判定したボタンに対応する文字を無視するのではなく、入力精度を向上させるためにそれらの文字を利用する。具体的には、携帯電話端末1は、利用者が意図的に触れたと判定したボタンに対応する文字を時系列に連結した文字列を辞書と照合し、該当する単語が見つからない場合は、単に指が通過したに過ぎないと判定したボタンに対応する文字を補完して辞書との照合をやり直して正当な単語を見つけ出す。
例えば、利用者が携帯電話端末1に対して「WET」という単語を入力したい場合、利用者は、「W」のボタン領域内に指を置いた後、タッチパネル2に触れたまま指を「T」のボタンの方向へ移動させ、「T」のボタン領域内で指をタッチパネル2から離す。この場合、指が置かれた「W」のボタンと指が離れた「T」のボタンは意図的に触れられたと判定されるが、指が移動する軌道上にある「E」と「R」のボタンは、進入方向と脱出方向の角度差が小さいため、単に通過したに過ぎないと判定される。
しかしながら、利用者が意図的に触れたと判定したボタンに対応する文字を時系列に連結した文字列である「WT」は辞書に存在しない。そこで、携帯電話端末1は、単に通過したに過ぎないと判定したボタンに対応する文字を時系列に補完して、「WET」、「WRT」、「WERT」という候補を作成し、各候補を辞書と照合する。この場合、「WET」という単語が辞書に含まれるため、携帯電話端末1は、「WET」を入力された文字として受け付ける。この文字列は、利用者が入力しようとした文字列と一致する。
ところで、「WET」という単語を入力する場合、利用者は、タッチパネル2に触れたまま指を「W」のボタンから「T」のボタンの方向へ移動させる最中に、「E」のボタンの中で回転する軌道を描いてもよい。このような操作をすることにより、利用者は、「E」のボタンに意図的に触れたことを携帯電話端末1に明示的に示して、入力した文字列の識別精度を向上させることができる。
次に、携帯電話端末1の機能と制御部との関係を説明する。図7は、図1に示す携帯電話端末1の機能の概略構成を示すブロック図である。図7に示すように携帯電話端末1は、タッチパネル2と、入力部3と、電源部5と、通信部6と、スピーカ7と、マイク8と、記憶部9と、主制御部10と、RAM(Random Access Memory)11とを有する。
タッチパネル2は、表示部2Bと、表示部2Bに重畳されたタッチセンサ2Aとを有する。タッチセンサ2Aは、指を用いてタッチパネル2に対して行われた各種動作を、動作が行われた場所のタッチパネル2上での位置とともに検出する。タッチセンサ2Aによって検出される動作には、指をタッチパネル2の表面に接触させる動作や、指をタッチパネル2の表面に接触させたまま移動させる動作や、指をタッチパネル2の表面から離す動作が含まれる。なお、タッチセンサ2Aは、感圧式、静電式等のいずれの検出方式を採用していてもよい。表示部2Bは、例えば、液晶ディスプレイ(LCD、Liquid Crystal Display)や、有機EL(Organic Electro−Luminescence)パネルなどで構成され、文字、図形、画像等を表示する。
入力部3は、物理的なボタン等を通じて利用者の操作を受け付け、受け付けた操作に対応する信号を主制御部10へ送信する。電源部5は、蓄電池または外部電源から得られる電力を、主制御部10を含む携帯電話端末1の各機能部へ供給する。通信部6は、基地局によって割り当てられるチャネルを介し、基地局との間でCDMA方式などによる無線信号回線を確立し、基地局との間で電話通信及び情報通信を行う。スピーカ7は、電話通信における相手側の音声や着信音等を出力する。マイク8は、利用者等の音声を電気的な信号へ変換する。
記憶部9は、例えば、不揮発性メモリや磁気記憶装置であり、主制御部10での処理に利用されるプログラムやデータを保存する。具体的には、記憶部9は、メールの送受信や閲覧のためのメールプログラム9Aや、WEBページの閲覧のためのブラウザプログラム9Bや、オブジェクト閲覧画面の表示や属性情報の更新等を行うためのオブジェクト管理プログラム9Cを記憶する。
また、記憶部9は、文字入力時にタッチパネル2に表示される仮想キーボード4に関する定義を含む仮想キーボードデータ9Dや、正当な文字列が登録された辞書データ9Eや、オブジェクトの本体であるオブジェクトデータ9Fや、オブジェクトの属性情報が格納される属性データ9Gを記憶する。オブジェクトデータ9Fと属性データ9Gは、共通のID等によって対応付けられる。なお、オブジェクトの属性情報を属性データ9Gに格納するのではなく、オブジェクトデータ9F内に埋め込むこととしてもよい。
記憶部9には、携帯電話端末1の基本的な機能を実現するオペレーティングシステムプログラムや、氏名、電話番号、メールアドレス等が登録されたアドレス帳データ等の他のプログラムやデータも記憶される。
主制御部10は、例えば、CPU(Central Processing Unit)であり、携帯電話端末1の動作を統括的に制御する。具体的には、主制御部10は、記憶部9に記憶されているデータを必要に応じて参照しつつ、記憶部9に記憶されているプログラムを実行して、タッチパネル2、通信部6等を制御することによって各種処理を実行する。主制御部10は、記憶部9に記憶されているプログラムや、処理を実行することによって取得/生成/加工されたデータを、一時的な記憶領域を提供するRAM11に必要に応じて展開する。なお、主制御部10が実行するプログラムや参照するデータは、通信部6による無線通信でサーバ装置からダウンロードすることとしてもよい。
ここで、記憶部9が記憶する仮想キーボードデータ9Dの一例を図8に示す。図8の例に示すように、仮想キーボードデータ9Dには、仮想キーボード4に含まれるボタン毎に、ボタンに対応する文字、ボタンの位置(例えば、左上座標)、幅、高さ等が登録される。図8に示す例では、あるボタンに対応する文字が「Q」であり、そのボタンの左上座標がX=10、Y=10であり、そのボタンの幅と高さが20と40であること等が登録されている。
次に、携帯電話端末1がオブジェクトの属性情報の入力を受け付ける場合の動作について説明する。図9は、携帯電話端末1による属性情報入力処理の処理手順を示すフロー図である。図9に示す属性情報入力処理は、主制御部10が記憶部9からオブジェクト管理プログラム9Cを読み出して実行することにより実現される。なお、携帯電話端末1は、オブジェクト閲覧画面を起点としてオブジェクトの再生や編集等の処理を実行することができるが、ここでは属性情報の入力に注目して携帯電話端末1の動作について説明する。
まず、携帯電話端末1の主制御部10は、ステップS10として、タッチパネル2上にオブジェクト閲覧画面を表示する。そして、ステップS11として、タッチパネル2に指が触れるタッチ操作をタッチパネル2が検出すると、主制御部10は、ステップS12として、タッチパネル2の検出結果に基づいて指がタッチパネル2のどの位置に触れたのかを判定する。ここで、指が触れた位置が、オブジェクト閲覧画面に表示したオブジェクトのアイコンの表示領域内でなければ(ステップS13,No)、主制御部10は、ステップS23として、終了指示があったかを判定する。そして、終了指示があった場合は(ステップS23,Yes)、属性情報入力処理が終了され、終了指示がなかった場合は(ステップS23,No)、ステップS11以降が再実行される。
指が触れた位置が、オブジェクト閲覧画面に表示したオブジェクトのアイコンの表示領域内であった場合(ステップS13,Yes)、主制御部10は、ステップS14として、タッチパネル2上に仮想キーボード4を表示する。このように仮想キーボード4を動的に表示することにより、オブジェクトの属性情報を入力する状態へと遷移可能なことを利用者が直感的に理解しやすくなる。そして、主制御部10は、ステップS15として、タッチパネル2の検出結果を監視し、タッチパネル2への指の接触状況を判定する。
ここで、オブジェクト閲覧画面にアイコンとして表示されるオブジェクトを変更させるオブジェクト遷移動作(例えば、図2のs3の操作)が行われたと判定した場合(ステップS16,Yes)、主制御部10は、ステップS17として、オブジェクト遷移動作に従って、オブジェクト閲覧画面にアイコンとして表示されるオブジェクトを変更する。そして、主制御部10は、ステップS22として、仮想キーボード4を消去した後、ステップS23として、終了指示があったかを判定する。そして、終了指示があった場合は(ステップS23,Yes)、属性情報入力処理が終了され、終了指示がなかった場合は(ステップS23,No)、ステップS11以降が再実行される。
また、タッチパネル2への指の接触状況を判定した結果、指がタッチパネル2から離れた(タッチ終了)と判定された場合(ステップS16,No、ステップS18,Yes)、主制御部10は、ステップS22として、仮想キーボード4を消去した後、ステップS23として、終了指示があったかを判定する。そして、終了指示があった場合は(ステップS23,Yes)、属性情報入力処理が終了され、終了指示がなかった場合は(ステップS23,No)、ステップS11以降が再実行される。
また、タッチパネル2への指の接触状況を判定した結果、指がタッチパネル2への接触を保ったまま仮想キーボード4の表示領域内に入ったと判定された場合(ステップS18,No、ステップS19,Yes)、主制御部10は、ステップS20として、文字入力処理を実行して、入力された文字列を属性情報として受け付ける。なお、文字入力処理の詳細については後述する。
続いて、主制御部10は、ステップS21として、入力された文字を、ステップS12で指が置かれたアイコンに対応するオブジェクトデータ9Fと対応付けて、属性データ9Gとして記憶部9に保存する。そして、主制御部10は、ステップS22として、仮想キーボード4を消去した後、ステップS23として、終了指示があったかを判定する。そして、終了指示があった場合は(ステップS23,Yes)、属性情報入力処理が終了され、終了指示がなかった場合は(ステップS23,No)、ステップS11以降が再実行される。
タッチパネル2への指の接触状況を判定した結果、オブジェクト遷移動作、タッチ終了、仮想キーボード4の表示領域内への指の進入のいずれも検知されなかった場合(ステップS19,No)、主制御部10は、ステップS15へ戻って、タッチパネル2の検出結果を監視し、タッチパネル2への指の接触状況を判定する。
次に、図10に示したフロー図を参照しながら、図9のステップS20で実行される文字入力処理について説明する。
まず、主制御部10は、ステップS30として、入力文字バッファ12をクリアし、ステップS31として、一時バッファ13をクリアする。入力文字バッファ12は、指がタッチパネル2に接触したまま移動した軌跡上の各ボタンに対応する文字が優先度と対応づけて格納される記憶領域であり、RAM11に設けられる。一時バッファ13は、指がタッチパネル2に接触したまま移動した軌跡上の各ボタンのうち、指が単にその上を通過したに過ぎないと判定されたボタンに対応する文字が一時的に格納される記憶領域であり、RAM11に設けられる。
入力文字バッファ12の一例を図11に示す。図11は、タッチパネル2に対して図6に示した操作が行われた場合の入力文字バッファ12を示している。図11の例において、入力文字バッファ12の上段には、指がタッチパネル2に接触したまま移動した軌跡上の各ボタンに対応する文字が格納され、下段には、上段の文字に対応づけられた優先度が格納されている。図11の例が示すように、入力文字バッファ12には、指がタッチパネル2に接触したまま移動した軌跡上の各ボタンに対応する文字が時系列に格納される。
優先度は、入力文字バッファ12に含まれる文字を連結して文字列を構成する際に、対応付けられた文字を採用するか否かを決定するために用いられる。本実施例では、優先度の値が小さいほど、対応付けられた文字が優先的に採用されることとする。具体的には、指が意図的に触れたと判断されたボタンに対応する文字には優先度として「1」を対応付け、指が単に通過したに過ぎないと判断されたボタンに対応する文字には優先度として「2」を対応付ける。
一時バッファ13の一例を図12に示す。図12は、図6のs11において指が「J」のボタンから出た時点での一時バッファ13を示している。図12の例が示すように、一時バッファ13には、指が単にその上を通過したに過ぎないと判定されたボタンに対応する文字が、指がいずれかのボタンに意図的に触れたと判定されるまで、時系列に格納される。
入力文字バッファ12と一時バッファ13のクリアを終えると、主制御部10は、ステップS32として、RAM11に設けた入力完了フラグを0に設定する。入力完了フラグは、1回分の文字入力が完了したか否かを判定するために用いられる。ここでいう1回分の文字入力とは、指をタッチパネル2に接触させてから離すまでの間に行われる文字入力を意味する。
続いて、主制御部10は、ステップS33として、タッチパネル2の最新の検出結果を取得し、ステップS34として、文字入力判定処理を実行する。文字入力判定処理において、主制御部10は、指がタッチパネル2に接触したまま移動した軌跡上に表示されている各ボタンに対応する文字を入力文字バッファ12や一時バッファ13に格納していく。なお、文字入力判定処理の詳細については後述する。
文字入力判定処理の実行後、主制御部10は、ステップS35として、入力完了フラグが0のままであるかを判定する。ここで、入力完了フラグが0のままである場合、すなわち、1回分の文字入力がまだ完了していない場合(ステップS35,Yes)、主制御部10は、ステップS36として、文字列検索処理を実行して入力文字バッファ12に格納されている文字を連結した文字列とマッチする文字列を辞書データ9Eから検索する。なお、文字列検索処理の詳細については後述する。
続いて、主制御部10は、ステップS37として、文字列検索処理によって得られた1ないし複数の文字列を図13に示すように入力文字列候補表示領域14に表示する。そして、主制御部10は、入力完了フラグが0でない、すなわち、1回分の文字入力が完了したとステップS35で判定されるまで、ステップS33〜ステップS37を繰り返して実行する。
ステップS35で入力完了フラグが0でなくなっていた場合(ステップS35,No)、主制御部10は、ステップS38として、文字列検索処理を実行して入力文字バッファ12に格納されている文字を連結した文字列とマッチする文字列を辞書データ9Eから検索する。ここで、文字列検索処理の処理結果として得られた文字列が1つだけであった場合(ステップS39,Yes)、主制御部10は、ステップS40として、文字列検索処理の処理結果として得られた文字列を入力された文字列として受け付ける。
一方、文字列検索処理の処理結果として得られた文字列が複数あった場合(ステップS39,No)、主制御部10は、ステップS41として、文字列検索処理の処理結果として得られた複数の文字列を図13に示すように入力文字列候補表示領域14に表示する。そして、主制御部10は、ステップS42として、タッチパネル2の最新の検出結果を取得し、ステップS43として、入力文字列候補表示領域14に表示した文字列のいずれかが選択されたかを判定する。
ここで、いずれの文字列も選択されていなければ(ステップS43,No)、主制御部10は、いずれかの文字列が選択されるまで、ステップS42〜ステップS43を繰り返して実行する。なお、ステップS42において利用者の指が入力文字列候補表示領域14以外の領域に触れるといった入力のキャンセルを示す動作が検出された場合に、主制御部10が、文字入力処理を終了させることとしてもよい。
ステップS43で入力文字列候補表示領域14に表示した文字列のいずれかが選択されていた場合(ステップS43,Yes)、主制御部10は、ステップS44として、選択された文字列を入力された文字列として受け付ける。
次に、図14に示したフロー図を参照しながら、図10のステップS34で実行される文字入力判定処理について説明する。主制御部10は、ステップS50として、タッチパネル2で検出された動作がタッチパネル2への接触を開始する動作、すなわち、指をタッチパネル2の表面に接触させる動作であったかを、タッチパネル2の検出結果に基づいて判定する。
検出された動作がタッチパネル2への接触を開始する動作であった場合(ステップS50,Yes)、主制御部10は、ステップS51として、接触が開始された位置を仮想キーボードデータ9Dと照合して、接触が開始された位置がいずれかのボタン領域内であったかを判定する。接触が開始された位置がいずれかのボタン領域内であった場合(ステップS51,Yes)、ボタンは意図して触れられたと考えられるので、主制御部10は、ステップS52として、そのボタンに対応する文字を優先度「1」と対応付けて入力文字バッファ12に追加する。ボタンに対応する文字は、仮想キーボードデータ9Dから取得される。
そして、主制御部10は、ステップS53として、出力フラグを「1」に設定して文字入力判定処理を終了させる。出力フラグは、RAM11に設けられ、指が現在接触している位置に表示されているボタンに対応する文字を入力文字バッファ12または一時バッファ13に出力済みであるか否かを判定するために用いられる。出力フラグの値が「0」であることは、指が現在接触している位置に表示されているボタンに対応する文字をいずれのバッファにもまだ出力していないことを示す。出力フラグの値が「1」であることは、指が現在接触している位置に表示されているボタンに対応する文字をいずれかのバッファに出力済みであることを示す。
ステップS51において、接触が開始された位置がボタン領域内でなかった場合(ステップS51,No)、主制御部10は、特に処理を行わずに文字入力判定処理を終了させる。
ステップS50において、タッチパネル2で検出された動作がタッチパネル2への接触を開始する動作でなかった場合(ステップS50,No)、主制御部10は、ステップS54として、タッチパネル2で検出された動作がタッチパネル2への接触を保ったまま指をボタン領域内に進入させる動作であったかを、タッチパネル2の検出結果に基づいて判定する。検出された動作がタッチパネル2への接触を保ったまま指をボタン領域内に進入させる動作であったか否かは、タッチパネル2の最新の検出結果が示す接触位置とその直前の検出結果が示す接触位置とを仮想キーボードデータ9Dと照合することによって判定される。
検出された動作がタッチパネル2への接触を保ったまま指をボタン領域内に進入させる動作であった場合(ステップS54,Yes)、主制御部10は、ステップS55として、移動方向履歴をクリアする。移動方向履歴は、ボタン領域内で指がどの方向へ移動したかを示す方向ベクトルが時系列に記録されるデータであり、RAM11に記憶される。
続いて、主制御部10は、ステップS56として、指がボタン領域内に進入した方向を示す方向ベクトルを取得して、取得した方向ベクトルを移動方向履歴に追加する。そして、主制御部10は、ステップS57として、出力フラグを「0」に設定して文字入力判定処理を終了させる。
なお、タッチパネル2の検出結果に指の移動方向を示す情報が含まれている場合、方向ベクトルは、タッチパネル2の検出結果から取得される。タッチパネル2の検出結果に指の移動方向を示す情報が含まれていない場合、方向ベクトルは、タッチパネル2の最新の検出結果が示す接触位置とその直前の検出結果が示す接触位置とから算出される。
ステップS54において、タッチパネル2で検出された動作がタッチパネル2への接触を保ったまま指をボタン領域内に進入させる動作でなかった場合(ステップS54,No)、主制御部10は、ステップS58として、タッチパネル2で検出された動作がタッチパネル2への接触を保ったまま指をボタンの外へ出す動作であったかを、タッチパネル2の検出結果に基づいて判定する。検出された動作がタッチパネル2への接触を保ったまま指をボタンの外へ出す動作であったか否かは、タッチパネル2の最新の検出結果が示す接触位置とその直前の検出結果が示す接触位置とを仮想キーボードデータ9Dと照合することによって判定される。
検出された動作がタッチパネル2への接触を保ったまま指をボタンの外へ出す動作であった場合(ステップS58,Yes)、主制御部10は、ステップS59として、出力フラグが「0」であるかを判定する。ここで、出力フラグが「0」でなかった場合、すなわち、指がそれまで内部に位置していたボタンに対応する文字をいずれかのバッファに出力済みの場合(ステップS59,No)、主制御部10は、特に処理を行わずに文字入力判定処理を終了させる。
一方、出力フラグが「0」であった場合(ステップS59,Yes)、主制御部10は、ステップS60として、最新の移動ベクトル、すなわち、指がボタンの外へ出た方向を示す方向ベクトルを取得し、移動方向履歴の先頭の方向ベクトルとの角度差を算出する。ここで算出された角度差は、指がボタンに進入したときの方向と指がボタンから脱出したときの方向の相違の大きさを表す。
算出された角度差が所定の閾値以下の場合(ステップS61,No)、指は単にボタンを通過したに過ぎないと考えられるため、主制御部10は、ステップS62として、そのボタンに対応する文字を一時バッファ13に追加して文字入力判定処理を終了させる。
一方、算出された角度差が所定の閾値より大きい場合(ステップS61,Yes)、ボタンは意図的に触れられたと考えられるため、主制御部10は、そのボタンに対応する文字が、指が通過した軌道上の他のボタンに対応する文字とともに時系列に入力文字バッファ12に格納されるように、ステップS63以降の処理手順を実行する。
ステップS63として、主制御部10は、一時バッファ13に格納されている文字を優先度「2」と対応付けて入力文字バッファ12へ追加し、続いて、ステップS64として、ボタンに対応する文字を優先度「1」と対応付けて入力文字バッファ12に追加する。そして、主制御部10は、ステップS65として、一時バッファ13をクリアして文字入力判定処理を終了させる。
ステップS58において、タッチパネル2で検出された動作がタッチパネル2への接触を保ったまま指をボタンの外へ出す動作でなかった場合(ステップS58,No)、主制御部10は、ステップS66として、タッチパネル2で検出された動作がタッチパネル2への接触を終了させる動作、すなわち、指をタッチパネル2から離す動作であったかを、タッチパネル2の検出結果に基づいて判定する。
検出された動作がタッチパネル2への接触を終了させる動作であった場合(ステップS66,Yes)、主制御部10は、ステップS67として、接触が終了された位置を仮想キーボードデータ9Dと照合して、接触が終了された位置がいずれかのボタン領域内であったかを判定する。接触が終了された位置がいずれかのボタン領域内であった場合(ステップS67,Yes)、ボタンは意図して触れられたと考えられるため、主制御部10は、そのボタンに対応する文字が、指が通過した軌道上の他のボタンに対応する文字とともに時系列に入力文字バッファ12に格納されるように、ステップS68以降の処理手順を実行する。
ステップS68として、主制御部10は、出力フラグが「0」であるかを判定する。ここで、出力フラグが「0」である場合、すなわち、意図して触れられたと考えられるボタンに対応する文字がまだいずれのバッファにも出力されていない場合(ステップS68,Yes)、主制御部10は、ステップS69として、一時バッファ13に格納されている文字を優先度「2」と対応付けて入力文字バッファ12へ追加する。そして、主制御部10は、ステップS70として、ボタンに対応する文字を優先度「1」と対応付けて入力文字バッファ12に追加する。
そして、タッチパネル2への接触を終了させる動作が行われたということは、一回分の文字入力が完了したことを意味するので、主制御部10は、ステップS71として、入力完了フラグを「1」に設定して文字入力判定処理を終了させる。
接触が終了された位置がボタン領域内でなかった場合(ステップS67,No)、または、出力フラグが「0」でなかった場合(ステップS68,No)、主制御部10は、ステップS71として、入力完了フラグを「1」に設定する処理のみを行って文字入力判定処理を終了させる。
なお、接触が終了された位置がボタン領域内でなかった場合、または、出力フラグが「0」でなかった場合に、一時バッファ13に格納されている文字を優先度「2」と対応付けて入力文字バッファ12へ追加することとしてもよい。
ステップS66において、タッチパネル2で検出された動作がタッチパネル2への接触を終了させる動作でなかった場合(ステップS66,No)、主制御部10は、ステップS72として、タッチパネル2で検出された動作がタッチパネル2への接触を保ったままボタン領域内で指を移動させる動作であったかを、タッチパネル2の検出結果に基づいて判定する。
検出された動作がタッチパネル2への接触を保ったままボタン領域内で指を移動させる動作であった場合(ステップS72,Yes)、主制御部10は、ステップS73として、指がボタン領域内で移動した方向を示す方向ベクトルを取得して、取得した方向ベクトルを移動方向履歴に追加する。そして、主制御部10は、ステップS74として、移動方向履歴に記録されている各方向ベクトルを参照して、指がタッチパネル2に触れたままボタン領域内で回転する軌跡を描いて移動したかを判定する。
ここで、指がタッチパネル2に触れたままボタン領域内で回転する軌跡を描いて移動していた場合(ステップS74,Yes)、ボタンは意図的に触れられたと考えられるため、主制御部10は、そのボタンに対応する文字が、指が通過した軌道上の他のボタンに対応する文字とともに時系列に入力文字バッファ12に格納されるように、ステップS75以降の処理手順を実行する。
ステップS75として、主制御部10は、一時バッファ13に格納されている文字を優先度「2」と対応付けて入力文字バッファ12へ追加し、続いて、ステップS76として、ボタンに対応する文字を優先度「1」と対応付けて入力文字バッファ12に追加する。そして、主制御部10は、ステップS77として、出力フラグを「1」に設定し、ステップS78として、移動方向履歴をクリアして文字入力判定処理を終了させる。
ステップS72において、タッチパネル2で検出された動作がタッチパネル2への接触を保ったままボタン領域内で指を移動させる動作でなかった場合、すなわち、指が仮想キーボード4上のボタン外を移動していた場合(ステップS72,No)、主制御部10は、特に処理を行わずに文字入力判定処理を終了させる。
なお、タッチパネル2への接触を保ったまま指を仮想キーボード4の外へ出す動作が検出された場合に、タッチパネル2への接触を終了させる動作が検出された場合と同様の処理手順を実行し、タッチパネル2への接触を保ったまま指を仮想キーボード4の中へ移動させる動作が検出された場合に、タッチパネル2への接触を開始する動作が検出された場合と同様の処理手順を実行することとしてもよい。このようにすることにより、利用者は、一回分の文字入力を終えた後に、指を上げ下げすることなくタッチパネル2への接触を保ったまま、迅速に次の入力に移ることが可能になる。
次に、図15に示したフロー図を参照しながら、図10のステップS36およびステップS38で実行される文字列検索処理について説明する。主制御部10は、ステップS90として、入力文字バッファ12から優先度が「1」である文字を取得し、取得した文字を組み合わせて第1候補文字列を生成する。
例えば、「A」、「B」、「C」、「D」という4つの文字列がこの順序で入力文字バッファ12に格納され、「A」と「D」の優先度が「1」で、「B」と「C」の優先度が「2」であったものとする。この場合、主制御部10は、優先度が「1」の文字を格納順に連結して「AD」という第1候補文字列を生成する。
続いて、主制御部10は、ステップS91として、第1候補文字列にマッチする文字列を辞書データ9Eから検索する。
本実施例では、例えば第1候補文字列が「ABC」の場合、「A*B*C*」というパターンにマッチする文字列が辞書データ9Eから検索されるものとする。ここで、「*」は、任意の文字にマッチするワイルドカードである。すなわち、本実施例では、第1候補文字列と先頭の文字が一致し、第1候補文字列の2番目以降の各文字が、0個以上の文字を介在させて第1候補文字列と同じ順序で出現する文字列が、第1候補文字列とマッチすると文字列として検索される。
このようにマッチングさせることにより、指によって意図的に触れられたことを判別できないボタンがあった場合でも、入力された文字列を正しく識別することができる可能性を高めることができる。
検索結果として複数の文字列が得られた場合(ステップS92,Yes)、主制御部10は、検索結果を絞り込むために、ステップS93として、入力文字バッファ12から優先度が「2」である文字を取得し、取得した文字を第1候補文字列に補完して、1ないし複数の第2候補文字列を生成する。
例えば、上記と同様に、「A」、「B」、「C」、「D」という4つの文字列がこの順序で入力文字バッファ12に格納され、「A」と「D」の優先度が「1」で、「B」と「C」の優先度が「2」であったものとする。この場合、主制御部10は、格納順序を守りつつ、第1候補文字列である「AD」に優先度が「2」の文字を少なくとも1つ補完して、「ABD」、「ACD」、「ACDB」という3つの第2候補文字列を生成する。
続いて、主制御部10は、ステップS94として、第2候補文字列のいずれかにマッチする文字列を辞書データ9Eから検索する。マッチングの方式は、第1候補文字列の場合と同様である。
そして、ステップS94において、いずれかの文字列が検索された場合(ステップS95,Yes)、主制御部10は、ステップS96として、検索された文字列を検索結果として文字列検索処理を終了させる。一方、ステップS94において、いずれの文字列も検索されなかった場合(ステップS95,No)、主制御部10は、ステップS97として、ステップS91において第1候補文字列とマッチした文字列を検索結果として文字列検索処理を終了させる。
ステップS91において検索結果として1つの文字列のみが得られた場合(ステップS92,No、かつ、ステップS98,Yes)、主制御部10は、ステップS96として、検索された文字列を検索結果として文字列検索処理を終了させる。ステップS91において検索結果として1つの文字列も得られなかった場合(ステップS98,No)、主制御部10は、ステップS99として、第1候補文字列、すなわち、優先度が「1」の文字を格納順に連結した文字列を検索結果として文字列検索処理を終了させる。
上述してきたように、携帯電話端末1は、操作対象のオブジェクトを任意に変更可能なオブジェクト閲覧画面を表示した状態で、オブジェクトを編集状態等の他の状態へ遷移させることなく、そのまま属性情報の入力を開始できるように構成されているので、利用者は、複数のオブジェクトの属性情報を迅速に入力することができる。
また、携帯電話端末1は、オブジェクト閲覧画面でオブジェクトを選択してからオブジェクトの属性情報を入力するまでの動作を、指をタッチパネル2から離すことなく行うことができるように構成されているので、利用者は、オブジェクトの属性情報の入力を高速に行うことができる。
なお、携帯電話端末1の構成は、本発明の要旨を逸脱しない範囲で任意に変更することができる。例えば、本実施例では、指がタッチパネル2から離れずに移動した軌跡上の各ボタンに対応する文字に優先度として「1」または「2」を対応付けることとしたが、文字に対応付ける優先度をさらに細分化してもよい。
例えば、意図的に触れられたと判定されたボタンに対応する文字には優先度として「1」を対応付け、指が単に通過したに過ぎないと判定されたボタンに対応する文字については優先度として「2」〜「5」のいずれかの値を対応付けることとしてもよい。
この場合、例えば、指が単に通過したに過ぎないと判定されたボタンに対応する文字について、指がボタンに進入したときの移動方向と指がボタンから出たときの移動方向の角度差が大きいほど高い優先度を対応付けることとしてもよい。角度差が大きいほど、意図的に触れられたボタンである可能性が高いためである。
また、指が単に通過したに過ぎないと判定されたボタンに対応する文字について、指が通過した軌跡がボタンの中心に近いほど高い優先度を対応付けることとしてもよい。通過した軌跡がボタンの中心に近いほど、意図的に触れられたボタンである可能性が高いためである。
そして、このように優先度を細分化した場合、文字列検索処理においては、優先度の高い文字ほど第2候補文字列の作成時に優先的に使用される。具体的には、優先度が「1」の文字を組み合わせた第1候補文字列に複数の文字列がマッチした場合、まず、優先度が「2」の文字を第1候補文字列に補完して検索結果の絞込みが試みられる。そして、優先度が「2」の文字を補完しても複数の文字列がマッチした場合、優先度が「3」の文字を第1候補文字列にさらに補完して検索結果の絞込みが試みられる。
以下同様に、検索結果が1つに絞り込まれるまで、優先度が高い順に文字が補完に利用される。このように、優先度を細分化することにより、意図的に触れられた可能性が高い順に文字を組み合わせて検証対象の文字列を生成することができるため、入力された文字列の識別精度を向上させることができる。
また、オブジェクト管理プログラム9Cは、他のプログラムと一体に構成されていてもよいし、複数のプログラムに分割されていてもよい。例えば、オブジェクト管理プログラム9Cは、オブジェクト閲覧画面の表示や、オブジェクトの再生、編集等を行うプログラムと、仮想キーボード4を表示して文字の入力を受け付けるプログラムとに分割されていてもよい。
また、図10を参照しながら説明した文字入力処理では、主制御部10がタッチパネル2から新たに検出結果を取得するたびに検索された文字列を入力文字列候補表示領域14に表示することとしているが、一回分の文字入力が完了するまではこのような表示は行わずに、一回分の文字入力が完了した後に文字列検索処理で複数の文字列が検索された場合にのみ検索された文字列を入力文字列候補表示領域14に表示することとしてもよい。
また、図15を参照しながら説明した文字列検索処理における辞書データとのマッチング処理は、完全一致や前方一致等の他のマッチング方式を用いることとしてもよい。また、入力予測技術を用いて、利用者が入力しようとしている文字列を予測し、予測された文字列を検索結果として扱うこととしてもよい。入力予測技術とは、文字列の結びつきの強さや使用頻度等に基づいて、既に入力された文字列と入力途中の文字列から、利用者が入力しようとしている文字列を予測する技術である。
また、上記の実施例では、指がタッチパネル2に接触したまま移動した軌跡上に表示されているボタンに対応する文字のうち、特定の動作が検出された位置に表示されているボタンに対応する文字を優先して入力された文字列を識別することとしているが、本発明はこれに限定されるものではなく、指がタッチパネル2に接触したまま移動した軌跡上またはその近隣に表示されているボタンに対応する文字を含む文字列を入力された文字列として受け付けるものであればよい。
また、上記の実施例では、特定の動作として、ボタン領域内でタッチパネル2に接触する動作や、ボタン領域内でタッチパネル2から指を離す動作等について説明したが、これらの動作は特定の動作の例であり、他の動作を特定の動作として扱ってもよい。
また、図2に示した入力文字表示画面15や属性選択画面16について、ボタンや選択肢の表示領域内で特定の動作が検出された場合に、そのボタンや選択肢が選択されるように構成してもよい。
また、上記の実施例で示したオブジェクト閲覧画面は、一例であり、異なる画面構成や操作性をもつものであってもよい。オブジェクト閲覧画面の他の例を図16および図17に示す。
図16に示すオブジェクト閲覧画面では、s21のように、オブジェクトOB1〜OB3に対応する3つのアイコンが同じ大きさで横に並んで表示される。この状態で、利用者が、いずれかのアイコンの表示領域内に指を置いて、タッチパネル2との接触を保ったまま指を右方向または左方向へ移動させると、その動作に応じて、図2のs3〜s4と同様にアイコンがシフトして、別のオブジェクトのアイコンがオブジェクト閲覧画面に表示される。
また、利用者が、いずれかのアイコンの表示領域内に指を置くと、図2のs2と同様に仮想キーボード4が表示される。そして、利用者が、タッチパネル2との接触を保ったまま指を仮想キーボード4内へ移動させると、図2のs6と同様に、携帯電話端末1は、仮想キーボード4から属性情報の入力を受け付ける状態となる。
また、s22のように、利用者が、所定の操作を行って複数のアイコンを選択状態にした上で、選択状態にあるアイコンの表示領域内に指を置いた場合も、携帯電話端末1は、仮想キーボード4を表示させる。そして、s23のように、利用者が、タッチパネル2との接触を保ったまま指を仮想キーボード4内へ移動させると、s24のように、携帯電話端末1は、仮想キーボード4から属性情報の入力を受け付ける状態となり、受け付けた文字列を入力文字表示画面15に表示する。
そして、属性情報の入力が完了して、利用者が入力文字表示画面15の保存ボタンをタップする等して属性情報の保存を指示すると、携帯電話端末1は、入力された文字列を、選択状態にあるアイコンに対応する各オブジェクトと対応付けて属性情報として保存する。なお、属性情報を保存するに際しては、図2に示したような属性選択画面16を表示して、どの属性情報として保存するかを利用者に選択させてもよい。
図17に示すオブジェクト閲覧画面では、s31のように、操作対象となっているオブジェクトOB1のアイコンまたはオブジェクトの内容がタッチパネル2に全画面表示される。そして、s32のように、利用者が、タッチパネル2の四隅のいずれかに指を置いて、タッチパネル2との接触を保ったまま指を対角方向へ移動させると、指の移動に連動して、オブジェクトOB1の一部がめくれて、表示順序が次のオブジェクトであるオブジェクトOB2が下から露出するように表示される。
そして、s33のように、利用者が、指の移動を継続すると、ある時点で、携帯電話端末1は、仮想キーボード4を表示させる。そして、利用者が、さらに指の移動を継続すると、s34のように、オブジェクトOB1に代わって、オブジェクトOB2が操作対象となってタッチパネル2に全画面表示される。
また、s35のように、仮想キーボード4が表示された状態で、利用者が、タッチパネル2との接触を保ったまま指を仮想キーボード4内へ移動させると、s36のように、携帯電話端末1は、仮想キーボード4から属性情報の入力を受け付ける状態となり、受け付けた文字列を入力文字表示画面15に表示する。
属性情報の入力が完了して、利用者が入力文字表示画面15の保存ボタンをタップする等して属性情報の保存を指示すると、携帯電話端末1は、s37のように属性選択画面16を表示する。属性選択画面16においていずれかの選択肢が選択されると、携帯電話端末1は、入力された文字列を、選択された選択肢に対応する属性情報として、オブジェクトOB1と対応付けて記憶させる。そして、携帯電話端末1は、s38に示すように、仮想キーボード4と属性選択画面16を消去して、オブジェクト閲覧画面をs31の時点と同様の状態に戻す。