(57)【特許請求の範囲】
【請求項１】
タッチパネルへの接触によるマウスイベントを入力イベントとして検知し、通常使用の入力モードにおいて前記マウスイベントを検知した場合には、前記タッチパネルの接触位置にマウス位置を移動するマウス移動イベントを発行し、さらに続けてマウス左クリックイベントを発行する情報処理システムの入力方法であって、
実行モジュールの起動により前記通常使用の入力モードとは相違する他の入力モードに移行するステップと、
前記他の入力モードへの移行に応じてマウスカーソルを生成するステップと、
前記入力イベントをデバイスドライバから受取り、フックするステップと、
前記入力イベントが前記マウスイベントである場合に、前記マウス移動イベントに続く前記マウス左クリックイベントを無効化するステップと、
前記入力イベントにおける前記タッチパネルの前記接触位置に前記マウスカーソルを表示するステップと、
を含むタッチパネルに対応した入力方法。
【請求項２】
マウスイベントを制御するためのツールウィンドウを生成し、前記タッチパネルに前記ツールウィンドウを表示するステップをさらに有し、
前記フックした入力イベントがマウスイベントである場合に、前記マウス位置が前記ツールウィンドウの領域内にあるかを判断する第１判断ステップと、
前記第１判断ステップの判断で前記マウス位置が前記ツールウィンドウの領域内にないと判断された場合に、前記マウスイベントの無効化ステップおよび前記マウスカーソルの表示ステップを実行するステップと、
前記第１判断ステップの判断で前記マウス位置が前記ツールウィンドウの領域内にあると判断された場合に、前記マウス位置が、前記ツールウィンドウ内のマウス移動ボタンの領域内にあるかを判断する第２判断ステップと、
前記第２判断ステップの判断で前記マウス位置が前記ツールウィンドウ内のマウス移動ボタンの領域内にあると判断された場合に、前記マウス移動ボタンの割り当てる方向に前記マウスカーソルを移動して表示するステップと、
をさらに含む請求項１記載の入力方法。
【請求項３】
前記第２判断ステップの判断で前記マウス位置が前記ツールウィンドウ内のマウス移動ボタンの領域内にないと判断された場合に、前記マウス位置が、前記ツールウィンドウ内の前記マウスカーソルの移動速度を変更する速度変更ボタンの領域内にあるかを判断する第３判断ステップと、
前記第３判断ステップの判断で前記マウス位置が前記ツールウィンドウ内の前記マウスカーソルの移動速度を変更する速度変更ボタンの領域内にあると判断された場合に、前記マウスカーソルの移動速度の設定を変更するステップと、
をさらに含む請求項２記載の入力方法。
【請求項４】
前記第２判断ステップの判断で前記マウス位置が前記ツールウィンドウ内のマウス移動ボタンの領域内にないと判断された場合に、前記マウス位置が、前記ツールウィンドウ内のマウスイベント発行ボタンの領域内にあるかを判断する第４判断ステップと、
前記第４判断ステップの判断で前記マウス位置が前記ツールウィンドウ内のマウスイベント発行ボタンの領域内にあると判断された場合に、前記マウスイベント発行ボタンに割り当てられているマウスイベントを発行するステップと、
をさらに含む請求項２記載の入力方法。
【請求項５】
前記第２判断ステップの判断で前記マウス位置が前記ツールウィンドウ内のマウス移動ボタンの領域内にないと判断された場合であって、かつ、前記マウス位置が前記ツールウィンドウ内の各ボタンの領域内にない場合に、次回のマウスイベントにおけるマウス位置に前記ツールウィンドウを移動して表示するステップ、
をさらに含む請求項２記載の入力方法。
【請求項６】
前記フックした入力イベントがキーボードイベントである場合に、さらに、前記キーボードイベントにおいて押下されたキーが、マウス移動キーであるかを判断する第５判断ステップと、
前記第５判断ステップの判断で前記キーボードイベントにおいて押下されたキーがマウス移動キーであると判断された場合に、前記マウス移動キーに割り当てられた方向に前記マウスカーソルを移動して表示するステップと、
をさらに含む請求項１記載の入力方法。
【請求項７】
前記フックした入力イベントがキーボードイベントである場合に、さらに、前記キーボードイベントにおいて押下されたキーが、前記マウスカーソルの移動速度を変更する速度変更キーであるかを判断する第６判断ステップと、
前記第６判断ステップの判断で前記キーボードイベントにおいて押下されたキーが前記マウスカーソルの移動速度を変更する速度変更キーであると判断された場合に、前記マウスカーソルの移動速度の設定を変更するステップと、
をさらに含む請求項１記載の入力方法。
【請求項８】
前記フックした入力イベントがキーボードイベントである場合に、さらに、前記キーボードイベントにおいて押下されたキーが、マウスイベント発行キーであるかを判断する第７判断ステップと、
前記第７判断ステップの判断で前記キーボードイベントにおいて押下されたキーがマウスイベント発行キーであると判断された場合に、前記マウスイベント発行キーに割り当てられているマウスイベントを発行するステップと、
をさらに含む請求項１記載の入力方法。
【請求項９】
タッチパネルへの接触によるマウスイベントを入力イベントとして検知し、通常使用の入力モードにおいて前記マウスイベントを検知した場合には、前記タッチパネルの接触位置にマウス位置を移動するマウス移動イベントを発行し、さらに続けてマウス左クリックイベントを発行する情報処理システムにおける入力システムであって、
実行モジュールの起動により前記通常使用の入力モードとは相違する他の入力モードに移行する手段と、
前記他の入力モードへの移行に応じてマウスカーソルを生成する手段と、
前記入力イベントをデバイスドライバから受取り、フックする手段と、
前記入力イベントが前記マウスイベントである場合に、前記マウス移動イベントに続く前記マウス左クリックイベントを無効化する手段と、
前記入力イベントにおける前記タッチパネルの前記接触位置に前記マウスカーソルを表示する手段と、
を含むタッチパネルに対応した入力システム。
【請求項１０】
マウスイベントを制御するためのツールウィンドウを生成し、前記タッチパネルに前記ツールウィンドウを表示する手段をさらに有し、
前記マウス位置が前記ツールウィンドウの領域内にある場合に、さらに、前記マウス位置が、前記ツールウィンドウ内のマウス移動ボタンの領域内にあるか、前記マウスカーソルの移動速度を変更する速度変更ボタンの領域内にあるか、マウスイベント発行ボタンの領域内にあるか、または、前記各ボタンの何れの領域にも無いか、の何れかの判断を実行する手段と、
前記マウス位置が前記マウス移動ボタンの領域内にある時、前記マウス移動ボタンの割り当てる方向に前記マウスカーソルを移動して表示し、前記マウス位置が前記速度変更ボタンの領域内にある時、前記マウスカーソルの移動速度の設定を変更し、前記マウス位置が前記マウスイベント発行ボタンの領域内にある時、前記マウスイベント発行ボタンに割り当てられているマウスイベントを発行し、または、前記マウス位置が前記各ボタンの何れの領域にも無い時、次回のマウスイベントにおけるマウス位置に前記ツールウィンドウを移動して表示する、何れかの処理を実行する手段と、
をさらに有する請求項９記載の入力システム。
【請求項１１】
前記フック手段によりフックされた入力イベントが、キーボードイベントである場合に、さらに、前記キーボードイベントにおいて押下されたキーが、マウス移動キーであるか、マウス移動の速度を変更する速度変更キーであるか、または、マウスイベント発行キーであるか、の何れかの判断を実行する手段と、
前記押下されたキーが前記マウス移動キーである時、前記マウス移動キーに割り当てられた方向に前記マウスカーソルを移動し、前記速度変更キーである時、前記マウスカーソルの移動速度を変更し、または、前記マウスイベント発行キーである時、前記マウスイベント発行キーに割り当てられているマウスイベントを発行する、何れかの処理を実行する手段と、
をさらに有する請求項９記載の入力システム。
【請求項１２】
タッチパネルへの接触によるマウスイベントを入力イベントとして検知し、通常使用の入力モードにおいて前記マウスイベントを検知した場合には、前記タッチパネルの接触位置にマウス位置を移動するマウス移動イベントを発行し、さらに続けてマウス左クリックイベントを発行するコンピュータシステムにおいて、コンピュータに、
実行モジュールの起動により前記通常使用の入力モードとは相違する他の入力モードに移行する手順と、
前記他の入力モードへの移行に応じてマウスカーソルを生成する手順と、
前記入力イベントをデバイスドライバから受取り、フックする手順と、
前記入力イベントが前記マウスイベントである場合に、前記マウス移動イベントに続く前記マウス左クリックイベントを無効化する手順と、
前記入力イベントにおける前記タッチパネルの前記接触位置に前記マウスカーソルを表示する手順と、
を実行させるプログラム。
【請求項１３】
マウスイベントを制御するためのツールウィンドウを生成し、前記タッチパネルに前記ツールウィンドウを表示する手順と、
前記フックした入力イベントがマウスイベントである場合に、前記マウス位置が、前記ツールウィンドウの領域内にあるかを判断する第１判断手順と、
前記第１判断手順の判断で前記マウス位置が前記ツールウィンドウの領域内にないと判断された場合に、前記マウスイベントの無効化手順および前記マウスカーソルの表示手順を実行する手順と、
前記第１判断手順の判断で前記マウス位置が前記ツールウィンドウの領域内にあると判断された場合に、前記マウス位置が、前記ツールウィンドウ内のマウス移動ボタンの領域内にあるかを判断する第２判断手順と、
前記第２判断手順の判断で前記マウス位置が前記ツールウィンドウ内のマウス移動ボタンの領域内にあると判断された場合に、前記マウス移動ボタンの割り当てる方向に前記マウスカーソルを移動して表示する手順と、
前記第２判断手順の判断で前記マウス位置が前記ツールウィンドウ内のマウス移動ボタンの領域内にないと判断された場合に、前記マウス位置が、前記ツールウィンドウ内のマウスイベント発行ボタンの領域内にあるかを判断する第３判断手順と、
前記第３判断手順の判断で前記マウス位置が前記ツールウィンドウ内のマウスイベント発行ボタンの領域内にあると判断された場合に、前記マウスイベント発行ボタンに割り当てられているマウスイベントを発行する手順と、
をさらにコンピュータに実行させる請求項１２記載のプログラム。
【請求項１４】
前記フックした入力イベントがキーボードイベントである場合に、さらに、前記キーボードイベントにおいて押下されたキーが、マウス移動キーであるかを判断する第４判断手順と、
前記第４判断手順の判断で前記キーボードイベントにおいて押下されたキーがマウス移動キーであると判断された場合に、前記マウス移動キーに割り当てられた方向に前記マウスカーソルを移動して表示する手順と、
前記第４判断手順の判断で前記キーボードイベントにおいて押下されたキーがマウス移動キーでないと判断された場合に、さらに、前記キーボードイベントにおいて押下されたキーが、マウスイベント発行キーであるかを判断する第５判断手順と、
前記第５判断手順の判断で前記キーボードイベントにおいて押下されたキーがマウスイベント発行キーであると判断された場合に、前記マウスイベント発行キーに割り当てられているマウスイベントを発行する手順と、
をさらにコンピュータに実行させる請求項１２記載のプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、タッチパネルに対応した入力方法、入力システムおよびプログラムに関し、特にタッチパネル入力におけるマウス位置の位置決めを高精細に行うことを可能にした入力手段に関する。
【０００２】
【従来の技術】
銀行のＡＴＭ（automatic teller machine）やＡＣＭ（automatic consulting machine）等不特定多数のユーザが利用する情報機器では、コンピュータの操作に熟練していない一般ユーザの利用を想定する。このため、多くの場合これら自動機器では、ユーザの利便性を考慮して入力デバイスにタッチパネルが採用される。
【０００３】
たとえば特開２０００−８９８８７号公報には、タッチパネルに対応した文字入力システムが記載されている。当該文字入力システムでは、タッチパネルに文字その他の機能ボタンを表示し、文字が表示されている領域に接触（タッチ）することにより入力フィールドに当該文字が入力される。また、実行ボタンが表示されている領域に触れることにより入力フィールドに入力されている文字列を引数として実行プログラムに渡すよう構成している。このような入力システムにより、コンピュータに不慣れなユーザであっても、タッチパネルに触れるだけでコンピュータ等の情報処理システム（あるいは端末）を操作することが可能になる。
【０００４】
当該文字入力システムでは、タッチパネルに接触するという一つの動作で、その接触位置を検知し、当該接触位置を含む領域に割り当てられた機能（入力フィールドへの文字入力やプログラムの実行等）を特定し、さらにその機能を実現する手順を実行する。つまりタッチパネルへの接触によりマウス入力イベントが発行され、このマウス入力イベントにより、接触位置にマウス位置を移動するマウス移動イベントが発行される。同時にマウス位置においてマウス左クリックイベントが発行される。マウス左クリックイベントによって当該マウス位置で特定されるアプリケーションプログラム等が起動される。
【０００５】
なお、前記文字入力システムやその他のタッチパネル入力を持つ自動機器では、現在のマウス位置を表示する必要性が乏しいので、マウスカーソルの表示は非表示に設定される。
【０００６】
【発明が解決しようとする課題】
上記したようなタッチパネル入力は、コンピュータに不慣れな一般ユーザにとって使い易い優れたユーザインタフェイスを提供する。しかし、アプリケーションプログラムを開発する場合やメンテナンス時には、必ずしも使い易いユーザインタフェイスであるとはいえない。
【０００７】
つまり、プログラムの開発時あるいはメンテナンス時には、たとえばマイクロソフト社製のＯＳ「Ｗｉｎｄｏｗｓ」（Ｗｉｎｄｏｗｓはマイクロソフト社の商標。以下単に「Ｗｉｎｄｏｗｓ」と称する。）に付属するエクスプローラ等のファイル管理用のアプリケーションプログラムを用いてファイル操作等の処理を行う。これらアプリケーションプログラムでは、比較的狭い領域にファイル名称やメニューバー等のオブジェクトが表示され、これらオブジェクト上にマウス位置を位置決めする必要がある。ところが、タッチパネルを指で触れることによっては、このような詳細な位置決めは困難である。勿論、システムにマウス入力等ポインティングデバイスによる入力インタフェイスを備える場合には、これらポインティングデバイスによって詳細な位置特定を伴う入力を行うことは可能である。しかし、システムのコストダウンのため、多くのシステムではマウス等の入力インタフェイスが備えられていない場合が多い。このため、プログラムの開発効率やメンテナンス時の作業効率が低くなる問題がある。
【０００８】
また、前記したように多くの自動機器ではマウスカーソルが非表示に設定されている。このため、本番環境でのプログラム開発やメンテナンスの際にマウスの現在位置が把握できず開発効率、作業効率を低下させている問題がある。
【０００９】
また、前記したとおり従来のタッチパネル入力においては、マウス移動イベントとマウス左クリックイベントがほぼ同時に発行される。プログラム開発やメンテナンス時にはマウス移動とともにマウス右クリックやドラッグアンドドロップ等マウス右クリック以外のクリックイベントを発行したい場合がある。従来のタッチパネル入力ではこのような要求を満足できない問題がある。
【００１０】
なお、上記した問題点のうち、マウスカーソルの非表示や、マウス右クリック以外のクリックイベントが発行されない問題は、アプリケーションソフトウェアやタッチパネルのデバイスドライバの改良によって対処することも可能である。しかし、本番処理を行うアプリケーションソフトウェアはでき得る限り小型であることが好ましく、プログラム開発あるいはメンテナンス時に利用するユーティリティソフトウェアは付属されないことが望ましい。また、デバイスドライバの変更は、メーカやタッチパネルの種類に応じて逐一対処しなければならず、デバイスドライバの変更を伴わない対処が望ましい。
【００１１】
本発明の目的は、タッチパネルに対応した入力システムにおいて、本番処理に用いられるアプリケーションソフトウェアに付加機能を加えることなく現在のマウス位置を表示する手段を提供することにある。
【００１２】
また、本発明の目的は、マウス等詳細な位置特定が可能なポインティングデバイスを備えないタッチパネル入力システムにおいて、詳細なマウス位置の位置決めが可能な入力手段を提供することにある。
【００１３】
また、本発明の目的は、マウス左クリックイベントだけでなく、その他のクリックイベントも発行できるタッチパネルに対応した入力手段を提供することにある。
【００１４】
さらに、本発明の目的は、タッチパネルのデバイスドライバに依存せず、複数のメーカあるいは種類のタッチパネルに汎用的に適用できる手法によって前記各目的を達成する入力手段を提供することにある。
【００１５】
【課題を解決するための手段】
本願の発明の概略を説明すれば、以下の通りである。すなわち、本願発明の入力方法は、タッチパネルの接触またはキーボードの押下を入力イベントとして検知する情報処理システムの入力方法であって、入力モードの切り替えに応じてマウスカーソルを生成するステップと、入力イベントを受取り、フックするステップと、入力イベントがマウスイベントである場合に、マウス移動イベントに続くマウスイベントを無効化するステップと、入力イベントにおけるタッチパネルの接触位置（マウス位置）にマウスカーソルを表示するステップと、を含む。すなわち、本願発明では、入力イベントがあった場合に、直ちには実行せず、これをフックする。そして、フックされたイベントがマウス入力イベントである場合にはその後の処理を無効化し、タッチパネルへの接触位置にマウスカーソルを表示する。一般にＡＴＭ等の自動機器では、マウスカーソルは表示されないように設定されている。よって現在のマウス位置は不明であるが、本発明ではマウスカーソルを生成して現在のマウス位置に表示する。このため、マウス位置を正確に把握できる。また、マウスイベントが生じても、この段階ではマウス位置を移動し表示するだけであり、従来のようにマウス移動およびクリックイベントを同時に発生させない。このため、マウス移動と、その後に続く処理を分離できる。
【００１６】
マウス移動に続く処理として、以下のような処理が例示できる。たとえば、本発明の入力方法では、タッチパネルにツールウィンドウを表示させ、このツールウィンドウ内の所定の機能ボタンに触れると、そのボタン領域に定義された所定の手順を実行できる。すなわち、本発明の入力方法は、マウスイベントを制御するためのツールウィンドウを生成し、タッチパネルにツールウィンドウを表示するステップをさらに有し、フックした入力イベントがマウスイベントである場合に、マウス位置がツールウィンドウの領域内にあるかを判断する第１判断ステップと、第１判断ステップの判断が偽の場合に、マウスイベントの無効化ステップおよびマウスカーソルの表示ステップを実行するステップと、第１判断ステップの判断が真の場合に、マウス位置が、ツールウィンドウ内のマウス移動ボタンの領域内にあるかを判断する第２判断ステップと、第２判断ステップの判断が真の場合に、マウス移動ボタンの割り当てる方向にマウスカーソルを移動して表示するステップと、をさらに含むことができる。すなわち、ツールウィンドウ内のマウス移動ボタンに触れるとその方向にマウス位置を移動し、マウスカーソルを移動する。あるいは、本発明の入力方法は、第２判断ステップの判断が偽の場合に、マウス位置が、ツールウィンドウ内のマウスカーソルの移動速度を変更する速度変更ボタンの領域内にあるかを判断する第３判断ステップと、第３判断ステップの判断が真の場合に、マウスカーソルの移動速度の設定を変更するステップと、をさらに含むことができる。すなわち、マウス移動速度を変更するボタンに触れると、マウス移動速度の設定を変更する。このように、本発明の入力方法によれば、ツールボタンを用いてマウス移動を微細に調整できる。なお、マウス移動速度は３段階程度に設定し、マウス移動ボタンを選択するとマウス移動間隔がサイクリックに変更されるように構成できる。また、これら各判断ステップの順序は、本発明の趣旨に合致する限り適宜入れ替えることが可能である。すなたち、マウス位置の表示・移動のイベントとその後のマウスイベントをと分離することができれば、当該後続するマウスイベントの判断・処理の順序は任意のものとすることができる。
【００１７】
また、本発明のツールボタンには、マウスクリックイベントを発行させる機能を含めることができる。すなわち、本発明の入力方法は、第２判断ステップの判断が偽の場合に、マウス位置が、ツールウィンドウ内のマウスイベント発行ボタンの領域内にあるかを判断する第４判断ステップと、第４判断ステップの判断が真の場合に、マウスイベント発行ボタンに割り当てられているマウスイベントを発行するステップと、をさらに含むことができる。このような入力方法によれば、ボタン領域に定義されたマウスイベントを発行できる。マウスイベントには、左ボタンクリック、左ボタンダブルクリック、左ボタンドラッグアンドドロップ、右ボタンクリック、右ボタンドラッグアンドドロップを例示できる。
【００１８】
また、ツールウィンドウが邪魔な場合は、これをマウスイベントによって移動するように構成できる。すなわち、本発明の入力方法は、第２判断ステップの判断が偽の場合であって、かつ、マウス位置がツールウィンドウ内の各ボタンの領域内にない場合に、次回のマウスイベントにおけるマウス位置にツールウィンドウを移動して表示するステップ、をさらに含むことができる。つまり、ツールウィンドウ内の機能ボタン以外の領域に触れた場合には、ツールウィンドウを移動する意志であると把握する。
【００１９】
また、前記したツールウィンドウの機能は、キーボード入力によっても実現できる。すなわち、本発明の入力方法は、フックした入力イベントがキーボードイベントである場合に、さらに、キーボードイベントにおいて押下されたキーが、マウス移動キーであるかを判断する第５判断ステップと、第５判断ステップの判断が真の場合に、マウス移動キーに割り当てられた方向にマウスカーソルを移動して表示するステップと、をさらに含むことができる。あるいは、フックした入力イベントがキーボードイベントである場合に、さらに、キーボードイベントにおいて押下されたキーが、マウスカーソルの移動速度を変更する速度変更キーであるかを判断する第６判断ステップと、第６判断ステップの判断が真の場合に、マウスカーソルの移動速度の設定を変更するステップと、をさらに含むことができる。あるいは、本発明の入力方法は、フックした入力イベントがキーボードイベントである場合に、さらに、キーボードイベントにおいて押下されたキーが、マウスイベント発行キーであるかを判断する第７判断ステップと、第７判断ステップの判断が真の場合に、マウスイベント発行キーに割り当てられているマウスイベントを発行するステップと、をさらに含むことができる。キーボードによっても前記ツールウィンドウの機能と同様の機能を実現できる。
【００２０】
なお、本発明は、前記した方法の発明の他に、システムあるいはプログラムの発明としても把握することが可能である。
【００２１】
【発明の実施の形態】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。ただし、本発明は多くの異なる態様で実施することが可能であり、本実施の形態の記載内容に限定して解釈すべきではない。なお、実施の形態の全体を通して同じ要素には同じ番号を付するものとする。
【００２２】
以下の実施の形態では、主に方法またはシステムについて説明するが、当業者であれば明らかなとおり、本発明はコンピュータで使用可能なプログラムとしても実施できる。したがって、本発明は、ハードウェアとしての実施形態、ソフトウェアとしての実施形態またはソフトウェアとハードウェアとの組合せの実施形態をとることができる。プログラムは、ハードディスク、ＣＤ−ＲＯＭ、光記憶装置または磁気記憶装置等の任意のコンピュータ可読媒体に記録できる。
【００２３】
図１は、本発明の一実施の形態であるタッチパネルに対応した入力システムの一例をその機能について示したブロック図である。本実施の形態の入力システムは、入力部１、イベントフック部２、マウスイベント処理部３、キーボードイベント処理部４、マウスイベント消去部５、ツールウィンドウ処理部６、マウスイベント組立・送信部７、キーボードイベント転送部８、マウスカーソル処理部９、ツールウィンドウ１０、マウスカーソル１１、起動部１２を含む。
【００２４】
本実施の形態の入力システムを実施できる情報処理装置として、銀行等で利用されるＡＴＭが例示できる。よく知られているようにＡＴＭには、現金を受払いするための機能、ホストコンピュータとの通信機能、カードあるいは預金通帳に磁気記録された情報を読み取る機能、預金通帳あるいは取引明細票に印刷する機能を有し、さらに、タッチパネルあるいはテンキーボードによる入力機能を有する。ＡＴＭのハードウェアには、前記したとおり一般的なコンピュータシステムにはない機能を担う機器が備えられる。しかし、情報処理を司る機能に関しては一般的なコンピュータシステムと基本的には相違するところはない。すなわち、中央演算処理装置（ＣＰＵ）、主記憶装置（メインメモリ：ＲＡＭ）、不揮発性記憶装置（ＲＯＭ）、キャッシュメモリ、入出力制御装置（Ｉ／Ｏ）等、一般的にコンピュータシステムに備えられるハードウェア資源を備える。ただし、コスト削減のため、マウス等ポインティングデバイスおよびその入力インタフェイスは備えていない。なお、本発明はＡＴＭにおける入力方法に限られず、その他のタッチパネルを有する情報処理システムの入力方法に適用できることは勿論である。
【００２５】
なお、図１に示す各処理部の機能は、主にソフトウェア（プログラムコンポーネント）によって実現される。各機能は単一のプログラムコンポーネントで実現されても良く、複数のプログラムコンポーネントの組合せによって実現されても良い。また、これら各機能の複数の機能が単一のプログラムコンポーネントで実現されても良い。
【００２６】
入力部１は、タッチパネルあるいはキーボード等の入力デバイスおよびそのドライバであり、入力イベントを生成する。本実施の形態の入力システムを適用しない従来の入力システムにおいては、入力イベントはそのままアプリケーションソフトウェアに渡される。すなわち、タッチパネル入力の場合、入力イベントはマウスイベントとして生成され、マウス移動イベントに続いてマウス左クリックイベントが渡される。キーボード入力の場合には、押下されたキーボードに割り当てられた機能、たとえば文字入力やプログラム実行等がキーボードイベントとして渡される。しかし、本実施の形態では、実行モジュールが起動部１２によって起動された後には、以下に説明するように入力イベントを横取りする。
【００２７】
イベントフック部２は、入力部１で生成した入力イベントをフックする。すなわち、マウス入力あるいはキーボード入力のイベントが発生した時に、イベントフック部２がイベント発生の通知を受ける。イベントフック部２では、入力イベントがマウスイベントであるかキーボードイベントであるかを判断し、入力イベントの種類に応じてマウスイベント処理部３あるいはキーボードイベント処理部４に処理を渡す。
【００２８】
マウスイベント処理部３は、入力イベントがマウスイベントである場合に処理を実行する。マウスイベント処理部３では、タッチパネルに触れられた位置（マウス位置）に応じて処理を分ける。すなわち、マウス位置がツールウィンドウの表示領域外である場合には、マウスイベント消去部５に処理を渡し、マウス位置がツールウィンドウの表示領域内である場合には、ツールウィンドウ処理部６に処理を渡す。
【００２９】
キーボードイベント処理部４は、入力イベントがキーボードイベントである場合に処理を実行する。キーボードイベント処理部４では、押下されたキーによって処理を分ける。マウスクリックイベントを発行する機能が定義されているキーが押下された時にはマウスイベント組立・送信部７に処理を渡す。マウス移動の方向あるいは速度が定義されているキーが押下された時にはマウスカーソル処理部９に処理を渡す。何も定義されていないキーが押下された時にはキーボードイベント転送部８に処理を渡す。
【００３０】
図２は、テンキーボードにマウス移動等の機能を割り当てた場合のキー配列を例示する図である。図示するように、マウス移動の方向を示すマウス移動キー７０ａ〜７０ｈを数字の１〜９（５をのぞく）のキーに定義できる。また、マウス移動の速度を変更する速度変更キー７１を数字の５のキーに定義できる。さらに、マウスイベントとして、クリック、ダブルクリック、ドラッグアンドドロップ等のクリック操作を定義する左クリックキー７２、左ダブルクリックキー７３、左ドラッグアンドドロップキー７４、右クリックキー７５、右ドラッグアンドドロップキー７６を定義できる。
【００３１】
マウスイベント消去部５は、マウス移動イベントに続くマウスクリックイベントを消去する。従来技術では、タッチパネルへの接触（マウスイベント）により、マウス位置をタッチパネルの接触位置に移動し（マウス移動イベント）、その後マウス位置での左クリックイベントが発行される。しかし、本実施の形態の場合、左クリックイベントはマウスイベント消去部５によって消去され、マウス移動後のクリックイベントが発行されず、処理が中断される。
【００３２】
ツールウィンドウ処理部６は、ツールウィンドウ１０をタッチパネルに表示する。ツールウィンドウ１０は、マウス移動処理、マウス移動速度変更処理、マウスイベント発行処理等の機能を割り当てたボタンを表示するウィンドウである。ツールウィンドウ１０はその属性として、ウィンドウが最前面に表示される属性であるＴＯＰＭＯＳＴ属性を持つように生成し、タッチパネルの最前面に表示するようにする。ツールウィンドウ１０はツールウィンドウ処理部６で生成されても良く、また、ツールウィンドウ生成のためのプログラムコンポーネントを備えてもよい。
【００３３】
図３は、ツールウィンドウ１０の一例を示した画面図である。ツールウィンドウ１０には、マウス移動の方向を示すマウス移動ボタン６０ａ〜６０ｈを有する。また、マウス移動の速度を変更する速度変更ボタン６１を有する。さらに、マウスイベントとして、クリック、ダブルクリック、ドラッグアンドドロップ等のクリック操作を定義する左クリックボタン６２、左ダブルクリックボタン６３、左ドラッグアンドドロップボタン６４、右クリックボタン６５、右ドラッグアンドドロップボタン６６を有する。これら各ボタンには、各々前記したような処理を実現する機能が割り当てられる。
【００３４】
また、ツールウィンドウ処理部６は、ツールウィンドウ１０の表示領域内にマウスイベントが発生した時に処理を行う。ツールウィンドウ処理部６では、マウスイベントのマウス位置に応じて処理を分ける。マウス位置がマウス移動方向を割り当てるマウス移動ボタン６０ａ〜６０ｈまたはマウス移動速度を割り当てる速度変更ボタン６１の領域内にある場合には、ツールウィンドウ処理部６はマウスカーソル処理部９に処理を渡す。あるいは、マウス位置がクリックイベントを発行する機能を割り当てるボタン（６２〜６６）の領域内にある場合には、ツールウィンドウ処理部６はマウスイベント組立・送信部７に処理を渡す。また、マウス位置がこれらボタンの何れの領域でもないツールウィンドウ内にある場合は、ツールウィンドウ処理部６は、当該入力イベント（マウスイベント）がツールウィンドウ１０を移動する意思であるとみなし、次回のマウスイベントにおけるマウス位置にツールウィンドウ１０を移動する処理を実行する。
【００３５】
マウスイベント組立・送信部７は、マウスイベント処理部３またはキーボードイベント処理部４からの処理を受けて、クリック動作、ダブルクリック動作、あるいはドラッグアンドドロップ動作を実現するイベントを組み立て、Ｗｉｎｄｏｗｓ等のオペレーティングシステムに発行する。たとえば、左クリック動作を実現するために、現在マウス位置（キーボードイベント処理部４からの処理の場合）あるいは一つ前のマウス位置（マウスイベント処理部３からの処理の場合）で左クリックボタンを押すイベントおよび左クリックボタンを離すイベントを発行する。ここで発行するイベントは、たとえばＷｉｎｄｏｗｓの場合、Ｗｉｎ３２ ＡＰＩ（Ｗｉｎ３２ ＡＰＩは、Ｗｉｎｄｏｗｓが提供するＡＰＩ（Application Programming Interface）であり、特に３２ビット環境で提供されるＡＰＩをいう。以下単に「Ｗｉｎ３２ ＡＰＩ」と言う。）により発行できる。なお、その他の動作の実現は方法の説明において詳述する。
【００３６】
キーボードイベント転送部８は、キーボードイベント処理部４からの処理を受けて、何ら定義されていないキーが押下された時のキーボードイベントをそのままオペレーティングシステムに送信する。
【００３７】
マウスカーソル処理部９は、マウスカーソル１１を現在のマウス位置に表示する。マウスカーソル１１は、現在のマウス位置を示すウィンドウであり、たとえば矢印の型に切り抜いたウィンドウである。マウスカーソル１１は、ＴＯＰＭＯＳＴ属性を持つように生成する。マウスカーソル１１はマウスカーソル処理部９で生成されても良く、また、マウスカーソルを生成するためのプログラムコンポーネントを備えても良い。図６に示す矢印５２は、マウスカーソル１１の一例を示したものである。マウスカーソル１１の形状は矢印である必要は無く、十字、丸印（点）その他の形状であってもよい。また、マウスカーソル１１は現在のマウス位置に表示されるが、マウス位置は矢印５２の先端部分にすることができる。マウスカーソル１１は、それがマウス位置に判りやすく表示できる限り、その形状、表示位置等に関するあらゆる変更が可能である。
【００３８】
また、マウスカーソル処理部９は、マウスイベント処理部３またはキーボードイベント処理部４からの処理を受けて、マウス位置を更新する処理を行う。たとえば、マウスイベントにおいてそのマウス位置がマウス移動ボタン６０ａ〜６０ｈの領域にある場合、マウスイベント処理部３からの処理を受けて、当該ボタンの定義する移動方向に、一つ前のマウス位置を現在指定されているマウス移動間隔で移動し、現在マウス位置とする。すなわちこの場合、一つ前のマウス位置から、選択された移動方向に所定の間隔だけ移動させた位置に現在マウス位置を更新する。その他のマウス移動処理は、後に方法の説明において詳述する。
【００３９】
また、マウスカーソル処理部９は、マウスイベント処理部３またはキーボードイベント処理部４からの処理を受けて、マウス位置の移動速度を変更する。マウスイベント処理部３からのマウス移動速度の変更処理を受けた場合は、マウス位置を一つ前のマウス位置に更新し、現在指定されているマウス移動間隔を次のマウス移動間隔に更新する。マウス移動間隔はたとえば３段階とし、マウス移動間隔の更新を受ける毎にサイクリックに変更する。なお、マウス移動間隔は３段階である必要は無く、２段階以上の任意の段階を採用できる。キーボードイベント処理部４からマウス移動速度の変更処理を受けた場合、マウス移動間隔をサイクリックに変更する処理は同様である。しかし、キーボードイベントによる場合、現在マウス位置を更新する必要はない。
【００４０】
起動部１２は、前記した各機能を実現する実行モジュールを起動する。また、実行モジュールが起動されることによってキーボードに図２に示したような機能が割り当てられる。すなわち、この実行モジュールを起動することにより、本発明を実現できる入力モードに切り替わる。実行モジュールの起動方法には、たとえば特定キーの長押し、特定キーの組合せを同時に押下する方法や、特定キーを押しながらシステムを再起動あるいは起動する方法等が例示できる。あるいは、起動部１２はオペレーティングシステムの起動時に自動的に起動されても良く、デスクトップ、タスクバーまたはスタートメニュー等に登録し、キーボード等によって必要な時に起動されても良い。さらに、アプリケーションプログラムによって起動部１２が起動されても良い。なお、起動部１２によって実行モジュールが起動されていない時には、従来技術で説明した通りにタッチパネル入力が実現され、また、キーボードには本来の機能（たとえば数字入力等）が割り当てられている。
【００４１】
図４は、本実施の形態の入力方法の一例を示したフローチャートである。本実施の形態の入力方法は、まず、前記した起動部１２によって実行モジュールを起動することにより開始する（ステップ２０）。
【００４２】
実行モジュールが起動すると、マウスイベントおよびキーボードイベントのフック登録が行われる（ステップ２１）。これにより、入力部１に入力される全てのマウスイベントおよびキーボードイベントがイベントフック部２に通知されるようになる。
【００４３】
次に、マウスカーソル１１が作成される（ステップ２２）。さらにツールウィンドウ１０を使用するかを判断し（ステップ２３）、ツールウィンドウ１０を使用する場合にはツールウィンドウ１０の作成を行う（ステップ２４）。ツールウィンドウ１０を使用しない場合はステップ２４のツールウィンドウ作成をスキップしてステップ２５に進む。
【００４４】
ステップ２５では、イベントフック部２にフックされた入力イベントの処理を行う（ステップ２５）。イベント処理の詳細は後に説明する。イベント処理が終了すると本実施の形態の入力方法（実行モジュールの実行）を終了するかを判断し（ステップ２６）、終了する場合は実行モジュールの処理を終了して従来技術のとおりの入力状態に戻る（ステップ２７）。処理を終了しない場合はステップ２５に戻ってイベント入力を待ち、イベントがフックされるとイベント処理（ステップ２５）の実行を繰り返す。
【００４５】
図５は、図４のイベント処理（ステップ２５）の手順の一例を示したフローチャートである。入力部１からの入力イベントがイベントフック部２にフックされるのを受けて処理が開始する（ステップ３０）。
【００４６】
まず、入力イベントがキーボードイベントであるかを判断する（ステップ３１）。キーボードイベントでない場合（ステップ３１の判断がＮＯの場合）、マウスイベント処理部３でマウスイベント処理を行う（ステップ３２）。
【００４７】
すなわち、入力イベント（マウスイベント）のマウス位置がツールウィンドウ１０の表示領域外であるかを判断する（ステップ３３）。表示領域外である場合（ステップ３３の判断がＹＥＳの場合）、マウスイベント消去部５で、クリックイベントを無効にする（ステップ３４）。これにより、当該入力イベントによって、マウス移動の後に続く左クリックイベント等のクリックイベントが発行されなくなる。
【００４８】
次に、マウスカーソル処理部９で、マウスカーソルの移動処理を行う（ステップ３５）。すなわち、当該入力イベント（マウスイベント）のマウス位置にマウスカーソル１１（矢印５２）を表示する。その後、イベント処理を終了する（ステップ４７）。図６は、タッチパネルの表示状態の一例を示した画面図である。タッチパネルのデスクトップ５０に、ウィンドウ画面５１が表示され、マウスカーソルである矢印５２が表示されている。また、図３のツールウィンドウ１０が表示されている。本ステップが終了した段階で矢印５２が表示され、以後実行プログラムが終了するまで矢印５２は表示され続ける。図３は、入力イベント（クリックイベント）として矢印５２の先端部分に触れた直後の表示状態を示している。
【００４９】
ステップ３３でマウス位置がツールウィンドウ１０の領域内であると判断された場合（ステップ３３の判断がＮＯのとき）、さらにマウス位置がツールボタン（マウス移動ボタン６０ａ〜６０ｈ、速度変更ボタン６１、左クリックボタン６２、左ダブルクリックボタン６３、左ドラッグアンドドロップボタン６４、右クリックボタン６５、右ドラッグアンドドロップボタン６６）の領域外であるかを判断する（ステップ３６）。ツールボタンの領域外である場合（ステップ３３の判断がＹＥＳのとき）、ツールウィンドウ処理部６でツールウィンドウ１０を移動する処理を行う（ステップ３７）。すなわち、当該入力イベント（クリックイベント）はツールウィンドウ１０を移動する意志であるとみなし、ツールウィンドウ移動状態に入ってイベント処理を終了し（ステップ４７）、次回のイベント入力を待ってそのマウス位置にツールウィンドウ１０を表示する処理を行う。このような処理を行うことにより、ツールウィンドウ１０が邪魔になる場合はそれを移動することが可能になる。
【００５０】
ステップ３６の判断がＮＯの場合（マウス位置が何れかのツールボタンの領域内である場合）、さらに、マウス位置がマウス移動ボタン６０ａ〜６０ｈあるいは速度変更ボタン６１の領域内にあるかを判断する（ステップ３８）。この判断がＹＥＳの場合（マウス位置がマウス移動ボタン６０ａ〜６０ｈ、速度変更ボタン６１の何れかのボタン領域内にあるとき）、マウスカーソル処理部９でマウスカーソル１１の移動に関する処理を行う（ステップ３９）。その後、イベント処理を終了する（ステップ４７）。
【００５１】
すなわち、マウス位置がマウス移動ボタン６０ａ〜６０ｈの何れかの領域内にあるとき（つまり図６において白抜き矢印で示しているタッチパネル上のマウス移動ボタンに触れることにより）、一つ前のマウス位置（すなわち、現在マウスカーソルが表示されている位置）から当該マウス移動ボタンの定義する方向に所定の距離だけ離れた位置を現在マウス位置として更新する。そして現在マウス位置にマウスカーソル１１を表示する。その結果、マウス移動ボタンに示す方向にマウスカーソル１１が所定の間隔だけ移動する。所定の間隔は、現在定義されているマウス移動速度に対応する間隔である。マウス移動速度は、速度変更ボタン６１に触れることにより変更できる。なお、現在定義されている移動速度を、たとえば「High」、「Medium」、「Low」等の文字として速度変更ボタン６１に表示しても良い。あるいは速度変更ボタン６１の色を移動速度に応じて変更してもよい。速度変更ボタン６１に触れられた場合（すなわちマウス位置が速度変更ボタン６１の領域内にあるとき）、マウス移動速度を変更したのち、現在マウス位置を一つ前のマウス位置（すなわち、現在マウスカーソルが表示されている位置）に更新する。
【００５２】
ステップ３８の判断がＮＯの場合（マウス位置が左クリックボタン６２、左ダブルクリックボタン６３、左ドラッグアンドドロップボタン６４、右クリックボタン６５、右ドラッグアンドドロップボタン６６の何れかの領域にある場合）、マウスイベント組立・送信部７で、マウスイベントの発行処理を行う（ステップ４０）。その後イベント処理を終了する（ステップ４７）。
【００５３】
すなわち、マウス位置が左クリックボタン６２の領域内にあるとき、一つ前のマウス位置（すなわち、現在マウスカーソルが表示されている位置）で左クリックボタンを押すイベントおよび左クリックボタンを離すイベントを組み立て、発行する。イベントの発行は、たとえばＷｉｎｄｏｗｓの場合Ｗｉｎ３２ ＡＰＩにより発行する。
【００５４】
マウス位置が左ダブルクリックボタン６３の領域内にあるとき、一つ前のマウス位置で左クリックボタンを押すイベントおよび左クリックボタンを離すイベントを、たとえばＷｉｎｄｏｗｓのＷｉｎ３２ ＡＰＩにより２回発行する。
【００５５】
マウス位置が左ドラッグアンドドロップボタン６４の領域内にあるとき、一つ前のマウス位置で左クリックボタンを押すイベントを、たとえばＷｉｎｄｏｗｓのＷｉｎ３２ ＡＰＩにより発行し、その後、次のマウスイベントにおいて、そのマウスイベントにおけるマウス位置で左クリックボタンを離すイベントをたとえばＷｉｎｄｏｗｓのＷｉｎ３２ ＡＰＩにより発行する。このようにして左クリックボタンのドラッグアンドドロップが実現できる。
【００５６】
マウス位置が右クリックボタン６５の領域内にあるとき、一つ前のマウス位置で右クリックボタンを押すイベントおよび右クリックボタンを離すイベントを、たとえばＷｉｎｄｏｗｓのＷｉｎ３２ ＡＰＩにより発行する。
【００５７】
マウス位置が右ドラッグアンドドロップボタン６６の領域内にあるとき、一つ前のマウス位置で右クリックボタンを押すイベントを、たとえばＷｉｎｄｏｗｓのＷｉｎ３２ ＡＰＩにより発行し、その後、次のマウスイベントにおいて、そのマウスイベントにおけるマウス位置で右クリックボタンを離すイベントをたとえばＷｉｎｄｏｗｓのＷｉｎ３２ ＡＰＩにより発行する。このようにして右クリックボタンのドラッグアンドドロップが実現できる。
【００５８】
なお、ドラッグアンドドロップ動作の実現においては、前記した手順のほかに、以下のような手順を採用できる。すなわち、一つ前のマウス位置で左または右クリックボタンを押すイベントをたとえばＷｉｎｄｏｗｓのＷｉｎ３２ ＡＰＩにより発行したのち、ドラッグモードに入る。その後任意の操作を繰り返し、再度マウス位置が左または右ドラッグアンドドロップボタン６４，６６の領域内にあると判断された時、一つ前のマウス位置で左または右クリックボタンを離すイベントをたとえばＷｉｎｄｏｗｓのＷｉｎ３２ ＡＰＩにより発行する。このような手順を採用すれば、オブジェクトをドラッグした後、ツールウィンドウ１０内のマウス移動ボタン６０ａ〜６０ｈを利用して任意の位置にオブジェクトを移動し、再度ドラッグアンドドロップボタンに触れることによってオブジェクトをその位置にドロップできる。
【００５９】
以上マウスイベントの場合のイベント処理を説明した。次にキーボードイベントの場合のイベント処理を説明する。ステップ３１の判断がＹＥＳの場合（キーボードイベントである場合）、キーボードイベント処理部４でキーボードイベント処理を行う（ステップ４１）。
【００６０】
すなわち、押下されたキーが定義されたキーでないかを判断する（ステップ４２）。この判断がＹＥＳのとき（未定義キーが押下された時）、キーボードイベント転送部８によりイベント転送の処理を行う（ステップ４３）。その後イベント処理を終了する（ステップ４７）。すなわち、本入力方法において未定義のキーである場合、本来定義された処理を行うため、イベントをそのままオペレーティングシステムに送信する。
【００６１】
ステップ４２の判断がＮＯの場合（定義されたキーが押下された時）、さらにマウス移動キー７０ａ〜７０ｈあるいは速度変更キー７１が押下されたかを判断する（ステップ４４）。この判断がＹＥＳのとき、マウスカーソル処理部９でマウスカーソル１１の移動に関する処理を行う（ステップ４５）。その後、イベント処理を終了する（ステップ４７）。
【００６２】
すなわち、何れかのマウス移動キー７０ａ〜７０ｈが押下されたとき、現在のマウス位置から当該マウス移動キーの定義する方向に現在定義されている移動速度に対応する間隔だけ離れた位置を現在マウス位置として更新する。そして現在マウス位置にマウスカーソル１１を表示する。すなわち、マウス移動キーを押すことによりその方向にマウスカーソル１１が移動する。マウス移動速度およびその変更方法は前記したと同様である。マウス移動速度は、速度変更キー７１を押すことにより変更できる。
【００６３】
ステップ４４の判断がＮＯの場合（左クリックキー７２、左ダブルクリックキー７３、左ドラッグアンドドロップキー７４、右クリックキー７５、右ドラッグアンドドロップキー７６の何れかのキーが押下されたとき）、マウスイベント組立・送信部７で、マウスイベントの発行処理を行う（ステップ４６）。その後イベント処理を終了する（ステップ４７）。
【００６４】
すなわち、左クリックキー７２が押下されたとき、現在マウス位置で左クリックボタンを押すイベントおよび左クリックボタンを離すイベントを発行する。イベントの発行は、たとえばＷｉｎｄｏｗｓの場合Ｗｉｎ３２ ＡＰＩにより発行する。
【００６５】
左ダブルクリックキー７３が押下されたとき、現在マウス位置で左クリックボタンを押すイベントおよび左クリックボタンを離すイベントを、たとえばＷｉｎｄｏｗｓのＷｉｎ３２ ＡＰＩにより２回発行する。
【００６６】
左ドラッグアンドドロップキー７４が押下されたとき、現在マウス位置で左クリックボタンを押すイベントをたとえばＷｉｎｄｏｗｓのＷｉｎ３２ ＡＰＩにより発行し、その後、次のマウスイベントにおいて、そのマウスイベントにおけるマウス位置で左クリックボタンを離すイベントをたとえばＷｉｎｄｏｗｓのＷｉｎ３２ ＡＰＩにより発行する。このようにして左クリックボタンのドラッグアンドドロップが実現できる。
【００６７】
右クリックキー７５が押下されたとき、現在マウス位置で右クリックボタンを押すイベントおよび右クリックボタンを離すイベントを、たとえばＷｉｎｄｏｗｓのＷｉｎ３２ ＡＰＩにより発行する。
【００６８】
右ドラッグアンドドロップキー７６が押下されたとき、現在マウス位置で右クリックボタンを押すイベントをたとえばＷｉｎｄｏｗｓのＷｉｎ３２ ＡＰＩにより発行し、その後、次のマウスイベントにおいて、そのマウスイベントにおけるマウス位置で右クリックボタンを離すイベントをたとえばＷｉｎｄｏｗｓのＷｉｎ３２ ＡＰＩにより発行する。このようにして右クリックボタンのドラッグアンドドロップが実現できる。
【００６９】
なお、ドラッグアンドドロップ動作の実現においては、前記した手順のほかに、以下のような手順を採用できることは前記マウスイベントの場合と同様である。すなわち、左または右ドラッグアンドドロップキー７４，７６が押下されたとき、現在マウス位置で左または右クリックボタンを押すイベントをたとえばＷｉｎｄｏｗｓのＷｉｎ３２ ＡＰＩにより発行し、ドラッグモードに入る。その後任意の操作を繰り返し、再度左または右ドラッグアンドドロップキー７４，７６が押下されたとき、現在のマウス位置で左または右クリックボタンを離すイベントをたとえばＷｉｎｄｏｗｓのＷｉｎ３２ ＡＰＩにより発行する。
【００７０】
以上説明したような入力システムあるいは入力方法によれば、コスト削減等の理由によりマウス等ポインティングデバイスが備えられていないタッチパネル入力システムにおいても微細なマウス位置の位置決めが行える。このため本番環境でのプログラム開発効率あるいはメンテナンス効率を高くできる。
【００７１】
また、本実施の形態の入力システム、入力方法によれば、マウスカーソル１１により現在マウス位置が表示されるので、本番環境ではマウスカーソル表示を非表示に設定しているシステムにおいても本番環境でアプリケーション開発あるいはメンテナンスを行うことができる。
【００７２】
また、本実施の形態の入力システム、入力方法によれば、左クリックイベントだけでなく、ダブルクリック、ドラッグアンドドロップ等他のクリックイベントを発行できる。
【００７３】
また、本実施の形態の入力システム、入力方法では、入力部１からの入力イベントをフックし、必要に応じてクリックイベントを無効化しているので、タッチパネルのデバイスドライバに依存しない。よって、複数メーカや異なる種類のタッチパネルを用いた入力システムに適用が可能となる。
【００７４】
以上、本発明者によってなされた発明を発明の実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更することが可能である。
【００７５】
たとえば、本発明は、前記実施の形態で説明したツールウィンドウ１０と各種機能を定義したキーボードの両方を必須の構成要件とするものではない。ツールウィンドウ１０または図２に示すキーボードの何れか一方を備えていれば良い。
【００７６】
また、ツールウィンドウ１０あるいは図２のキーボードの各ボタンあるいはキーに割り当てた機能は、あくまでも例示である。例示した全ての機能を備える必要は無く、また、他の機能を付加しても良い。
【００７７】
【発明の効果】
本願で開示される発明のうち、代表的なものによって得られる効果は、以下の通りである。すなわち、タッチパネルに対応した入力システムにおいて本番処理に用いられるアプリケーションソフトウェアに付加機能を加えることなく現在のマウス位置を表示することができる。また、マウスのように詳細な位置特定が可能なポインティングデバイスを備えないタッチパネル入力システムにおいて、詳細なマウス位置の位置決めが可能になる。また、マウス左クリックイベントだけでなく、その他のクリックイベントも発行できるタッチパネルに対応した入力手段を提供できる。さらに、タッチパネルのデバイスドライバに依存せず、複数のメーカあるいは種類のタッチパネルに汎用的に適用できる入力手段を提供できる。
【図面の簡単な説明】
【図１】  本発明の一実施の形態であるタッチパネルに対応した入力システムの一例をその機能について示したブロック図である。
【図２】  テンキーボードにマウス移動等の機能を割り当てた場合のキー配列を例示する図である。
【図３】  ツールウィンドウ１０の一例を示した画面図である。
【図４】  本発明の一実施の形態である入力方法の一例を示したフローチャートである。
【図５】  図４のイベント処理（ステップ２５）の手順の一例を示したフローチャートである。
【図６】  タッチパネルの表示状態の一例を示した画面図である。
【符号の説明】
１...入力部、２...イベントフック部、３...マウスイベント処理部、４...キーボードイベント処理部、５...マウスイベント消去部、６...ツールウィンドウ処理部、７...マウスイベント組立・送信部、８...キーボードイベント転送部、９...マウスカーソル処理部、１０...ツールウィンドウ、１１...マウスカーソル、１２...起動部、５０...デスクトップ、５１...ウィンドウ画面、５２...矢印、６０ａ〜６０ｈ...マウス移動ボタン、６１...速度変更ボタン、６２...左クリックボタン、６３...左ダブルクリックボタン、６４...左ドラッグアンドドロップボタン、６５...右クリックボタン、６６...右ドラッグアンドドロップボタン、７０ａ〜７０ｈ...マウス移動キー、７１...速度変更キー、７２...左クリックキー、７３...左ダブルクリックキー、７４...左ドラッグアンドドロップキー、７５...右クリックキー、７６...右ドラッグアンドドロップキー。
【図１】
0003872322.tif 000002
【図２】
0003872322.tif 000003
【図３】
0003872322.tif 000004
【図４】
0003872322.tif 000005
【図５】
0003872322.tif 000006
【図６】
0003872322.tif 000007