(57)【要約】【課題】誤入力を低減でき且つ仮想キーの操作感を改善することができる情報処理装置を実現する。【解決手段】キー選択手段は、タッチスクリーンディスプレイ上の複数の仮想キーの一つがタッチされた場合、複数の仮想キーからタッチされた仮想キーを入力キー候補として選択し、タッチ位置の移動に従って入力キー候補を別の仮想キーに変更する。出力手段は、入力キー候補が選択されている状態でタッチスクリーンディスプレイのタッチ状態が解除された場合、入力キー候補として選択されている仮想キーに関連付けられたコードデータを出力する。振動制御手段は、仮想キーの一つがタッチされた場合バイブレータを第１の振動パターンで振動させ、入力キー候補が選択されている状態でタッチスクリーンディスプレイのタッチ状態が解除された場合バイブレータを第２の振動パターンで振動させる。【選択図】図５
2011248400.tif 000002
【特許請求の範囲】
【請求項１】
複数の仮想キーを表示可能なタッチスクリーンディスプレイと、
前記複数の仮想キーの一つがタッチされた場合、前記複数の仮想キーからタッチされた仮想キーを入力キー候補として選択し、前記タッチスクリーンディスプレイ上のタッチ位置の移動に従って前記入力キー候補を別の仮想キーに変更するキー選択手段と、
前記入力キー候補が選択されている状態で前記タッチスクリーンディスプレイのタッチ状態が解除された場合、前記入力キー候補として選択されている仮想キーに関連付けられたコードデータを出力する出力手段と、
バイブレータと、
前記複数の仮想キーの一つがタッチされた場合、前記バイブレータを第１の振動パターンで振動させ、前記入力キー候補が選択されている状態で前記タッチスクリーンディスプレイのタッチ状態が解除された場合、前記バイブレータを第２の振動パターンで振動させる振動制御手段とを具備する情報処理装置。
【請求項２】
前記振動制御手段は、前記複数の仮想キーの一つがタッチされた後に前記タッチ位置の移動によって前記タッチ位置が仮想キー間の境界上に移動された場合、前記バイブレータの振動を停止させるように構成されている請求項１記載の情報処理装置。
【請求項３】
前記振動制御手段は、前記タッチ位置の移動によって前記タッチ位置が前記仮想キー間の境界上から別の仮想キー上に移動された場合、前記バイブレータを前記第１の振動パターンで振動させるように構成されている請求項２記載の情報処理装置。
【請求項４】
情報処理装置のタッチスクリーンディスプレイを用いて、タッチされたキーに対応するコードデータを入力するための入力方法であって、
コードデータをそれぞれ入力するための複数の仮想キーを前記タッチスクリーンディスプレイ上に表示し、
前記複数の仮想キーの一つがタッチされた場合、前記複数の仮想キーからタッチされた仮想キーを入力キー候補として選択し、
前記タッチスクリーンディスプレイ上のタッチ位置の移動に従って前記入力キー候補を別の仮想キーに変更し、
前記入力キー候補が選択されている状態で前記タッチスクリーンディスプレイのタッチ状態が解除された場合、前記入力キー候補として選択されている仮想キーに関連付けられたコードデータを出力し、
前記複数の仮想キーの一つがタッチされた場合、前記情報処理装置内のバイブレータを第１の振動パターンで振動させ、
前記入力キー候補が選択されている状態で前記タッチスクリーンディスプレイのタッチ状態が解除された場合、前記バイブレータを第２の振動パターンで振動させる入力方法。
【請求項５】
さらに、前記複数の仮想キーの一つがタッチされた後に前記タッチ位置の移動によって前記タッチ位置が仮想キー間の境界上に移動された場合、前記バイブレータの振動を停止させる請求項４記載の入力方法。
【請求項６】
さらに、前記タッチ位置の移動によって前記タッチ位置が前記仮想キー間の境界上から別の仮想キー上に移動された場合、前記バイブレータを前記第１の振動パターンで振動させる請求項５記載の入力方法。
【請求項７】
コンピュータのタッチスクリーンディスプレイを用いて、タッチされたキーに対応するコードデータを入力するためのプログラムであって、
コードデータをそれぞれ入力するための複数の仮想キーを前記タッチスクリーンディスプレイ上に表示する手順と、
前記複数の仮想キーの一つがタッチされた場合、前記複数の仮想キーからタッチされた仮想キーを入力キー候補として選択する手順と、
前記タッチスクリーンディスプレイ上のタッチ位置の移動に従って前記入力キー候補を別の仮想キーに変更する手順と、
前記入力キー候補が選択されている状態で前記タッチスクリーンディスプレイのタッチ状態が解除された場合、前記入力キー候補として選択されている仮想キーに関連付けられたコードデータを出力する手順と、
前記複数の仮想キーの一つがタッチされた場合、前記コンピュータ内のバイブレータを第１の振動パターンで振動させる手順と、
前記入力キー候補が選択されている状態で前記タッチスクリーンディスプレイのタッチ状態が解除された場合、前記バイブレータを第２の振動パターンで振動させる手順とを前記コンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、仮想キー群を用いてコードデータを入力する情報処理装置および入力方法に関する。
【背景技術】
【０００２】
近年、携帯型パーソナルコンピュータ、ＰＤＡといった様々な情報処理装置が開発されている。情報処理装置の多くは、入力デバイスとして機能するキーボードを有している。
【０００３】
また、最近では、ユーザによるキー入力を支援するために、タッチパネルのようなタッチスクリーンディスプレイに仮想キーボードを表示するシステムも開発されている。仮想キーボードは一般に複数のキー（仮想キー）を含む。ユーザは、画面上に表示されるキー中の目的のキーを例えば指先でタッチすることにより、キーデータを入力することができる。
【０００４】
しかし、画面は平であるので、従来の仮想キーボードは、キーを押した感触をユーザに対して与えることは困難である。仮想キーボードの操作感を改善するための方法としては、画面上のあるキーがタッチされた時に振動を発生させる方法が知られている。また、タッチパネル上への押圧強度に応じて、発生する振動を変える方法も知られている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−１１０３８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
振動を使用した従来の方法では、画面上のキーがタッチされた時点で振動が発生する。これは、キーがタッチされた時点でそのキーが入力キーとして確定されることを前提としているためである。しかし、ユーザは目的のキー以外のキーを誤ってタッチしてしまうかもいれない。したがって、もしキーがタッチされた時点で入力キーが確定されてしまうと、キーの誤入力が発生する可能性がある。
【０００７】
本発明は上述の事情を考慮してなされたものであり、誤入力を低減でき且つ仮想キーの操作感を改善することができる情報処理装置および入力方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
実施形態によれば、情報処理装置は、複数の仮想キーを表示可能なタッチスクリーンディスプレイと、キー選択手段と、出力手段と、バイブレータと、振動制御手段とを具備する。前記キー選択手段は、前記複数の仮想キーの一つがタッチされた場合、前記複数の仮想キーからタッチされた仮想キーを入力キー候補として選択し、前記タッチスクリーンディスプレイ上のタッチ位置の移動に従って前記入力キー候補を別の仮想キーに変更する。前記出力手段は、前記入力キー候補が選択されている状態で前記タッチスクリーンディスプレイのタッチ状態が解除された場合、前記入力キー候補として選択されている仮想キーに関連付けられたコードデータを出力する。前記振動制御手段は、前記複数の仮想キーの一つがタッチされた場合、前記バイブレータを第１の振動パターンで振動させ、前記入力キー候補が選択されている状態で前記タッチスクリーンディスプレイのタッチ状態が解除された場合、前記バイブレータを第２の振動パターンで振動させる。
【図面の簡単な説明】
【０００９】
【図１】実施形態に係る情報処理装置の外観を示す斜視図。
【図２】同実施形態の情報処理装置のタッチスクリーンディスプレイに表示される仮想キーボードの例を示す図。
【図３】同実施形態の情報処理装置の使用形態の例を示す図。
【図４】同実施形態の情報処理装置の使用形態の他の例を示す図。
【図５】同実施形態の情報処理装置によって実行されるキー入力動作を説明するための図。
【図６】同実施形態の情報処理装置の仮想キーボード上の隣接する２つのキー間の境界に指が触れた場合に実行される振動停止処理を説明するための図。
【図７】同実施形態の情報処理装置によって実行されるキー入力動作の別の例を説明するための図。
【図８】同実施形態の情報処理装置のシステム構成を示すブロック図。
【図９】同実施形態の情報処理装置で用いられるキー入力プログラムの構成を示すブロック図。
【図１０】同実施形態の情報処理装置によって実行されるキー入力処理の手順を説明するフローチャート。
【図１１】同実施形態の情報処理装置によって実行されるキー入力処理の手順の別の例を説明するフローチャート。
【発明を実施するための形態】
【００１０】
以下、図面を参照して、実施形態を説明する。  
まず、図１を参照して、一実施形態に係る情報処理装置の構成を説明する。この情報処理装置は、例えば、バッテリ駆動可能な携帯型パーソナルコンピュータ１０として実現されている。
【００１１】
図１は、コンピュータ１０のディスプレイユニットを開いた状態における斜視図である。本コンピュータ１０は、コンピュータ本体１１と、ディスプレイユニット１２とから構成される。ディスプレイユニット１２の上面には、液晶表示装置（ＬＣＤ）１３から構成される表示装置が組み込まれており、そのＬＣＤ１３の表示画面はディスプレイユニット１２のほぼ中央に位置されている。
【００１２】
ディスプレイユニット１２は薄い箱型の筐体を有しており、このディスプレイユニット１２はコンピュータ本体１１にヒンジ部１４を介して回動自在に取り付けられている。ヒンジ部１４はコンピュータ本体１１にディスプレイユニット１２を連結する連結部である。すなわち、ディスプレイユニット１２の下端部は、コンピュータ本体１１の後端部にヒンジ部１４によって支持されている。ディスプレイユニット１２は、コンピュータ本体１１に対してコンピュータ本体１１の上面が露出される開放位置とコンピュータ本体１１の上面がディスプレイユニット１２によって覆われる閉塞位置との間を回動自在に取り付けられている。また、ディスプレイユニット１２の上面上の所定位置、例えば、ＬＣＤ１３の右側には、本コンピュータ１０をパワーオンまたはパワーオフするためのパワーボタン１６が設けられている。
【００１３】
コンピュータ本体１１は薄い箱形の筐体を有するベースユニットであり、その上面にはタッチスクリーンディスプレイとして機能する液晶表示装置（ＬＣＤ）１５が組み込まれており、そのＬＣＤ１５の表示画面はコンピュータ本体１１のほぼ中央に位置されている。ＬＣＤ１５の上面には透明のタッチパネルが配置されており、ＬＣＤ１５と透明のタッチパネルとによってタッチスクリーンディスプレイが実現される。このタッチスクリーンディスプレイは、ペン又は指によってタッチされた表示画面上のタッチ位置を検知することができる。コンピュータ本体１１上のＬＣＤ１５は、ディスプレイユニット１２のＬＣＤ１３とは独立したディスプレイである。これらＬＣＤ１３，１５は仮想画面環境を実現するためのマルチディスプレイとして使用することができる。この場合、コンピュータ１０のオペレーティングシステムによって管理される仮想画面は、ＬＣＤ１３に表示される第１の画面領域とＬＣＤ１５に表示される第２の画面領域とを含む。第１の画面領域および第２の画面領域の各々には、任意のアプリケーションウィンドウ、任意のオブジェクト等を表示することができる。
【００１４】
本実施形態では、本体１１の上面上に設けられたＬＣＤ１５（タッチスクリーンディスプレイ）は、図２に示されているように、例えば、仮想キーボード（ソフトウェアキーボードとも云う）１５１の提示に用いられる。仮想キーボード１５１は、例えば、ＬＣＤ１５の表示画面全体にフルスクリーンモードで表示してもよい。この仮想キーボード１５１は、複数のキーコード（コードデータ）をそれぞれ入力するための複数の仮想キー（複数の数字キー、複数のアルファベットキー、複数の矢印キー、複数の補助キー、複数のファンクションキー等）を含む。より詳しくは、仮想キーボード１５１は、複数の仮想キーそれぞれに対応する複数のボタン（ソフトウェアボタン）を含む。
【００１５】
一方、ディスプレイユニット１２内のＬＣＤ１３は、図２に示すように、各種アプリケーションウィンドウ等を表示するためのメインディスプレイとして使用することができる。ユーザは、タッチスクリーンディスプレイ１５上に表示される仮想キーボード１５１をタッチ操作することにより、ＬＣＤ１３に表示されるアプリケーションウィンドウ等に対して各種コードデータ（キーコード、文字コード、コマンド等）を入力することが出来る。なお、ＬＣＤ１３も、タッチスクリーンディスプレイとして実現してもよい。
【００１６】
コンピュータ本体１１の上面上の所定位置、例えば、ＬＣＤ１５の両側には２つのボタンスイッチ１７，１８が設けられている。これらボタンスイッチ１７，１８の各々には任意の機能を割り当てることが出来る。例えば、ボタンスイッチ１７は、仮想キーボード１５１を用いたキー入力操作を制御するためのアプリケーションプログラムであるキー入力プログラムを起動するためのボタンスイッチ等として利用し得る。ボタンスイッチ１７がユーザによって押された時、キー入力プログラムが起動される。キー入力プログラムは、仮想キーボード１５１をタッチスクリーンディスプレイ１５上に表示する。
【００１７】
図３および図４は、コンピュータ１０の使用形態の例を示している。図３は、ユーザがタッチスクリーンディスプレイ１５上の仮想キーボード１５１を両手で操作している様子を示している。また、図４は、ユーザが左手でコンピュータ１０の本体１１を持ちながら、右手でタッチスクリーンディスプレイ１５上の仮想キーボード１５１を操作している様子を示している。
【００１８】
次に、図５を参照して、コンピュータ１０によって実行されるキー入力動作について説明する。キー入力プログラムは、タッチスクリーンディスプレイ１５上の複数の仮想キーの一つがタッチされた場合、それら複数の仮想キーから、タッチされた仮想キーを入力キー候補として選択する。さらに、キー入力プログラムは、タッチスクリーンディスプレイ１５上のタッチ位置の移動に従って、入力キー候補を別の仮想キーに変更する。ここで、タッチ位置の移動とは、タッチスクリーンディスプレイ１５がタッチされている状態で、タッチスクリーンディスプレイ１５上のユーザの指の位置が変化すること、つまり、タッチスクリーンディスプレイ１５がタッチされている状態で指の位置がスライドされることを意味する。例えば、いま、仮想キー「Ｆ」が最初にタッチされ、その後、タッチ位置が仮想キー「Ｆ」から仮想キー「Ｋ」に向けて移動された場合を想定する。この場合、キー入力プログラムは、最初に仮想キー「Ｆ」を入力キー候補として選択する。そして、タッチ位置が仮想キー「Ｇ」上に移動されると、キー入力プログラムは、入力キー候補を仮想キー「Ｆ」から仮想キー「Ｇ」に変更して、仮想キー「Ｇ」を新たな入力キー候補として選択する。同様に、タッチ位置が例えば仮想キー「Ｋ」上に移動されると、キー入力プログラムは、入力キー候補を仮想キー「Ｋ」に変更して、仮想キー「Ｋ」を新たな入力キー候補として選択する。キー入力プログラムは、入力キー候補が選択されている状態でタッチスクリーンディスプレイ１５のタッチ状態が解除された場合、つまりユーザの指が現在入力キー候補として選択されている仮想キーから離された場合、入力キー候補として現在選択されている仮想キーを入力キーとして確定し、入力キー候補として現在選択されている仮想キーに関連付けられたコードデータをアプリケーションプログラム、オペレーティングシステムといったプログラムに出力する。
【００１９】
このように、入力キーは、仮想キーがタッチされた時点ではなく、タッチスクリーンディスプレイ１５のタッチ状態が解除された時点で確定される。
【００２０】
さらに、キー入力プログラムは、仮想キーの操作感を改善するために、仮想キーの操作に応じて、異なった２種類の振動を発生させる機能を有している。例えば、複数の仮想キーの一つがタッチされた場合、キー入力プログラムは、コンピュータ１０内のバイブレータを第１の振動パターンで振動させる（振動＃１）。ユーザは、例えば、仮想キーに触れている指先などで振動を感じることが出来る。この振動（振動＃１）は、入力可能なキー上に指が位置していることをユーザに知らせることが出来る。そして、この後、入力キー候補が選択されている状態でタッチスクリーンディスプレイ１５のタッチ状態が解除された場合、キー入力プログラムは、コンピュータ１０内のバイブレータを第１の振動パターンとは異なる第２の振動パターンで振動させる（振動＃２）。ユーザは、例えば、コンピュータ１０の本体１１の上面に触れている手のひら、または本体１１を持っている手で、振動を感じることが出来る。この振動（振動＃２）は、入力キーが確定されたことをユーザに知らせることができる。バイブレータは、例えば、モータによって実現しても良い。
【００２１】
キー入力プログラムは、タッチ位置の移動に応じて、振動＃１のオン／オフを制御することも出来る。いま、タッチ位置が仮想キー「Ｆ」から仮想キー「Ｋ」に向けて移動された場合を想定する。キー入力プログラムは、このタッチ位置の移動に応じて、バイブレータを振動ＯＮ、振動ＯＦＦ、振動ＯＮ、振動ＯＦＦ、振動ＯＮ、振動ＯＦＦ、…という順序で制御する。換言すれば、タッチ位置がキー入力可能な位置である場合にのみバイブレータは第１の振動パターンで振動する。タッチ位置がキー入力不可能な位置にある場合、例えば、図６に示すように、隣接するキー間の境界上に指先が位置する場合には、バイブレータは振動しない。これにより、入力可能なキー上に指が位置していることを正しく知らせることが出来る。
【００２２】
このように、仮想キーボード１５１上の仮想キーのいずれかに指が触れている時、つまり、ユーザが指先をスライドさせながら目的のキーを手探りで探している時には、バイブレータは第１の振動パターンで振動する。ある仮想キーが選択されている状態で指がタッチスクリーンディスプレイ１５上から離された時、現在選択されている仮想キーが入力キーとして確定されると共に、バイブレータは第２の振動パターンで振動する。この時、指は仮想キーから離れているが、通常は、本体１１に手のひら，またはキー入力に使用していない側の手が触れている。よって、ユーザは、キー確定時の振動の変化を、手のひら、またはキー入力操作に使用していない側の手で感じることができる。
【００２３】
次に、図７を参照して、コンピュータ１０によって実行されるキー入力動作の別の例について説明する。
【００２４】
図７の例においては、仮想キーが最初にタッチされた時はバイブレータが第１の振動パターンで振動するが、タッチ位置が移動されると、バイブレータの振動は停止される。いま、仮想キー「Ｆ」が最初にタッチされ、その後、ユーザが指先の位置をスライドさせることによってタッチ位置が仮想キー「Ｆ」から仮想キー「Ｋ」に向けて移動された場合を想定する。キー入力プログラムは、仮想キー「Ｆ」が最初にタッチされた時、仮想キー「Ｆ」を入力キー候補として選択すると共に、バイブレータを第１の振動パターンで振動させる。そして、タッチ位置が仮想キー「Ｆ」と仮想キー「Ｇ」との間の境界上に移動されると、キー入力プログラムは、バイブレータの振動を停止させる。タッチ位置が仮想キー「Ｇ」上に移動されると、キー入力プログラムは、仮想キー「Ｇ」を新たなキー入力候補として選択する。同様に、タッチ位置が例えば仮想キー「Ｋ」上に移動されると、キー入力プログラムは、仮想キー「Ｋ」を新たな入力キー候補として選択する。キー入力プログラムは、入力キー候補が選択されている状態でタッチスクリーンディスプレイ１５のタッチ状態が解除された場合、つまりユーザの指が現在選択されている仮想キーから離された場合、現在選択されている仮想キーを入力キーとして確定し、現在選択されている仮想キーに関連付けられたコードデータをアプリケーションプログラム、オペレーティングシステムといったプログラムに出力する。さらに、キー入力プログラムは、入力キーが確定されたことをユーザに知らせるために、バイブレータを第２の振動パターンで振動させる。
【００２５】
キー入力プログラムは図５の振動制御と図７の振動制御とをユーザによって指定されたモードに応じて選択的に実行することができる。
【００２６】
次に、図８を参照して、本コンピュータ１０のシステム構成を説明する。ここでは、ＬＣＤ１３，１５の双方がタッチスクリーンディスプレイとして実現されている場合を想定する。
【００２７】
本コンピュータ１０は、ＣＰＵ１１１、ノースブリッジ１１２、主メモリ１１３、グラフィクスコントローラ１１４、サウスブリッジ１１５、ＢＩＯＳ−ＲＯＭ１１６、ハードディスクドライブ（ＨＤＤ）１１７、エンベデッドコントローラ１１８、バイブレータ１１９等を備えている。
【００２８】
ＣＰＵ１１１は、コンピュータ１０の動作を制御するために設けられたプロセッサであり、ＨＤＤ１１７から主メモリ１１３にロードされる、オペレーティングシステム（ＯＳ）および各種アプリケーションプログラム等を実行する。アプリケーションプログラムには、キー入力プログラム２０１が含まれている。このキー入力プログラム２０１は、仮想キーボード１５１をタッチスクリーンディスプレイ１５上に表示し、ユーザによる仮想キーボード１５１のタッチ操作に応じてコードデータを生成する。生成されたコードデータ（例えば、タッチされた仮想キーに対応するキーコード等）は、例えば、オペレーティングシステム（ＯＳ）を介してアクティブなアプリケーションに渡される。また、ＣＰＵ１１１は、ＢＩＯＳ−ＲＯＭ１１６に格納されたシステムＢＩＯＳ（Basic Input Output System）も実行する。システムＢＩＯＳはハードウェア制御のためのプログラムである。
【００２９】
ノースブリッジ１１２はＣＰＵ１１１のローカルバスとサウスブリッジ１１５との間を接続するブリッジデバイスである。ノースブリッジ１１２には、主メモリ１１５をアクセス制御するメモリコントローラも内蔵されている。グラフィクスコントローラ１１４は、コンピュータ１０のディスプレイモニタとしてそれぞれ使用される２つのＬＣＤ１３，１５を制御する表示コントローラである。グラフィクスコントローラ１１４は、ノースブリッジ１１２を介してＣＰＵ１１１から受信される描画要求に基づいてビデオメモリ（ＶＲＡＭ）に表示データを描画するための表示処理（グラフィクス演算処理）を実行する。ビデオメモリには、ＬＣＤ１３に表示される画面イメージに対応する表示データを格納する記憶領域と、ＬＣＤ１５に表示される画面イメージに対応する表示データを格納する記憶領域とが割り当てられている。ＬＣＤ１３上には透明のタッチパネル１３Ａが配置されている。同様に、ＬＣＤ１５上にも透明のタッチパネル１５Ａが配置されている。タッチパネル１３Ａ，１５Ａの各々は、例えば、抵抗膜方式または静電容量方式等を用いて、タッチパネル（タッチスクリーンディスプレイ）上のタッチ位置を検出するように構成されている。また、タッチパネル１３Ａ，１５Ａの各々としては、複数のタッチ位置を同時に検知可能なマルチタッチパネルを使用してもよい。
【００３０】
サウスブリッジ１１５は、ＨＤＤ１２１を制御するためのＩＤＥ（Integrated Drive Electronics）コントローラやSerial ATAコントローラを内蔵している。エンベデッドコントローラ（ＥＣ）１１８は、ユーザによるパワーボタンスイッチ１６の操作に応じてコンピュータ１０をパワーオン／パワーオフする機能を有している。
【００３１】
バイブレータ１１９は振動するように構成されたデバイスである。このバイブレータ１１９は、例えば、コントローラ１１９Ａとモータ１１９Ｂとから構成しても良い。モータ１１９Ｂの回転によりバイブレータ１１９が振動し、この振動によって本体１１を振動させることができる。
【００３２】
次に、図４を参照して、キー入力プログラム２０１の構成について説明する。  
キー入力プログラム２０１は、タッチパネル１５Ａからタッチ位置検出情報を受信し、そのタッチ位置検出情報に基づいて、仮想キーボード１５１内の複数の仮想キーからユーザによってタッチされた仮想キーを選択する。タッチ位置検出情報は、外部部材（例えば、ユーザの指、またはペン）がタッチされたタッチパネルディスプレイ（ＬＣＤ１５およびタッチパネル１５Ａ）上のタッチ位置を示す座標データを含む。
【００３３】
キー入力プログラム２０１は、キー選択部２１１、コード出力部２１２、振動制御部２１３、および仮想キーボード表示部２１４を機能実行モジュールとして含む。キー選択部２１１は、仮想キーボード１５１に含まれる複数の仮想キーの一つがタッチされた場合、複数の仮想キーからタッチされた仮想キーを入力キー候補として選択する。さらに、キー選択部２１１は、タッチスクリーンディスプレイ上のタッチ位置の移動に従って、入力キー候補を別の仮想キーに変更する。例えば、タッチスクリーンディスプレイがタッチされている状態でタッチ位置が仮想キーボード１５１上のある仮想キー上から別の仮想キー上に移動された場合、キー選択部２１１は、入力キー候補をその別の仮想キーに変更し、その別の仮想キーを新たな入力キー候補として選択する。このように、キー選択部２１１は、タッチ位置の移動に従って、入力キー候補を変更することができる。ユーザの指がタッチスクリーンディスプレイに接触している間は入力キーは確定されないので、ユーザは、タッチスクリーンディスプレイ上の指の位置をスライドさせながら、目的の仮想キー上に指を位置づけることが出来る。
【００３４】
コード出力部２１２は、入力キー候補が選択されている状態でタッチスクリーンディスプレイのタッチ状態が解除されたことをトリガに、現在の入力キー候補を入力キーとして確定し、現在入力キー候補として選択されている仮想キーに関連付けられたキーコードを出力する。このキーコードは、アプリケーションプログラム、オペレーティングシステムといったプログラムに送られる。
【００３５】
振動制御部２１３は、バイブレータ１１９を制御して、バイブレータ１１９を振動させる。例えば、振動制御部２１３は、キー選択部２１１によって仮想キーが入力キー候補として選択された時に、バイブレータ１１９を第１の振動パターンで振動させる。また、例えば、現在の入力キー候補を入力キーとして確定された時、つまり入力キー候補が選択されている状態でタッチスクリーンディスプレイのタッチ状態が解除された時、振動制御部２１３は、バイブレータ１１９を第２の振動パターンで振動させる。振動パターンとしては、振動周期、振動回数等を用いることができる。さらに、振動制御部２１３は、複数の仮想キーの一つがタッチされた後にタッチ位置の移動によってタッチ位置が仮想キー間の境界上に移動された場合、バイブレータ１１９の振動を停止させる。またさらに、振動制御部２１３は、タッチ位置の移動によってタッチ位置が仮想キー間の境界上から別の仮想キー上に移動された場合、バイブレータを第１の振動パターンで振動させる。
【００３６】
仮想キーボード表示部２１４は、ＬＣＤ１５の表示画面上に仮想キーボード１５１を表示する。仮想キーボード１５１は、上述したように、複数のキーコード（コードデータ）を入力するための複数の仮想キーを含む。さらに、仮想キーボード表示２１４は、ＬＣＤ１５の表示画面上に表示される仮想キーボード１５１のサイズを変更する機能も有している。
【００３７】
仮想キーボード１５１においては、比較的狭いピッチで複数のキーが配列されている。また、仮想キーボード１５１はクリック感をユーザに与えることはできない。よって、仮想キーボード１５１のタイプ入力期間中においては、目的の仮想キーのみならず、その目的の仮想キーとその目的の仮想キーとの間の境界がユーザの指によってタッチされてしまう可能性がある。本実施形態では、タッチ位置がいずれかの仮想キー上に位置する場合にのみバイブレータ１１９が振動し、タッチ位置が誤入力が発生する可能性があるキー境界上に位置する場合にはバイブレータ１１９は振動しない。よって、入力可能なキー上に指が位置していることをユーザに知らせることが出来る。さらに、入力キーは、仮想キーがタッチされた時点ではなく、タッチスクリーンディスプレイ１５のタッチ状態が解除された時点で確定される。よって、ユーザは、指先をスライドさせながら目的のキーを手探りで探すことができ、目的のキー上に指先を位置させることができる。
【００３８】
次に、図１０のフローチャートを参照して、キー入力プログラム２０１によって実行されるキー入力処理の手順を説明する。
【００３９】
キー入力プログラム２０１が起動された時、キー入力プログラム２０１は、仮想キーボード１５１を本体１１上のＬＣＤ１５（タッチスクリーンディスプレイ）上に表示する。キー入力プログラム２０１は、タッチパネル１５Ａからタッチ位置検出情報を受信し、このタッチ位置検出情報に基づいて、タッチスクリーンディスプレイがタッチされたか否かを判定でき、またタッチスクリーンディスプレイ上のタッチ位置を判定することが出来る。タッチスクリーンディスプレイがタッチされたならば（ステップＳ１１のＹＥＳ）、キー入力プログラム２０１は、タッチ位置が仮想キーボード１５１内のいずれかの仮想キー上に位置するか否かを判定する（ステップＳ１２）。タッチ位置がいずれかの仮想キー上に位置するならばつまりいずれかの仮想キーがタッチされたならば（ステップＳ１２のＹＥＳ）、キー入力プログラム２０１は、そのタッチされた仮想キーを入力キー候補として選択する（ステップＳ１３）。そして、キー入力プログラム２０１は、バイブレータ１９１に第１の駆動信号を送信することによって、バイブレータ１９１を第１の振動パターンで振動させる（ステップＳ１４）。
【００４０】
タッチスクリーンディスプレイがタッチ状態である期間中、キー入力プログラム２０１は、タッチ位置を監視する。タッチ位置がキー間の境界のようなキー入力不可能な位置に移動されると（ステップＳ１２のＮＯ）、キー入力プログラム２０１は、バイブレータ１９１の振動を停止させる（ステップＳ１６）。一方、タッチ位置が別の仮想キー上に移動されると（ステップＳ１２のＹＥＳ）、キー入力プログラム２０１は、その別の仮想キーを新たな入力キー候補として選択する（ステップＳ１３）。
【００４１】
ユーザの指がタッチスクリーンディスプレイから離されることによってタッチスクリーンディスプレイのタッチ状態が解除されると（ステップＳ１５のＹＥＳ）、キー入力プログラム２０１は、現在選択されている仮想キーを入力キーとして確定し、現在選択されている仮想キーに関連付けられたコードデータをアプリケーションプログラム、オペレーティングシステムといったプログラムに出力する（ステップＳ１７）。さらに、キー入力プログラム２０１は、バイブレータ１９１に第２の駆動信号を送信することによって、バイブレータ１９１を第２の振動パターンで振動させる（ステップＳ１８）。
【００４２】
次に、図１１のフローチャートを参照して、キー入力プログラム２０１によって実行されるキー入力処理の手順の他の例を説明する。図１１のフローチャートは、図７で説明したように、仮想キーが最初にタッチされた時にバイブレータを第１の振動パターンで振動させ、タッチ位置が移動されるとバイブレータの振動を停止させるという振動制御に対応している。
【００４３】
タッチスクリーンディスプレイがタッチされたならば（ステップＳ２１のＹＥＳ）、キー入力プログラム２０１は、タッチ位置が仮想キーボード１５１内のいずれかの仮想キー上に位置するか否かを判定する（ステップＳ２２）。タッチ位置がいずれかの仮想キー上に位置するならばつまりいずれかの仮想キーがタッチされたならば（ステップＳ２２のＹＥＳ）、キー入力プログラム２０１は、そのタッチされた仮想キーを入力キー候補として選択する（ステップＳ２３）。そして、キー入力プログラム２０１は、バイブレータ１９１に第１の駆動信号を送信することによって、バイブレータ１９１を第１の振動パターンで振動させる（ステップＳ２４）。
【００４４】
タッチスクリーンディスプレイがタッチ状態である期間中、キー入力プログラム２０１は、タッチ位置を監視する。タッチ位置が変化してキー間の境界のようなキー入力不可能な位置または別の仮想キー上に移動されると（ステップＳ２６のＹＥＳ）、キー入力プログラム２０１は、バイブレータ１９１の振動を停止させる（ステップＳ２７）。そして、キー入力プログラム２０１は、移動後のタッチ位置が仮想キー上に位置するか否かを判定する（ステップＳ２８）。移動後のタッチ位置が仮想キー上に位置するならば（ステップＳ２８のＹＥＳ）、キー入力プログラム２０１は、この仮想キーを新たな入力キー候補として選択する（ステップＳ２９）。
【００４５】
ユーザの指がタッチスクリーンディスプレイから離されることによってタッチスクリーンディスプレイのタッチ状態が解除されると（ステップＳ２５のＹＥＳ）、キー入力プログラム２０１は、現在選択されている仮想キーを入力キーとして確定し、現在選択されている仮想キーに関連付けられたコードデータをアプリケーションプログラム、オペレーティングシステムといったプログラムに出力する（ステップＳ３０）。さらに、キー入力プログラム２０１は、バイブレータ１９１に第２の駆動信号を送信することによって、バイブレータ１９１を第２の振動パターンで振動させる（ステップＳ３１）。
【００４６】
以上説明したように、本実施形態によれば、複数の仮想キーの一つがタッチされた時にそのタッチされた仮想キーが入力キー候補として選択されると共に、バイブレータ１１９が第１の振動パターンで振動する。タッチ位置の移動に従って、入力キー候補は別の仮想キーに変更される。タッチスクリーンディスプレイのタッチ状態が解除された時には、現在入力キー候補として選択されている仮想キーに関連付けられたコードデータが出力されると共に、バイブレータ１１９が第２の振動パターンで振動する。よって、ユーザは現在のタッチ位置が仮想キー上であるかどうかを第１の振動によって知ることができ、また目的の仮想キー以外の仮想キーに一旦タッチした後も指をスライドさせることによって目的の仮想キー上に指を移動させることが出来る。さらに、ユーザは、第２の振動によって入力キーが確定されたことを知ることが出来る。よって、キーデータの誤入力を低減でき且つ仮想キーの操作感を改善することができる。
【００４７】
なお、上述の仮想キー群としては、ダイヤルキー群のようなボタン群であってもよい。また、本実施形態のコンピュータ１０は本体１１とディスプレイユニット１２とを有しているが、コンピュータ１０のシステムを構成するコンポーネントのほとんど全てを必ずしも本体１１内に設ける必要はなく、例えば、コンポーネントの一部またはほとんど全てをディスプレイユニット１２内に設けても良い。この意味で、本体１１とディスプレイユニット１２はほぼ対等の関係のユニット同士であると云える。よって、本体１１もディスプレイユニットであると考えることができ、またディスプレイユニット１２を本体として考えることも出来る。
【００４８】
また、本実施形態のコンピュータ１０は、タッチスクリーンディスプレイに加え、ディスプレイ（ＬＣＤ１３）を備えているが、タッチスクリーンディスプレイは仮想キーボードとアプリケーションウィンドウ等を同時に表示することもできるので、タッチスクリーンディスプレイのみを有し、ディスプレイ（ＬＣＤ１３）を備えない構成であってもよい。
【００４９】
また、本実施形態のキー入力機能はコンピュータプログラムによって実現されているので、このコンピュータプログラムを格納したコンピュータ読み取り可能な記憶媒体を通じて、このコンピュータプログラムをタッチスクリーンディスプレイを有するコンピュータにインストールして実行するだけで、本実施形態と同様の効果を容易に得ることが出来る。
【００５０】
また、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に構成要素を適宜組み合わせてもよい。
【符号の説明】
【００５１】
１０…コンピュータ、１１…本体、１２…ディスプレイユニット、１３，１５…ＬＣＤ、１５１…仮想キーボード、１３Ａ，１５Ａ…タッチパネル、１１１…ＣＰＵ、１１９…バイブレータ、１５１…仮想キーボード、２０１…キー入力プログラム、２１１…キー選択部、２１２…コード出力部、２１３…振動制御部、２１４…仮想キーボード表示部。
【図１】
2011248400.tif 000003
【図２】
2011248400.tif 000004
【図３】
2011248400.tif 000005
【図４】
2011248400.tif 000006
【図５】
2011248400.tif 000007
【図６】
2011248400.tif 000008
【図７】
2011248400.tif 000009
【図８】
2011248400.tif 000010
【図９】
2011248400.tif 000011
【図１０】
2011248400.tif 000012
【図１１】
2011248400.tif 000013
【手続補正書】
【提出日】平成23年9月12日(2011.9.12)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の仮想キーを表示可能なタッチスクリーンディスプレイと、
前記複数の仮想キーの一つがタッチされた場合、前記複数の仮想キーからタッチされた仮想キーを入力キー候補として選択し、前記タッチスクリーンディスプレイ上のタッチ位置の移動に従って前記入力キー候補を別の仮想キーに変更するキー選択手段と、
前記入力キー候補が選択されている状態で前記タッチスクリーンディスプレイのタッチ状態が解除された場合、前記入力キー候補として選択されている仮想キーに関連付けられたコードデータを出力する出力手段と、
バイブレータと、
前記複数の仮想キーの一つがタッチされた場合、前記バイブレータを第１の振動パターンで振動させ、前記複数の仮想キーの一つがタッチされた後に前記タッチ位置の移動によって前記タッチ位置が仮想キー間の境界上に移動された場合、前記バイブレータの振動を停止させ、前記タッチ位置の移動によって前記タッチ位置が前記仮想キー間の境界上から別の仮想キー上に移動された場合、前記バイブレータを前記第１の振動パターンで振動させ、前記入力キー候補が選択されている状態で前記タッチスクリーンディスプレイのタッチ状態が解除された場合、前記バイブレータを第２の振動パターンで振動させる振動制御手段とを具備する情報処理装置。
【請求項２】
情報処理装置のタッチスクリーンディスプレイを用いて、タッチされたキーに対応するコードデータを入力するための入力方法であって、
コードデータをそれぞれ入力するための複数の仮想キーを前記タッチスクリーンディスプレイ上に表示し、
前記複数の仮想キーの一つがタッチされた場合、前記複数の仮想キーからタッチされた仮想キーを入力キー候補として選択し、
前記タッチスクリーンディスプレイ上のタッチ位置の移動に従って前記入力キー候補を別の仮想キーに変更し、
前記入力キー候補が選択されている状態で前記タッチスクリーンディスプレイのタッチ状態が解除された場合、前記入力キー候補として選択されている仮想キーに関連付けられたコードデータを出力し、
前記複数の仮想キーの一つがタッチされた場合、前記情報処理装置内のバイブレータを第１の振動パターンで振動させ、
前記複数の仮想キーの一つがタッチされた後に前記タッチ位置の移動によって前記タッチ位置が仮想キー間の境界上に移動された場合、前記バイブレータの振動を停止させ、
前記タッチ位置の移動によって前記タッチ位置が前記仮想キー間の境界上から別の仮想キー上に移動された場合、前記バイブレータを前記第１の振動パターンで振動させ、
前記入力キー候補が選択されている状態で前記タッチスクリーンディスプレイのタッチ状態が解除された場合、前記バイブレータを第２の振動パターンで振動させる入力方法。
【請求項３】
コンピュータのタッチスクリーンディスプレイを用いて、タッチされたキーに対応するコードデータを入力するためのプログラムであって、
コードデータをそれぞれ入力するための複数の仮想キーを前記タッチスクリーンディスプレイ上に表示する手順と、
前記複数の仮想キーの一つがタッチされた場合、前記複数の仮想キーからタッチされた仮想キーを入力キー候補として選択する手順と、
前記タッチスクリーンディスプレイ上のタッチ位置の移動に従って前記入力キー候補を別の仮想キーに変更する手順と、
前記入力キー候補が選択されている状態で前記タッチスクリーンディスプレイのタッチ状態が解除された場合、前記入力キー候補として選択されている仮想キーに関連付けられたコードデータを出力する手順と、
前記複数の仮想キーの一つがタッチされた場合、前記コンピュータ内のバイブレータを第１の振動パターンで振動させる手順と、
前記複数の仮想キーの一つがタッチされた後に前記タッチ位置の移動によって前記タッチ位置が仮想キー間の境界上に移動された場合、前記バイブレータの振動を停止させる手順と、
前記タッチ位置の移動によって前記タッチ位置が前記仮想キー間の境界上から別の仮想キー上に移動された場合、前記バイブレータを前記第１の振動パターンで振動させる手順と、
前記入力キー候補が選択されている状態で前記タッチスクリーンディスプレイのタッチ状態が解除された場合、前記バイブレータを第２の振動パターンで振動させる手順とを前記コンピュータに実行させるプログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
実施形態によれば、情報処理装置は、情報処理装置は、複数の仮想キーを表示可能なタッチスクリーンディスプレイと、キー選択手段と、出力手段と、バイブレータと、振動制御手段とを具備する。前記キー選択手段は、前記複数の仮想キーの一つがタッチされた場合、前記複数の仮想キーからタッチされた仮想キーを入力キー候補として選択し、前記タッチスクリーンディスプレイ上のタッチ位置の移動に従って前記入力キー候補を別の仮想キーに変更する。前記出力手段は、前記入力キー候補が選択されている状態で前記タッチスクリーンディスプレイのタッチ状態が解除された場合、前記入力キー候補として選択されている仮想キーに関連付けられたコードデータを出力する。前記振動制御手段は、前記複数の仮想キーの一つがタッチされた場合、前記バイブレータを第１の振動パターンで振動させ、前記複数の仮想キーの一つがタッチされた後に前記タッチ位置の移動によって前記タッチ位置が仮想キー間の境界上に移動された場合、前記バイブレータの振動を停止させ、前記タッチ位置の移動によって前記タッチ位置が前記仮想キー間の境界上から別の仮想キー上に移動された場合、前記バイブレータを前記第１の振動パターンで振動させ、前記入力キー候補が選択されている状態で前記タッチスクリーンディスプレイのタッチ状態が解除された場合、前記バイブレータを第２の振動パターンで振動させる。