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