(57)【要約】【課題】修飾キーと他のキーへの同時タッチによる修飾キー併用入力と修飾キーをキーロックした後の他のキーへのタッチによる修飾キー併用入力とを簡単に使い分けること。【解決手段】実施形態によれば、送信手段は、第１の操作の検出結果として、第１キーのタッチ検出に応じて、第１キーのキーダウンを示すデータを送信し、第１キーがタッチされた状態における第２キーのタッチ検出に応じて、第２キーのキーダウンを示すデータを送信し、その後、第１及び第２キーのリリース検出に応じて、第１及び第２キーのキーアップを示すデータを送信し、第２の操作の検出結果として、第１キーのタッチ検出に応じて、第１キーのキーダウンを示すデータを送信し、第１キーに対する特定の操作が検出された後、第２キーのタッチ検出に応じて、第２キーのキーダウンを示すデータを送信し、その後、第２キーのリリース検出に応じて、第２キーのキーアップを示すデータを送信した後、第１キーのキーアップを示すデータを送信する。【選択図】図４
2011248399.tif 000002
【特許請求の範囲】
【請求項１】
タッチパネルと、
ディスプレイと、
複数のキーを含むソフトウェアキーボードを前記ディスプレイに表示する表示手段と、
前記タッチパネルに対するタッチ検出に基づいて、前記ソフトウェアキーボードのキーに対するタッチとリリースを検出するキー検出手段と、
第１の操作の検出結果として、第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーがタッチされた状態における第２キーのタッチ検出に応じて、前記第２キーのキーダウンを示すデータを送信し、その後、前記第１及び第２キーのリリース検出に応じて、前記第１及び第２キーのキーアップを示すデータを送信し、第２の操作の検出結果として、前記第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーに対する特定の操作が検出された後、前記第２キーのタッチ検出に応じて、前記第２キーのキーダウンを示すデータを送信し、その後、前記第２キーのリリース検出に応じて、前記第２キーのキーアップを示すデータを送信した後、前記第１キーのキーアップを示すデータを送信する送信手段と
を具備する電子機器。
【請求項２】
前記第１キーは、前記第２キーとの組合せにより操作される予め決められたキーとする請求項１記載の電子機器。
【請求項３】
前記送信手段は、前記第２の操作の検出結果として、
前記特定の操作の後に前記第１キーのリリース検出が検出された後、再度、前記第１キーのタッチとリリースが検出された場合に、前記第１キーアップを示すデータを送信する請求項２記載の電子機器。
【請求項４】
前記送信手段は、前記第２の操作の検出結果として、
前記第２キーが前記第１キーと第３のキーとの組合せにより操作される予め決められたキーである場合に、前記第２キーに対する前記特定の操作が検出された後、前記第３のキーのタッチ検出に応じて、前記第３のキーのキーダウンを示すデータを送信し、その後、前記第３のキーのリリース検出に応じて、前記第３のキーのキーアップを示すデータ、前記第２キーのキーアップを示すデータ、及び前記第１キーのキーアップを示すデータを送信する請求項２記載の電子機器。
【請求項５】
前記表示手段は、
前記第１キーに対する第１の特定の操作が検出された場合、前記第１キーを第１の形態により表示し、
前記第１キーに対する前記第１の特定の操作と異なる第２の特定の操作が検出された場合、前記第１キーを第２の形態により表示する請求項２記載の電子機器。
【請求項６】
タッチパネルと、
ディスプレイと、
複数のキーを含むソフトウェアキーボードを前記ディスプレイに表示する表示手段と、
前記タッチパネルに対するタッチ検出に基づいて、前記ソフトウェアキーボードのキーに対するタッチとリリースを検出するキー検出手段と、
第１の操作の検出結果として、第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーがタッチされた状態における第２キーのタッチ検出に応じて、前記第２キーのキーダウンを示すデータを送信し、その後、前記第１及び第２キーのリリース検出に応じて、前記第１及び第２キーのキーアップを示すデータを送信し、第２の操作の検出結果として、前記第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーに対する特定の操作が検出された後、前記第２キーのタッチ検出に応じて、前記第２キーのキーダウンを示すデータを送信し、その後、前記第２キーのリリース検出に応じて、前記第２キーのキーアップを示すデータを送信する送信手段と
を具備する電子機器。
【請求項７】
前記特定の操作は、
前記第１キーのタッチ検出から前記第１キーのリリース検出までの時間が予め決められた一定時間以上である操作とする請求項１または請求項６記載の電子機器。
【請求項８】
前記特定の操作は、
予め決められた一定時間内の前記第１キーに対するリリース、タッチ、リリースの操作とする請求項１または請求項６記載の電子機器。
【請求項９】
前記特定の操作は、
前記第１キーに対するタッチ後、前記第１キーの領域外へ移動させる操作とする請求項１または請求項６記載の電子機器。
【請求項１０】
前記特定の操作は、
前記第１キーのタッチ検出から前記第１キーのリリース検出までの時間が予め決められた一定時間内である操作とする請求項１または請求項６記載の電子機器。
請求項１または請求項６記載の電子機器。
【請求項１１】
複数のキーを含むソフトウェアキーボードをディスプレイに表示し、
タッチパネルに対するタッチ検出に基づいて、前記ソフトウェアキーボードのキーに対するタッチとリリースを検出し、
第１の操作の検出結果として、第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーがタッチされた状態における第２キーのタッチ検出に応じて、前記第２キーのキーダウンを示すデータを送信し、その後、前記第１及び第２キーのリリース検出に応じて、前記第１及び第２キーのキーアップを示すデータを送信し、第２の操作の検出結果として、前記第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーに対する特定の操作が検出された後、前記第２キーのタッチ検出に応じて、前記第２キーのキーダウンを示すデータを送信し、その後、前記第２キーのリリース検出に応じて、前記第２キーのキーアップを示すデータを送信した後、前記第１キーのキーアップを示すデータを送信する入力制御方法。
【請求項１２】
前記第２の操作の検出結果として、前記第２キーが前記第１キーと第３のキーとの組合せにより操作される予め決められたキーである場合に、前記第２キーに対する前記特定の操作が検出された後、前記第３のキーのタッチ検出に応じて、前記第３のキーのキーダウンを示すデータを送信し、その後、前記第３のキーのリリース検出に応じて、前記第３のキーのキーアップを示すデータ、前記第２キーのキーアップを示すデータ、及び前記第１キーのキーアップを示すデータを送信する請求項１１記載の入力制御方法。
【請求項１３】
コンピュータにより実行される入力制御プログラムであって、前記入力制御プログラムは、
複数のキーを含むソフトウェアキーボードをディスプレイに表示し、
タッチパネルに対するタッチ検出に基づいて、前記ソフトウェアキーボードのキーに対するタッチとリリースを検出し、
第１の操作の検出結果として、第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーがタッチされた状態における第２キーのタッチ検出に応じて、前記第２キーのキーダウンを示すデータを送信し、その後、前記第１及び第２キーのリリース検出に応じて、前記第１及び第２キーのキーアップを示すデータを送信し、第２の操作の検出結果として、前記第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーに対する特定の操作が検出された後、前記第２キーのタッチ検出に応じて、前記第２キーのキーダウンを示すデータを送信し、その後、前記第２キーのリリース検出に応じて、前記第２キーのキーアップを示すデータを送信した後、前記第１キーのキーアップを示すデータを送信する入力制御プログラム。
【請求項１４】
前記第２の操作の検出結果として、前記第２キーが前記第１キーと第３のキーとの組合せにより操作される予め決められたキーである場合に、前記第２キーに対する前記特定の操作が検出された後、前記第３のキーのタッチ検出に応じて、前記第３のキーのキーダウンを示すデータを送信し、その後、前記第３のキーのリリース検出に応じて、前記第３のキーのキーアップを示すデータ、前記第２キーのキーアップを示すデータ、及び前記第１キーのキーアップを示すデータを送信する請求項１３記載の入力制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、タッチパネルを備えた電子機器、入力制御プログラム、及び入力制御方法に関する。
【背景技術】
【０００２】
パーソナルコンピュータ等の電子機器では、入力デバイスとしてタッチパネルを備えたものがある。また、タッチパネルにディスプレイを一体化させたタッチスクリーンディスプレイを備えたものがある。タッチスクリーンディスプレイを備えた電子機器は、複数のキーが配列された仮想のキーボード（ソフトウェアキーボード）を表示して、ソフトウェアキーボードへのタッチ操作に応じたデータを入力するシステムも開発されている。
【０００３】
従来のソフトウェアキーボードを備えた電子機器は、タッチスクリーンディスプレイに対してシングルタッチ（クリック）する操作を想定していた。このため、他のキーとの組み合わせによって特定の機能を指示することができる修飾キー（シフトキーなど）と他のキーとを併用して入力する場合（コンビネーションキー）、まず、修飾キーをタッチして、その修飾キーを押下状態に固定し（キーロック）、その状態で他のキーをタッチすることにより行う。
【０００４】
また、近年では、複数箇所にタッチされた位置を検出できるマルチポイントタッチスクリーンを備えた電子機器も使用されている。この電子機器では、例えば修飾キーとする第１キーと記号キーなどの第２キーに対するタッチを同時に検出し、この検出したキーに応じた信号を生成することができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特表２００８−５０８６００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
このように、マルチタッチが可能なタッチスクリーンディスプレイを備えた電子機器では、複数のキーに対するタッチを同時に検出することができる。
【０００７】
しかしながら、複数のキーを同時にタッチするより、修飾キー、他のキーを順番にタッチした方が、操作が容易な場合がある。例えば、電子機器を片方の手で持ちながら他方の手のみでタッチしたり、電子機器を片手で保持して親指だけでタッチしたりする場合がある。こうした場合では、修飾キーに対するタッチに対して押下状態に固定し（キーロック）、その状態で他のキーをタッチした方が操作性が良くなる。
【０００８】
このように、修飾キーと他のキーとを組み合わせた修飾キー併用入力する場合、修飾キーと他のキーへの同時タッチと、修飾キーへのタッチによるキーロックとを簡単に使い分けられることが要求されていた。
【０００９】
発明の目的は、修飾キーと他のキーへの同時タッチによる修飾キー併用入力と修飾キーをキーロックした後の他のキーへのタッチによる修飾キー併用入力とを簡単に使い分けることが可能な電子機器、入力制御プログラム、及び入力制御方法を提供することにある。
【課題を解決するための手段】
【００１０】
実施形態によれば、タッチパネルとディスプレイと表示手段とキー検出手段と送信手段とを具備する。表示手段は、複数のキーを含むソフトウェアキーボードを前記ディスプレイに表示する。キー検出手段は、前記タッチパネルに対するタッチ検出に基づいて、前記ソフトウェアキーボードのキーに対するタッチとリリースを検出する。送信手段は、第１の操作の検出結果として、第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーがタッチされた状態における第２キーのタッチ検出に応じて、前記第２キーのキーダウンを示すデータを送信し、その後、前記第１及び第２キーのリリース検出に応じて、前記第１及び第２キーのキーアップを示すデータを送信し、第２の操作の検出結果として、前記第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーに対する特定の操作が検出された後、前記第２キーのタッチ検出に応じて、前記第２キーのキーダウンを示すデータを送信し、その後、前記第２キーのリリース検出に応じて、前記第２キーのキーアップを示すデータを送信した後、前記第１キーのキーアップを示すデータを送信する。
【図面の簡単な説明】
【００１１】
【図１】実施形態に係る情報処理装置の外観を示す図。
【図２】実施形態におけるＳＷキーボードが表示された画面の一例を示す図。
【図３】実施形態におけるパーソナルコンピュータのシステム構成の一例を示す図。
【図４】実施形態におけるＳＷＫＢ入力制御プログラムの機能構成について示すブロック図。
【図５】実施形態におけるＳＷキーボードからの入力制御処理について示すフローチャート。
【図６】実施形態におけるＳＷキーボードの状態の一例を示す図。
【図７】実施形態におけるＳＷキーボードの状態の一例を示す図。
【図８】実施形態におけるＳＷキーボードの状態の一例を示す図。
【図９】実施形態におけるＳＷキーボードの状態の一例を示す図。
【図１０】実施形態におけるＳＷキーボードの状態の一例を示す図。
【図１１】実施形態におけるＳＷキーボードの状態の一例を示す図。
【図１２】実施形態におけるＳＷキーボードの状態の一例を示す図。
【図１３】実施形態におけるＳＷキーボードの状態の一例を示す図。
【図１４】実施形態におけるＳＷキーボードの状態の一例を示す図。
【図１５】実施形態における特定の操作処理（１）について示すフローチャート。
【図１６】実施形態における特定の操作処理（２）について示すフローチャート。
【図１７】実施形態における特定の操作処理（３）について示すフローチャート。
【図１８】実施形態における特定の操作処理（４）について示すフローチャート。
【図１９】実施形態におけるＳＷキーボードの状態の一例を示す図。
【図２０】実施形態におけるＳＷキーボードの状態の一例を示す図。
【発明を実施するための形態】
【００１２】
以下、図面を参照して、本実施形態について説明する。  
図１は、本実施形態に係る情報処理装置の外観を示す図である。情報処理装置は、例えば、バッテリ駆動可能な携帯型パーソナルコンピュータ１０として実現されている。
【００１３】
図１は、パーソナルコンピュータ１０の第１ユニット１１を開いた状態における斜視図である。パーソナルコンピュータ１０は、第１ユニット１１と第２ユニット１２とから構成される。第１ユニット１１の上面には、タッチスクリーンディスプレイ１３が組み込まれている。タッチスクリーンディスプレイ１３は、タッチパネル１３Ａと液晶表示装置（ＬＣＤ）１３Ｂとから構成されており、表示画面が第１ユニット１１のほぼ中央に配置されている。
【００１４】
タッチスクリーンディスプレイ１３は、例えばＬＣＤ１３Ｂの表面にタッチパネル１３Ａが装着されて構成されたもので、ＬＣＤ１３Ｂによる表示と、ペンや指先などによってタッチされたタッチ位置の検知を実現できる。ユーザは、ＬＣＤ１３Ｂに表示された各種オブジェクトをペンや指先などを用いて選択することができる。ユーザによるタッチ操作の対象とするオブジェクトには、例えば、ソフトウェアキーボード（後述する）、ソフトウェアタッチパッド、フォルダやファイルを表すアイコン、メニュー、ボタン等が含まれる。表示画面上のタッチ位置を示す座標データはタッチパネル１３Ａからコンピュータ１０内のＣＰＵに入力される。
【００１５】
第１ユニット１１は、薄い箱型の筐体を有している。第１ユニット１１は、第２ユニット１２にヒンジ部１４を介して回動自在に取り付けられている。ヒンジ部１４は、第２ユニット１２に第１ユニット１１を連結する連結部である。すなわち、第１ユニット１１の下端部は、第２ユニット１２の後端部にヒンジ部１４によって支持されている。第１ユニット１１は、第２ユニット１２に対して第２ユニット１２の上面が露出される開放位置と第２ユニット１２の上面が第１ユニット１１によって覆われる閉塞位置との間を回動自在に取り付けられている。また、第１ユニット１１の所定位置、例えば、タッチスクリーンディスプレイ１３の右側には、パーソナルコンピュータ１０をパワーオンまたはパワーオフするためのパワーボタン１６が設けられている。
【００１６】
第２ユニット１２は、薄い箱形の筐体を有するベースユニットである。第２ユニット１２の上面には、タッチスクリーンディスプレイ１５が組み込まれている。タッチスクリーンディスプレイ１５は、タッチパネル１５Ａと液晶表示装置（ＬＣＤ）１５Ｂとから構成されており、表示画面が第２ユニット１２のほぼ中央に配置されている。
【００１７】
第２ユニット１２の上面の所定位置、例えばタッチスクリーンディスプレイ１５の両側には、２つのボタンスイッチ１７，１８が設けられている。ボタンスイッチ１７，１８の各々には任意の機能を割り当てることが出来る。例えば、ボタンスイッチ１７は、後述するソフトウェアキーボード入力制御プログラムの起動指示を入力するためのボタンスイッチ等として利用する。例えば、ボタンスイッチ１７がユーザによって押された時、ソフトウェアキーボード入力制御プログラムを起動する。
【００１８】
タッチスクリーンディスプレイ１５は、例えばＬＣＤ１５Ｂの表面にタッチパネル１５Ａが装着されて構成されたもので、ＬＣＤ１５Ｂによる表示と、ペンや指先などによってタッチされたタッチ位置の検知を実現できる。ユーザは、ＬＣＤ１５Ｂに表示された各種オブジェクトをペンや指先などを用いて選択することができる。ユーザによるタッチ操作の対象とするオブジェクトには、例えば、ソフトウェアキーボード（後述する）、ソフトウェアタッチパッド、フォルダやファイルを表すアイコン、メニュー、ボタン、アプリケーションウィンドウ等が含まれる。表示画面上のタッチ位置を示す座標データはタッチパネル１５Ａからコンピュータ１０内のＣＰＵに入力される。
【００１９】
第２ユニット１２上のＬＣＤ１５Ｂは、第１ユニット１１のＬＣＤ１３Ｂとは独立したディスプレイである。ＬＣＤ１３Ｂ，１５Ｂは仮想画面環境を実現するためのマルチディスプレイとして使用することができる。この場合、コンピュータ１０のオペレーティングシステム（ＯＳ）によって管理される仮想画面は、ＬＣＤ１３Ｂに表示される第１の画面領域とＬＣＤ１５Ｂに表示される第２の画面領域とを含む。第１の画面領域及び第２の画面領域には、任意のアプリケーションウィンドウ、任意のオブジェクト等を表示することができる。また、ＯＳは、第１の画面領域と第２の画面領域とを１つの領域として管理し、表示対象とするオブジェクトを任意の位置に表示させることができる。
【００２０】
本実施形態のパーソナルコンピュータ１０は、キーボードやマウス／タッチパッドなどの入力装置の代わりに、タッチスクリーンディスプレイ１３，１５へのペンや指先などによるタッチ操作によりデータ入力するための入力操作アプリケーションが設けられている。本実施形態における入力操作アプリケーションには、例えばソフトウェアキーボード入力制御プログラム２００（以下、ＳＷＫＢ入力制御プログラム２００）が含まれる。
【００２１】
ＳＷＫＢ入力制御プログラム２００は、操作入力画面としてソフトウェアキーボード（以下、ＳＷキーボード）をタッチスクリーンディスプレイ１３，１５に表示し、ＳＷキーボードが表示されたエリアへのユーザのタッチ操作に応じたデータを入力する。
【００２２】
図２は、本実施形態におけるＳＷＫＢ入力制御プログラム２００を実行することにより、タッチスクリーンディスプレイ１５においてＳＷキーボード５０が表示された画面の一例を示している。ＳＷキーボード５０は、例えば、タッチスクリーンディスプレイ１５（ＬＣＤ１５Ｂ）の表示画面全体にフルスクリーンモードで表示することができる。ＳＷキーボード５０は、複数のキーコードをそれぞれ入力するための複数の仮想キー（複数の数字キー、複数のアルファベットキー、複数の矢印キー、複数の補助キー、複数のファンクションキー等）を含んでいる。ＳＷキーボード５０の仮想キーに対するタッチ操作により、タッチ位置の仮想キーに応じたコードデータが入力される。なお、ＳＷＫＢ入力制御プログラム２００は、タッチスクリーンディスプレイ１３においても同様にしてＳＷタッチパッド３０を表示させることができる。
【００２３】
また、ＳＷキーボード５０には、表示位置変更キー５０Ａが設けられている。表示位置変更キー５０Ａに対するタッチ操作があった場合、ＳＷＫＢ入力制御プログラム２００は、ＳＷキーボード５０を表示させるタッチスクリーンディスプレイを変更する。例えば、図２に示すように、ＳＷキーボード５０をタッチスクリーンディスプレイ１５に表示している場合には、表示位置変更キー５０Ａは、タッチスクリーンディスプレイ１３の方向を示す上向きの矢印が表示されている。この状態で表示位置変更キー５０Ａがタッチされると、ＳＷＫＢ入力制御プログラム２００は、ＳＷキーボード５０の表示を、タッチスクリーンディスプレイ１５からタッチスクリーンディスプレイ１３に変更する。なお、タッチスクリーンディスプレイ１３にＳＷキーボード５０が表示されている場合には、表示位置変更キー５０Ａの矢印は下向きになる。
【００２４】
また、図２に示すように、タッチスクリーンディスプレイ１５の表示エリアの最下段には、ツールバー４０が設けられている。ツールバー４０には、ＳＷＫＢ入力制御プログラム２００を起動するためのＳＷキーボード起動ボタン４１やその他のボタン４２が設けられている。ユーザは、ＳＷキーボード起動ボタン４１へのタッチ操作によって、ボタンスイッチ１７により起動指示を入力した場合と同様にして、ＳＷＫＢ入力制御プログラム２００を起動させることができる。
【００２５】
次に、本実施形態におけるパーソナルコンピュータ１０のシステム構成について説明する。図３は、パーソナルコンピュータ１０のシステム構成を示すブロック図である。
【００２６】
パーソナルコンピュータ１０は、ＣＰＵ１１１、ノースブリッジ１１２、主メモリ１１３、グラフィクスコントローラ１１４、サウスブリッジ１１５、ＢＩＯＳ−ＲＯＭ１１６、ハードディスクドライブ（ＨＤＤ）１１７、エンベデッドコントローラ１１８、通信コントローラ１１９等を備えている。
【００２７】
ＣＰＵ１１１は、コンピュータ１０の動作を制御するために設けられたプロセッサであり、ＨＤＤ１１７から主メモリ１１３にロードされる、オペレーティングシステム（ＯＳ）１９９及び各種アプリケーションプログラム等を実行する。アプリケーションプログラムには、ＳＷＫＢ入力制御プログラム２００などの入力操作アプリケーションの他、ブラウザプログラムや文章作成プログラム等の各種のアプリケーションプログラム２０４が含まれている。ＳＷＫＢ入力制御プログラム２００は、ＳＷキーボード５０をタッチスクリーンディスプレイ１３，１５に表示し、ユーザによるＳＷキーボード５０へのタッチ操作に応じたコードデータを生成する。
【００２８】
また、ＣＰＵ１１１は、ＢＩＯＳ−ＲＯＭ１１６に格納されたシステムＢＩＯＳ（Basic Input Output System）も実行する。システムＢＩＯＳはハードウェア制御のためのプログラムである。
【００２９】
また、ＣＰＵ１１１は、ＯＳ１９９の制御のもとで、タッチパネル１３Ａ，１５Ａの駆動を制御するタッチパネルドライバ２０２、ＬＣＤ１３Ｂ，１５Ｂにおける表示を制御する表示ドライバ２０３を実行する。
【００３０】
ノースブリッジ１１２は、ＣＰＵ１１１のローカルバスとサウスブリッジ１１５との間を接続するブリッジデバイスである。ノースブリッジ１１２には、主メモリ１１５をアクセス制御するメモリコントローラも内蔵されている。グラフィクスコントローラ１１４は、コンピュータ１０のディスプレイモニタとしてそれぞれ使用される２つのＬＣＤ１３Ｂ，１５Ｂを制御する表示コントローラである。
【００３１】
グラフィクスコントローラ１１４は、ノースブリッジ１１２を介してＣＰＵ１１１から受信される描画要求に基づいてビデオメモリ（ＶＲＡＭ）に表示データを描画するための表示処理（グラフィクス演算処理）を実行する。ビデオメモリには、ＬＣＤ１３Ｂに表示される画面イメージに対応する表示データを格納する記録領域と、ＬＣＤ１５Ｂに表示される画面イメージに対応する表示データを格納する記録領域とが割り当てられている。ＬＣＤ１３Ｂの表示面には透明のタッチパネル１３Ａが配置されている。同様に、ＬＣＤ１５Ｂの表示面には透明のタッチパネル１５Ａが配置されている。
【００３２】
タッチパネル１３Ａ，１５Ａは、例えば、抵抗膜方式または静電容量方式等を用いて、タッチ検出面のタッチ位置を検出するように構成されている。タッチパネル１３Ａ，１５Ａは、例えば、２点以上のタッチ位置を同時に検知可能なマルチタッチパネルが使用されるものとする。タッチパネル１３Ａ，１５Ａは、ユーザによるタッチ操作により検出したデータをサウスブリッジ１１５に出力する。
【００３３】
サウスブリッジ１１５は、ＨＤＤ１２１を制御するためのＩＤＥ（Integrated Drive Electronics）コントローラやSerial ATAコントローラを内蔵している。エンベデッドコントローラ（ＥＣ）１１８は、ユーザによるパワーボタンスイッチ１６の操作に応じてコンピュータ１０をパワーオン／パワーオフする機能を有している。また、サウスブリッジ１１５は、タッチパネル１３Ａ，１５Ａからのデータを入力し、ノースブリッジ１１２を介して主メモリ１１３に記録する。
【００３４】
次に、本実施形態におけるＳＷＫＢ入力制御プログラム２００の機能構成について、図４を参照しながら説明する。  
ＳＷＫＢ入力制御プログラム２００は、タッチパネルドライバ２０２を介してタッチパネル１３Ａ，１５Ａからタッチ位置情報を受信し、そのタッチ位置情報に基づいて、ＳＷキーボード５０内の複数の仮想キーからユーザによってタッチされた仮想キーを選択する。タッチ位置情報は、外部部材（例えば、ユーザの指、またはペン）がタッチされたタッチパネルディスプレイ（ＬＣＤ１５及びタッチパネル１５Ａ）上のタッチエリア（タッチ位置）を示す座標データを含む。ＳＷＫＢ入力制御プログラム２００は、ＳＷキーボード５０の仮想キーに対するタッチとリリースを検出し、修飾キーと他のキーとの組合せによる修飾キー併用入力を制御する。
【００３５】
ＳＷＫＢ入力制御プログラム２００は、仮想キー検出部２１１、送信部２１２、出力部２１３、及びソフトウェアキーボード表示部２１４を機能実行モジュールとして含む。
【００３６】
仮想キー検出部２１１は、タッチパネルドライバ２０２を通じて入力されるタッチパネル１３Ａ，１５Ａに対するタッチ位置情報をもとに、ソフトウェアキーボード表示部２１４によって表示されるＳＷキーボード５０の仮想キーに対するタッチとリリースを検出する。仮想キー検出部２１１は、タッチ位置に基づいて、ＳＷキーボード５０に含まれる複数の仮想キーから何れかの仮想キーを選択する。
【００３７】
送信部２１２は、修飾キーと他のキーへの同時タッチによる修飾キー併用入力（第１の操作による入力）と修飾キーをキーロックした後の他のキーへのタッチによる修飾キー併用入力（第２の操作による入力）を、ユーザが簡単に使い分けて利用できるようにするために、仮想キー検出部２１１により検出される仮想キーに対するタッチとリリースを示すデータの送信を制御する。すなわち、送信部２１２は、第１の操作の検出結果として、第１キー（修飾キー）のタッチ検出に応じて、第１キーのキーダウンを示すデータを送信し、第１キーがタッチされた状態における第２キー（文字キー等）のタッチ検出に応じて、第２キーのキーダウンを示すデータを送信し、その後、第１及び第２キーのリリース検出に応じて、第１及び第２キーのキーアップを示すデータを送信する。
【００３８】
また、送信部２１２は、第２の操作の検出結果として、第１キーのタッチ検出に応じて、第１キーのキーダウンを示すデータを送信し、第１キーに対する特定の操作が検出された後、第２キーのタッチ検出に応じて、第２キーのキーダウンを示すデータを送信し、その後、第２キーのリリース検出に応じて、第２キーのキーアップを示すデータを送信した後、第１キーのキーアップを示すデータを送信する。
【００３９】
出力部２１３は、送信部２１２から出力されるキーアップ／キーダウンを示すデータに応じて、タッチ位置に応じて検出された仮想キーに応じたコードデータをＯＳ１９９に出力する。
【００４０】
ソフトウェアキーボード表示部２１４は、表示ドライバ２０３を通じて、ＳＷキーボード５０をＬＣＤ１３Ｂ（タッチスクリーンディスプレイ１３）あるいはＬＣＤ１５Ｂ（タッチスクリーンディスプレイ１５）に表示させる。
【００４１】
次に、本実施形態におけるＳＷキーボード５０からの入力制御処理について、図５に示すフローチャートを参照しながら説明する。  
まず、ボタンスイッチ１７あるいはＳＷキーボード起動ボタン４１へのユーザの操作によって、ＳＷキーボード５０の使用が要求されると、ＯＳ１９９は、ＳＷＫＢ入力制御プログラム２００を起動させる。ＳＷＫＢ入力制御プログラム２００は、ソフトウェアキーボード表示部２１４によって、タッチスクリーンディスプレイ１３あるいはタッチスクリーンディスプレイ１５にＳＷキーボード５０を表示させる。
【００４２】
ユーザによりタッチスクリーンディスプレイ１３，１５（タッチパネル１３Ａ，１５Ａ）がタッチされると、仮想キー検出部２１１は、タッチパネルドライバ２０２を通じてタッチ位置情報を入力する。仮想キー検出部２１１は、タッチ位置情報をもとに、ＳＷキーボード５０の何れかの仮想キーへのタッチ操作を検出すると送信部２１２に通知する。
【００４３】
送信部２１２は、最初にタッチ検出された仮想キー（第１キー）が、他のキーとの組み合わせによって特定の機能を指示することができる修飾キーであるかを判別する。修飾キーには、例えばシフトキー（Shift）、コントロールキー（Ctrl）、オルトキー（Alt）等がある。また、修飾キーには、単独で選択された場合でも特定の機能を指示することができるものもある。さらに、文字キーや数字キーなどの一般的にキーであっても、ＳＷＫＢ入力制御プログラム２００により他のキーとの組合せによって特定の機能を指示することができるキーとして定義されている場合には修飾キーとする。
【００４４】
送信部２１２は、タッチ検出された仮想キーが修飾キーでない場合（ステップＡ２、Ｎｏ）、この仮想キーのキーダウンを示すデータを送信する（ステップＡ９）。また、送信部２１２は、仮想キーのリリース検出があった場合（ステップＡ１０、Ｙｅｓ）、仮想キーのキーアップを示すデータを送信する（ステップＡ１１）。
【００４５】
すなわち、ユーザが、修飾キー以外の仮想キーにタップした場合（タッチして直ぐにリリースした場合）には、送信部２１２は、この修飾キーについてのキーダウン／キーアップを通知する。この場合、出力部２１３は、タップされた仮想キーに応じたコードデータをＯＳ１９９に出力する。
【００４６】
なお、ソフトウェアキーボード表示部２１４は、仮想キーへのタッチ検出があった場合、この仮想キーに該当する領域を他の領域とは異なる表示形態によって表示し、この仮想キーのリリース検出に応じて表示形態を元に戻す。例えば、ソフトウェアキーボード表示部２１４は、タッチされた仮想キーを通常とは異なる色によって表示する。
【００４７】
一方、送信部２１２は、タッチ検出された仮想キーが修飾キーであった場合（ステップＡ２、Ｙｅｓ）、この仮想キーのキーダウンを示すデータを送信する（ステップＡ３）。また、送信部２１２は、キーダウンが検出された第１キーのリリースが検出される前に、他の仮想キー（第２キー）のタッチが検出された場合には（ステップＡ５、Ｙｅｓ）、第２キーのキーダウンを示すデータを送信する（ステップＡ６）。
【００４８】
すなわち、ユーザが第１キーにタッチした状態のままで第２キーにタッチした場合には、送信部２１２は、第１の操作の検出結果として、第１キーと第２キーのキーダウンを示すデータを送信する。
【００４９】
出力部２１３は、第１キーのキーアップが通知される前に第２キーのキーダウンが通知されることで、第１キーと第２のキーとが同時にタッチされているものと判別し、第１キー（修飾キー）と第２キーの組合せに応じたコードデータをＯＳ１９９に出力する。
【００５０】
その後、送信部２１２は、第１キーと第２キーのリリースが検出されると（ステップＡ７、Ｙｅｓ）、第１キーと第２キーのキーアップを示すデータを送信する（ステップＡ８）。
【００５１】
ソフトウェアキーボード表示部２１４は、第１キーと第２キーがリリースされると、第１キーと第２キーの表示形態を元に戻す。
【００５２】
図６〜図８には、前述した第１の操作がされた場合のＳＷキーボード５０の状態の一例を示している。  
図６に示すように、修飾キー（図６ではシフトキー）がタッチされた後、修飾キーがタッチされた状態のまま、図７に示すように、修飾キー以外の他のキーがタッチされた場合には、同時にタッチされている２つの仮想キーの表示形態が変更される。その後、同時にタッチされていた修飾キーと他のキーがリリースされると、図８に示すように、各キーが元の表示形態に戻される。
【００５３】
また、送信部２１２は、第１キー（修飾キー）のタッチ検出に応じて第１キーのキーダウンを示すデータを送信した後、第２のキーのタッチが検出される前に第１キーのリリースが検出された場合（ステップＡ４、Ｙｅｓ）、第１キーのキーアップを送信しない。すなわち、第１キー（修飾キー）に対する特定の操作として、第１キーがタッチされた後、第２キーのキータッチ（あるいはキーダウン）がされる前に第１キーがリリースされた場合には、第１キーがキーロックされた状態（タッチされた状態）を維持する。ソフトウェアキーボード表示部２１４は、このキーロックされた修飾キーを、キーロックされた状態にあることを示す表示形態に変更する。
【００５４】
図９には、修飾キー（図９ではシフトキー）がキーロックされた状態の一例を示している。  
図６に示すように、修飾キー（図６ではシフトキー）がタッチされた後に、他のキーへのキータッチ（またはキーダウン）がされる前に修飾キーがリリースされると、図９に示すように、キーロックされたことを表すように修飾キーの表示形態を変更する。
【００５５】
ここで、修飾キーがキーロックされた状態で第２キーのタッチが検出されると（ステップＡ１６、Ｙｅｓ）、送信部２１２は、第２キーが修飾キーでなければ（ステップＡ１７、Ｎｏ）、第２キーのキーダウンを示すデータを送信する（ステップＡ２３）。その後、第２キーのリリースが検出されると（ステップＡ２４、Ｙｅｓ）、まず第２キーのキーアップを示すデータを送信し、次に、第１キーのキーアップを示すデータを送信する（ステップＡ２５）。
【００５６】
すなわち、ユーザが修飾キーをキーロックした後、第２キーにタッチした場合には、送信部２１２は、第２の操作の検出結果として、第２キーのキーダウンを示すデータを送信した後、第２キーと第１キーのキーアップを通知する。
【００５７】
出力部２１３は、修飾キーのキーダウンの通知に続いて第２キーのキーダウンが通知されることで、修飾キーと第２のキーとを組み合わせた操作がされたものと判別し、第１キー（修飾キー）と第２キーの組合せに応じたコードデータをＯＳ１９９に出力する。
【００５８】
ソフトウェアキーボード表示部２１４は、第２キーがリリースされると、修飾キーのキーロックが解除されたことを表すように、第１キーと第２キーの表示形態を元に戻す。
【００５９】
例えば、図１０に示すように、修飾キーがキーロックされた状態にある時に第２キー（文字キー）がタッチされると、第２キーのリリースに応じて第１キーと第２キーの表示形態を元に戻す。
【００６０】
なお、図９に示すようにキーロックされた修飾キー（第１キー）に対して、図１１に示すように再びタッチされた場合（ステップＡ１２、Ｙｅｓ）、送信部２１２は、第１キーのキーダウンを示すデータを送信し（ステップＡ１３）、その後、第１キーがリリースされると（ステップＡ１４）、第１キーのキーアップを送信する（ステップＡ１５）。すなわち、修飾キーのキーロックを解除する操作がされたものとし、ソフトウェアキーボード表示部２１４は、修飾キーを元の表示形態に戻す（図８）。
【００６１】
なお、第１キー（修飾キー）がキーロックされた状態において、次にタッチされた第２キーが修飾キーであった場合（ステップＡ１７。Ｙｅｓ）、送信部２１２は、第２キーのキーダウンを送信し（ステップＡ１８）、第２キーがリリースされても第２キーのキーアップを送信しない。すなわち、第１キーと同様に、第２キーをキーロックされた状態にする。
【００６２】
例えば、図１２に示すように、第１キー（シフトキー）がキーロックされた状態において、別の修飾キー（第２キー）（図１２ではオルトキー）がタッチされた場合には、ソフトウェアキーボード表示部２１４は、別の修飾キーもキーロックされた状態を表すように表示形態を変更する。
【００６３】
ここで、図１４に示すように、修飾キー以外の他のキー（第３キー）のタッチが検出された場合（ステップＡ１９、Ｙｅｓ）、送信部２１２は、第３キーのキーダウンを示すデータを送信する（ステップＡ２０）。その後、第３キーのリリースが検出されると（ステップＡ２１、Ｙｅｓ）、第３キーのキーアップを示すデータ、第２キーのキーアップを示すデータ、第１キーのキーアップを示すデータを順番に送信する（ステップＡ２２）。
【００６４】
出力部２１３は、２つの修飾キーのキーダウンの通知に続いて第３キーのキーダウンが通知されることで、２つの修飾キーと第３のキーとを組み合わせた操作がされたものと判別し、第１及び第２キー（修飾キー）と第３キーの組合せに応じたコードデータをＯＳ１９９に出力する。
【００６５】
なお、前述した説明では、２つの修飾キーを連続してキーロックした状態にしているが３つ以上の修飾キーを同様にしてキーロックさせることも可能である。
【００６６】
また、２つの修飾キーがキーロックされた状態において、再び、キーロックされた状態の修飾キーをタッチすることにより、ステップＡ１２〜Ａ１５のように、キーダウンとキーアップを示すデータを送信することにより、キーロックを解除することが可能である。
【００６７】
なお、前述した説明では、修飾キーがキーロックされた状態において、次に修飾キー以外の他のキーがタッチされた場合、修飾キーのキーロックを解除するものとして説明しているが、キーロックを維持するようにしても良い。
【００６８】
例えば、ステップＡ２４において、第２キーのリリースが検出された場合、ステップＡ２５において、第２キーのキーアップを示すデータのみを送信し、第１キーのキーアップを示すデータを送信しない。これにより、第１キーのリリースが検出された後（ステップＡ４、Ｙｅｓ）と同じ状態となり、第１キー（修飾キー）をキーロックした状態にしておくことができる。この場合、キーロックを解除するためには、キーロックされた修飾キーを再びタッチしてリリースすればよい。
【００６９】
なお、第２の操作において、第１キーに対する特定の操作が複数種類ある場合（詳細については後述する。図１５〜図１８）、何れの特定の操作がされたかに応じて、第２キーがリリースされた際に、修飾キーも同時にキーロックを解除するか、あるいはキーロックを継続するかを切り替えるようにしても良い。
【００７０】
なお、ソフトウェアキーボード表示部２１４は、修飾キーのキーロックが第２キーのリリースに応じて解除される場合と解除されない場合とによって、キーロックされた状態を表す表示形態を変えても良い。例えば、第２キーのリリースに応じて解除される場合には、修飾キーを青色で表示し（第１の形態）、第２キーのリリースに応じて解除されない場合には赤色によって表示する（第２の形態）。
【００７１】
このようにして、本実施形態のパーソナルコンピュータ１０では、第１の操作と第２の操作に応じて、タッチ／リリース検出されたキーのキーダウン／キーアップを送信するので、修飾キーと他のキーへの同時タッチによる修飾キー併用入力と修飾キーをキーロックした後の他のキーへのタッチによる修飾キー併用入力とを簡単に使い分けることが可能となる。同時タッチによる修飾キー併用入力では、例えば連続してアルファベットの大文字を入力したいときに、修飾キーをタッチしたまま連続して文字キーをタッチすれば良いので操作性が良好となる。また、修飾キーをキーロックする修飾キー併用入力では、例えば、電子機器を片方の手で持ちながら他方の手のみでタッチしたり、電子機器を片手で保持して親指だけでタッチしたりする場合であっても操作が容易であり、また３つ以上のキーの併用入力も容易に行うことが可能となる。
【００７２】
次に、修飾キーをキーロック状態にするための第２の操作における特定の操作について説明する。  
前述した説明では、特定の操作として、第１キー（修飾キー）をタッチした後、第２キーをタッチする前に第１キーをリリースするとしているが、他の特定の操作を用いることができる。以下、４つの特定の操作処理（１）〜（４）について説明する。
【００７３】
まず、特定の操作処理（１）について、図１５に示すフローチャートを参照しながら説明する。なお、図１５に示すフローチャートは、図５に示すフローチャートの一部を代替するものである。図１５に示すステップＢ１〜Ｂ３は、図５のステップＡ１〜Ａ３にそれぞれ対応する。
【００７４】
特定の操作処理（１）では、第１キー（修飾キー）をタッチした後、第２キーをタッチする前に第１キーをリリースすると共に、第１キーのタッチ検出（ステップＢ１、Ｙｅｓ）がされた後に、第１キーのリリース検出（ステップＢ４、Ｙｅｓ）までの時間が一定時間以上（例えば、０．３秒）であった場合（ステップＢ５、Ｙｅｓ）、第１キーのリリース検出に応じてキーアップを示すデータを送信しないことにより、第１キーをキーロック状態にする。
【００７５】
従って、特定の操作処理（１）を用いる場合、修飾キーをキーロックしたい場合には、一定時間以上、他のキーをタッチ（あるいはリリース）しないで、修飾キーにタッチしたままでいれば良い。
【００７６】
これにより、修飾キーが単独で特定の機能を指示できる場合に、特定の操作をするか否かによって、単独のキータッチとキーロックを簡単に切り替えることかできる。
【００７７】
なお、単独操作によって特定の機能を指示できる修飾キーとしては、例えば、スタートメニューを開くための機能キー、メニューウィンドウでメニューを開くためのオルトキー、あるいは一部の言語（例えば中国語）においてＩＭＥ（Input Method Editor）のオン／オフを切り替えるために使用されるシフトキーなどがある。
【００７８】
次に、特定の操作処理（２）について、図１６に示すフローチャートを参照しながら説明する。なお、図１６に示すフローチャートは、図５に示すフローチャートの一部を代替するものである。図１６に示すステップＣ１〜Ｃ３は、図５のステップＡ１〜Ａ３にそれぞれ対応する。
【００７９】
特定の操作処理（２）では、第１キー（修飾キー）をタッチした後、第２キーをタッチする前に第１キーをリリースすると共に、第１キーのタッチ検出（ステップＢ１、Ｙｅｓ）がされた後に、第１キーのリリース検出（ステップＣ４、Ｙｅｓ）、第１キーのタッチ検出（ステップＣ５、Ｙｅｓ）、第１キーのリリース検出（ステップＣ６、Ｙｅｓ）までの時間が一定時間以内（例えば、０．５秒）であった場合（ステップＣ７、Ｙｅｓ）、第１キーのリリース検出に応じてキーアップを示すデータを送信しないことにより、第１キーをキーロック状態にする。すなわち、修飾キーを一定時間内に２回タップ（ダブルクリック）することにより、修飾キーをキーロック状態にすることができる。これにより、修飾キーに対するキーロックの指示を明確にすることができる。
【００８０】
次に、特定の操作処理（３）について、図１７に示すフローチャートを参照しながら説明する。なお、図１７に示すフローチャートは、図５に示すフローチャートの一部を代替するものである。図１７に示すステップＥ１〜Ｅ３は、図５のステップＡ１〜Ａ３にそれぞれ対応する。
【００８１】
特定の操作処理（３）では、第１キー（修飾キー）をタッチした後、第２キーをタッチする前に第１キーをリリースすると共に、第１キーのタッチ検出（ステップＥ１、Ｙｅｓ）がされた後に、第１キーのリリース検出（ステップＥ４、Ｙｅｓ）までの時間が一定時間以内（例えば、０．３秒）であった場合（ステップＥ５、Ｙｅｓ）、第１キーのリリース検出に応じてキーアップを示すデータを送信しないことにより、第１キーをキーロック状態にする。
【００８２】
特定の操作処理（３）では、特定の操作処理（１）とは逆に、修飾キーに対する短時間でのタッチとリリースによりキーロック状態にすることができるので、キーロックの切り替え操作を頻繁に行う場合に便利となる。
【００８３】
次に、特定の操作処理（４）について、図１８に示すフローチャートを参照しながら説明する。なお、図１８に示すフローチャートは、図５に示すフローチャートの一部を代替するものである。図１８に示すステップＤ１〜Ｄ３は、図５のステップＡ１〜Ａ３にそれぞれ対応する。
【００８４】
特定の操作処理（４）では、第１キー（修飾キー）をタッチした後、第２キーをタッチする前に第１キーをリリースすると共に、第１キーのタッチ検出（ステップＥ１、Ｙｅｓ）がされた後に、タッチ位置が第１キーの領域外に移動されたことが検出された場合（ステップＤ４、Ｙｅｓ）、第１キーのリリース検出に応じてキーアップを示すデータを送信しないことにより、第１キーをキーロック状態にする。
【００８５】
例えば、図１９に示すように、シフトキーにタッチした後、図２０に示すように、シフトキー以外の領域にタッチ位置を移動させることにより、シフトキーをキーロック状態にすることができる。
【００８６】
特定の操作処理（４）では、特定の操作処理（２）のように、連続したタッチ操作（ダブルクリック）が苦手にユーザであっても確実に操作することが可能となる。
【００８７】
前述した特定の操作処理（１）〜（４）は、予め何れかが使用されるようにＳＷＫＢ入力制御プログラム２００に設定されていても良い。また、ユーティリティの実行により、何れの特定の操作処理を用いるかをユーザが予め選択できるようにしても良い。
【００８８】
また、１つの修飾キーに対して、例えば２つの特定の操作処理を用いてキーロックできるように設定し、何れの特定の操作処理がされたかに応じて、第２キーのリリースに応じて、修飾キーのキーロックを解除するか、キーロックを継続するかを切り換えるようにしても良い。
【００８９】
また、修飾キーに応じて特定の設定処理が決められていても良い。例えば、シフトキーについては、特定の操作処理（１）を用いた場合にキーロックし、コントロールキーについては、特定の操作処理（２）を用いた場合にキーロックするように制御する。
【００９０】
なお、前述した説明において、ソフトウェアキーボード５０は、一般的なハードウェアにより構成されたキーボードと同様の複数のキーが配列されているとしているが、タッチ操作によって選択可能な複数のオブジェクトを含む形式であれば、キーボードの形式でなくても良い。
【００９１】
また、前述した説明では、タッチパネル１３Ａ，１５Ａは、例えば、２点以上のタッチ位置を同時に検知可能なマルチタッチパネルが使用されるものとしているが、１点のタッチ位置を検出するタッチパネルとしても良い。この場合、一方のタッチパネル１３Ａにおいて修飾キーを含むソフトウェアキーボードを表示し、他方のタッチパネル１５Ａに修飾キー組み合わせて操作されるキー（文字、数字キー等）を含むソフトウェアキーボードを表示する。これにより、タッチパネル１３Ａ，１５Ａが１点のタッチ位置を検出するタッチパネルであっても、修飾キーと他のキーとを同時にタッチすることが可能となる。
【００９２】
また、なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【００９３】
また、前述した実施の形態において記載した処理は、コンピュータに実行させることのできるプログラムとして、例えば磁気ディスク（フレキシブルディスク、ハードディスク等）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤ等）、半導体メモリなどの記録媒体に書き込んで各種装置に提供することができる。また、通信媒体により伝送して各種装置に提供することも可能である。コンピュータは、記録媒体に記録されたプログラムを読み込み、または通信媒体を介してプログラムを受信し、このプログラムによって動作が制御されることにより、上述した処理を実行する。
【符号の説明】
【００９４】
１０…コンピュータ、１１…本体、１２…ディスプレイユニット、１３，１５…タッチスクリーンディスプレイ、１３Ａ，１５Ａ…タッチパネル、１３Ｂ，１５Ｂ…ＬＣＤ、３０…ソフトウェアタッチパッド、５０…ソフトウェアキーボード、１１１…ＣＰＵ、１９９…ＯＳ、２００…ソフトウェアキーボード入力制御プログラム。
【図１】
2011248399.tif 000003
【図２】
2011248399.tif 000004
【図３】
2011248399.tif 000005
【図４】
2011248399.tif 000006
【図５】
2011248399.tif 000007
【図６】
2011248399.tif 000008
【図７】
2011248399.tif 000009
【図８】
2011248399.tif 000010
【図９】
2011248399.tif 000011
【図１０】
2011248399.tif 000012
【図１１】
2011248399.tif 000013
【図１２】
2011248399.tif 000014
【図１３】
2011248399.tif 000015
【図１４】
2011248399.tif 000016
【図１５】
2011248399.tif 000017
【図１６】
2011248399.tif 000018
【図１７】
2011248399.tif 000019
【図１８】
2011248399.tif 000020
【図１９】
2011248399.tif 000021
【図２０】
2011248399.tif 000022
【手続補正書】
【提出日】平成23年9月30日(2011.9.30)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】変更
【補正の内容】
【００１０】
実施形態によれば、電子機器は、タッチパネルとディスプレイと表示手段とキー検出手段と送信手段とを具備する。表示手段は、複数のキーを含むソフトウェアキーボードを前記ディスプレイに表示する。キー検出手段は、前記タッチパネルに対するタッチ検出に基づいて、前記ソフトウェアキーボードのキーに対するタッチとリリースを検出する。送信手段は、第１の操作の検出結果として、第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーがタッチされた状態における第２キーのタッチ検出に応じて、前記第２キーのキーダウンを示すデータを送信し、その後、前記第１及び第２キーのリリース検出に応じて、前記第１及び第２キーのキーアップを示すデータを送信し、第２の操作の検出結果として、前記第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーに対する特定の操作が検出された後、前記第２キーのタッチ検出に応じて、前記第２キーのキーダウンを示すデータを送信し、その後、前記第２キーのリリース検出に応じて、前記第２キーのキーアップを示すデータを送信した後、前記第１キーのキーアップを示すデータを送信し、第３の操作の検出結果として、前記第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーに対する前記特定の操作が検出されなかった場合に、前記第１キーのリリース検出に応じて、前記第１キーのキーアップを示すデータを送信する。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００２２
【補正方法】変更
【補正の内容】
【００２２】
図２は、本実施形態におけるＳＷＫＢ入力制御プログラム２００を実行することにより、タッチスクリーンディスプレイ１５においてＳＷキーボード５０が表示された画面の一例を示している。ＳＷキーボード５０は、例えば、タッチスクリーンディスプレイ１５（ＬＣＤ１５Ｂ）の表示画面全体にフルスクリーンモードで表示することができる。ＳＷキーボード５０は、複数のキーコードをそれぞれ入力するための複数の仮想キー（複数の数字キー、複数のアルファベットキー、複数の矢印キー、複数の補助キー、複数のファンクションキー等）を含んでいる。ＳＷキーボード５０の仮想キーに対するタッチ操作により、タッチ位置の仮想キーに応じたコードデータが入力される。なお、ＳＷＫＢ入力制御プログラム２００は、タッチスクリーンディスプレイ１３においても同様にしてＳＷタッチパッドを表示させることができる。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００２３
【補正方法】変更
【補正の内容】
【００２３】
また、ＳＷキーボード５０には、表示位置変更キーが設けられている。表示位置変更キーに対するタッチ操作があった場合、ＳＷＫＢ入力制御プログラム２００は、ＳＷキーボード５０を表示させるタッチスクリーンディスプレイを変更する。例えば、図２に示すように、ＳＷキーボード５０をタッチスクリーンディスプレイ１５に表示している場合には、表示位置変更キーは、タッチスクリーンディスプレイ１３の方向を示す上向きの矢印が表示されている。この状態で表示位置変更キーがタッチされると、ＳＷＫＢ入力制御プログラム２００は、ＳＷキーボード５０の表示を、タッチスクリーンディスプレイ１５からタッチスクリーンディスプレイ１３に変更する。なお、タッチスクリーンディスプレイ１３にＳＷキーボード５０が表示されている場合には、表示位置変更キーの矢印は下向きになる。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００２６
【補正方法】変更
【補正の内容】
【００２６】
パーソナルコンピュータ１０は、ＣＰＵ１１１、ノースブリッジ１１２、主メモリ１１３、グラフィクスコントローラ１１４、サウスブリッジ１１５、ＢＩＯＳ−ＲＯＭ１１６、ハードディスクドライブ（ＨＤＤ）１１７、エンベデッドコントローラ１１８等を備えている。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００４３
【補正方法】変更
【補正の内容】
【００４３】
送信部２１２は、最初にタッチ検出された仮想キー（第１キー）が、他のキーとの組み合わせによって特定の機能を指示することができる修飾キーであるかを判別する。修飾キーには、例えばシフトキー（Shift）、コントロールキー（Ctrl）、オルトキー（Alt）等がある。また、修飾キーには、単独で選択された場合でも特定の機能を指示することができるものもある。さらに、文字キーや数字キーなどの一般的なキーであっても、ＳＷＫＢ入力制御プログラム２００により他のキーとの組合せによって特定の機能を指示することができるキーとして定義されている場合には修飾キーとする。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００４５
【補正方法】変更
【補正の内容】
【００４５】
すなわち、ユーザが、修飾キー以外の仮想キーにタップした場合（タッチして直ぐにリリースした場合）には、送信部２１２は、この仮想キーについてのキーダウン／キーアップを通知する。この場合、出力部２１３は、タップされた仮想キーに応じたコードデータをＯＳ１９９に出力する。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００７９
【補正方法】変更
【補正の内容】
【００７９】
特定の操作処理（２）では、第１キー（修飾キー）をタッチした後、第２キーをタッチする前に第１キーをリリースすると共に、第１キーのタッチ検出（ステップＣ１、Ｙｅｓ）がされた後に、第１キーのリリース検出（ステップＣ４、Ｙｅｓ）、第１キーのタッチ検出（ステップＣ５、Ｙｅｓ）、第１キーのリリース検出（ステップＣ６、Ｙｅｓ）までの時間が一定時間以内（例えば、０．５秒）であった場合（ステップＣ７、Ｙｅｓ）、第１キーのリリース検出に応じてキーアップを示すデータを送信しないことにより、第１キーをキーロック状態にする。すなわち、修飾キーを一定時間内に２回タップ（ダブルクリック）することにより、修飾キーをキーロック状態にすることができる。これにより、修飾キーに対するキーロックの指示を明確にすることができる。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００８４
【補正方法】変更
【補正の内容】
【００８４】
特定の操作処理（４）では、第１キー（修飾キー）をタッチした後、第２キーをタッチする前に第１キーをリリースすると共に、第１キーのタッチ検出（ステップＤ１、Ｙｅｓ）がされた後に、タッチ位置が第１キーの領域外に移動されたことが検出された場合（ステップＤ４、Ｙｅｓ）、第１キーのリリース検出に応じてキーアップを示すデータを送信しないことにより、第１キーをキーロック状態にする。
【手続補正９】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
タッチパネルと、
ディスプレイと、
複数のキーを含むソフトウェアキーボードを前記ディスプレイに表示する表示手段と、
前記タッチパネルに対するタッチ検出に基づいて、前記ソフトウェアキーボードのキーに対するタッチとリリースを検出するキー検出手段と、
第１の操作の検出結果として、第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーがタッチされた状態における第２キーのタッチ検出に応じて、前記第２キーのキーダウンを示すデータを送信し、その後、前記第１及び第２キーのリリース検出に応じて、前記第１及び第２キーのキーアップを示すデータを送信し、第２の操作の検出結果として、前記第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーに対する特定の操作が検出された後、前記第２キーのタッチ検出に応じて、前記第２キーのキーダウンを示すデータを送信し、その後、前記第２キーのリリース検出に応じて、前記第２キーのキーアップを示すデータを送信した後、前記第１キーのキーアップを示すデータを送信し、第３の操作の検出結果として、前記第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーに対する前記特定の操作が検出されなかった場合に、前記第１キーのリリース検出に応じて、前記第１キーのキーアップを示すデータを送信する送信手段と
を具備する電子機器。
【請求項２】
前記第１キーは、前記第２キーとの組合せにより操作される予め決められたキーとする請求項１記載の電子機器。
【請求項３】
前記送信手段は、前記第２の操作の検出結果として、
前記特定の操作の後に、再度、前記第１キーのタッチとリリースが検出された場合に、前記第１キーアップを示すデータを送信する請求項２記載の電子機器。
【請求項４】
前記送信手段は、前記第２の操作の検出結果として、
前記第２キーが前記第１キーと第３のキーとの組合せにより操作される予め決められたキーである場合に、前記第２キーのタッチ検出に応じて前記第２キーのキーダウンを示すデータを送信し、前記第２キーのリリースが検出された後、前記第３のキーのタッチ検出に応じて、前記第３のキーのキーダウンを示すデータを送信し、その後、前記第３のキーのリリース検出に応じて、前記第３のキーのキーアップを示すデータ、前記第２キーのキーアップを示すデータ、及び前記第１キーのキーアップを示すデータを送信する請求項２記載の電子機器。
【請求項５】
前記表示手段は、
前記第１キーに対する第１の特定の操作が検出された場合、前記第１キーを第１の形態により表示し、
前記第１キーに対する前記第１の特定の操作と異なる第２の特定の操作が検出された場合、前記第１キーを第２の形態により表示する請求項２記載の電子機器。
【請求項６】
タッチパネルと、
ディスプレイと、
複数のキーを含むソフトウェアキーボードを前記ディスプレイに表示する表示手段と、
前記タッチパネルに対するタッチ検出に基づいて、前記ソフトウェアキーボードのキーに対するタッチとリリースを検出するキー検出手段と、
第１の操作の検出結果として、第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーがタッチされた状態における第２キーのタッチ検出に応じて、前記第２キーのキーダウンを示すデータを送信し、その後、前記第１及び第２キーのリリース検出に応じて、前記第１及び第２キーのキーアップを示すデータを送信し、第２の操作の検出結果として、前記第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーに対する特定の操作が検出された後、前記第２キーのタッチ検出に応じて、前記第２キーのキーダウンを示すデータを送信し、その後、前記第２キーのリリース検出に応じて、前記第２キーのキーアップを示すデータを送信し、第３の操作の検出結果として、前記第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーに対する前記特定の操作が検出されなかった場合に、前記第１キーのリリース検出に応じて、前記第１キーのキーアップを示すデータを送信する第１送信手段と、
前記第１送信手段により前記第２キーのキーアップを示すデータを送信した後、再び、前記第２キーのタッチ検出に応じて、前記第２キーのキーダウンを示すデータを送信し、その後、前記第２キーのリリース検出に応じて、前記第２キーのキーアップを示すデータを送信した後、前記第１キーのキーアップを示すデータを送信する第２送信手段と
を具備する電子機器。
【請求項７】
前記特定の操作は、
前記第１キーのタッチ検出から前記第１キーのリリース検出までの時間が予め決められた一定時間以上である操作とする請求項１または請求項６記載の電子機器。
【請求項８】
前記特定の操作は、
予め決められた一定時間内の前記第１キーに対するリリース、タッチ、リリースの操作とする請求項１または請求項６記載の電子機器。
【請求項９】
前記特定の操作は、
前記第１キーに対するタッチ後、前記第１キーの領域外へ移動させる操作とする請求項１または請求項６記載の電子機器。
【請求項１０】
前記特定の操作は、
前記第１キーのタッチ検出から前記第１キーのリリース検出までの時間が予め決められた一定時間内である操作とする請求項１または請求項６記載の電子機器。
請求項１または請求項６記載の電子機器。
【請求項１１】
複数のキーを含むソフトウェアキーボードをディスプレイに表示し、
タッチパネルに対するタッチ検出に基づいて、前記ソフトウェアキーボードのキーに対するタッチとリリースを検出し、
第１の操作の検出結果として、第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーがタッチされた状態における第２キーのタッチ検出に応じて、前記第２キーのキーダウンを示すデータを送信し、その後、前記第１及び第２キーのリリース検出に応じて、前記第１及び第２キーのキーアップを示すデータを送信し、第２の操作の検出結果として、前記第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーに対する特定の操作が検出された後、前記第２キーのタッチ検出に応じて、前記第２キーのキーダウンを示すデータを送信し、その後、前記第２キーのリリース検出に応じて、前記第２キーのキーアップを示すデータを送信した後、前記第１キーのキーアップを示すデータを送信し、第３の操作の検出結果として、前記第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーに対する前記特定の操作が検出されなかった場合に、前記第１キーのリリース検出に応じて、前記第１キーのキーアップを示すデータを送信する入力制御方法。
【請求項１２】
前記第２の操作の検出結果として、前記第２キーが前記第１キーと第３のキーとの組合せにより操作される予め決められたキーである場合に、前記第２キーのタッチ検出に応じて前記第２キーのキーダウンを示すデータを送信し、前記第２キーのリリースが検出された後、前記第３のキーのタッチ検出に応じて、前記第３のキーのキーダウンを示すデータを送信し、その後、前記第３のキーのリリース検出に応じて、前記第３のキーのキーアップを示すデータ、前記第２キーのキーアップを示すデータ、及び前記第１キーのキーアップを示すデータを送信する請求項１１記載の入力制御方法。
【請求項１３】
コンピュータにより実行される入力制御プログラムであって、前記入力制御プログラムは、
複数のキーを含むソフトウェアキーボードをディスプレイに表示し、
タッチパネルに対するタッチ検出に基づいて、前記ソフトウェアキーボードのキーに対するタッチとリリースを検出し、
第１の操作の検出結果として、第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーがタッチされた状態における第２キーのタッチ検出に応じて、前記第２キーのキーダウンを示すデータを送信し、その後、前記第１及び第２キーのリリース検出に応じて、前記第１及び第２キーのキーアップを示すデータを送信し、第２の操作の検出結果として、前記第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーに対する特定の操作が検出された後、前記第２キーのタッチ検出に応じて、前記第２キーのキーダウンを示すデータを送信し、その後、前記第２キーのリリース検出に応じて、前記第２キーのキーアップを示すデータを送信した後、前記第１キーのキーアップを示すデータを送信し、第３の操作の検出結果として、前記第１キーのタッチ検出に応じて、前記第１キーのキーダウンを示すデータを送信し、前記第１キーに対する前記特定の操作が検出されなかった場合に、前記第１キーのリリース検出に応じて、前記第１キーのキーアップを示すデータを送信する入力制御プログラム。
【請求項１４】
前記第２の操作の検出結果として、前記第２キーが前記第１キーと第３のキーとの組合せにより操作される予め決められたキーである場合に、前記第２キーのタッチ検出に応じて前記第２キーのキーダウンを示すデータを送信し、前記第２キーのリリースが検出された後、前記第３のキーのタッチ検出に応じて、前記第３のキーのキーダウンを示すデータを送信し、その後、前記第３のキーのリリース検出に応じて、前記第３のキーのキーアップを示すデータ、前記第２キーのキーアップを示すデータ、及び前記第１キーのキーアップを示すデータを送信する請求項１３記載の入力制御プログラム。