(57)【要約】【課題】ＰＣやタッチパネル付きディスプレイ装置で動作するアプリケーションのすべてでタッチ操作によるスクロールが可能なスクロール制御方法を提供する。【解決手段】独立にスクロール可能なスクロールの対象領域を選択するスクロール領域選択ステップ、選択された対象領域上のドラッグを検出するドラッグ検出ステップ、ドラッグの方向およびドラッグされた長さを取得するドラッグ情報取得ステップ、ドラッグの方向および長さに基づいて対象領域に表示されている対象画像をスクロールするスクロール実行ステップ、を含むスクロール制御方法を実行するスクロールＡＰＬ１００を組み込む。【選択図】      図６
2005044036.tif 000002
【特許請求の範囲】
【請求項１】
ディスプレイ画面上に表示される画像を制御するスクロール制御方法であって、
前記ディスプレイ画面上において独立にスクロール可能なスクロールの対象領域を選択するスクロール領域選択ステップと、
前記スクロール領域選択ステップにおいて選択された対象領域上におけるドラッグを検出するドラッグ検出ステップと、
前記ドラッグ検出ステップで検出されたドラッグの方向およびドラッグされた長さを取得するドラッグ情報取得ステップと、
前記ドラッグ情報取得ステップで取得されたドラッグの方向および長さに基づいて前記対象領域に表示されている対象画像をスクロールするスクロール実行ステップと、
を含むことを特徴とするスクロール制御方法。
【請求項２】
前記ドラッグ検出ステップでは前記対象領域の任意の位置においてなされた停止・移動タッチにかかる情報を変換して得られるマウスデータに基づいてドラッグを検出し、ドラッグ情報取得ステップでは前記マウスデータに基づいてドラッグの方向およびドラッグされた長さを取得し、前記スクロール実行ステップでは取得されたドラッグの方向およびドラッグされた長さに基づいて、前記スクロール領域選択ステップで選択された対象領域のスクロールバーに割り当てられた制御を実行することによって対象画像をスクロールすることを特徴とする請求項１に記載のスクロール制御方法。
【請求項３】
前記ドラッグ情報取得ステップは検出されたドラッグが特定の長さである特定長以上であったときにドラッグを確定してドラッグの方向および長さを取得し、前記スクロール実行ステップは、前記ドラッグがなされた方向に前記対象画像をスクロールすることを特徴とする請求項１または２に記載のスクロール制御方法。
【請求項４】
前記スクロール実行ステップは、前記ディスプレイ画面の一辺に対して平行な水平方向とドラッグの方向とがなす角度の範囲を設定する傾き設定ステップを含み、ドラッグ方向の水平方向に対する傾きが設定された角度の範囲である場合にはドラッグが水平方向になされたと判断し、前記対象画面を水平方向にスクロールすることを特徴とする請求項３に記載のスクロール制御方法。
【請求項５】
前記スクロール実行ステップは、前記ディスプレイ画面の一辺と直交する垂直方向とドラッグの方向とがなす角度の範囲を設定する傾き設定ステップを含み、ドラッグ方向の垂直方向に対する傾きが設定された角度の範囲である場合にはドラッグが垂直方向になされたと判断し、前記対象画面を垂直方向にスクロールすることを特徴とする請求項３に記載のスクロール制御方法。
【請求項６】
前記スクロール実行ステップは、前記対象画面を垂直上方にスクロールしているときに前記ディスプレイ画面上で所定の時間以上の停止タッチがなされた場合、前記対象画面に表示される画像を所定の範囲ずつ下方に移動するページアップ制御を前記停止タッチの間周期的に実行することを特徴とする請求項１〜５のいずれか一つに記載のスクロール制御方法。
【請求項７】
前記スクロール実行ステップは、前記対象画面を垂直下方にスクロールしているときに前記ディスプレイ画面上で所定の時間以上の停止タッチがなされた場合、前記対象画面に表示される画像を所定の範囲ずつ下方に移動するページダウン制御を前記停止タッチの間周期的に実行することを特徴とする請求項１〜６のいずれか一つに記載のスクロール制御方法。
【請求項８】
前記ドラッグ情報取得ステップがドラッグの方向の変化を検出した場合、前記スクロール実行ステップは、検出された変化の方向にスクロール方向を変更することを特徴とする請求項１〜７のいずれか一つに記載のスクロール制御方法。
【請求項９】
さらに、前記スクロール領域選択ステップにおいてスクロール領域が選択されない場合、前記ディスプレイ画面に表示されているスクロールの対象領域を検索し、検索の結果得られた対象領域の表示状態を変更する表示変更ステップを含むことを特徴とする請求項１〜８のいずれか一つに記載のスクロール制御方法。
【請求項１０】
前記スクロール領域選択ステップは、前記対象領域のうち、ダブルクリックの操作がなされた位置を含む対象領域を選択することを特徴とする請求項１〜９のいずれか一つに記載のスクロール制御方法。
【請求項１１】
ディスプレイ画面に表示される画像を制御するスクロール制御方法を、コンピュータに実行させるプログラムであって、
前記ディスプレイ画面上において独立にスクロール可能なスクロールの対象領域を選択するスクロール領域選択ステップと、
前記スクロール領域選択ステップにおいて選択された対象領域上におけるドラッグを検出するドラッグ検出ステップと、
前記ドラッグ検出ステップで検出されたドラッグの方向およびドラッグされた長さを取得するドラッグ情報取得ステップと、
前記ドラッグ情報取得ステップで取得されたドラッグの方向および長さに基づいて前記対象領域に表示されている対象画像をスクロールするスクロール実行ステップと、
を含むことを特徴とするスクロール制御方法をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、スクロール表示方法、その方法をコンピュータに実行させるためのプログラムに関する。
【０００２】
【従来の技術】
現在、タッチパネル付きディスプレイ装置は、ディスプレイ画面を大型化し、複数の人間に対して同時に画像を表示する、例えばプレゼンテーションや教育の現場に使用される場合がある。タッチパネル付きディスプレイ装置では、オペレータが設定された領域に指やペンでタッチし、タッチされた点の座標に基づいてディスプレイ画面に表示される画像を制御する。このため、オペレータは、ディスプレイ画面のどの箇所が話題になっているかを容易に聴衆に示し、理解しやすいプレゼンテーション等を行なうことができる。
【０００３】
このようなタッチパネル付きディスプレイ装置やＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）など、ディスプレイ画面を有し、このディスプレイ画面に画像を表示する機能を持った装置の多くが、スクロール機能を持っている。スクロール機能とは、表示すべき画像の一部分だけをディスプレイ画面に表示しながら、表示される部分を順次変更する機能をいい、スクロール機能を使って表示画面を変更することをスクロールという。また、表示すべき画像が複数ページにわたるよう設定されていて、表示される部分をあるページから他のページに切り換える動作をページ捲りともいう。
【０００４】
ところで、スクロールは、一般的に、アプリケーションが画像を表示するウィンドウの側部や下部に設けられたスクロールバーのスクロールボックスを選択し、スクロールしたい方向に移動することによって実行される。プレゼンテーション等に使用する場合、タッチパネル付きディスプレイ装置には誤操作がし難く、円滑に操作できることが要求される。このような要求に応えるため、ディスプレイ画面上の任意の位置にタッチ、ドラッグすることによって画面をスクロール可能な構成が提案されている（例えば特許文献１、特許文献２参照）。
【０００５】
【特許文献１】
特開平６−１４９５３１号公報（段落［００１３］）
【特許文献２】
特開平１１−１０２２７４号公報（段落［００１１］）
【０００６】
このような従来技術によれば、オペレータはディスプレイ画面のスクロールバーにタッチするため移動する、あるいはタッチパネル付きディスプレイ装置に接続されるマウスを手にとってタッチパネル付きディスプレイ装置を操作する必要がない。このため、スクロールの操作がプレゼンテーションの進行を妨げず、円滑にプレゼンテーション等を行なうタッチパネル付きディスプレイ装置が提供できる。
【０００７】
【発明が解決しようとする課題】
しかしながら、上記した従来技術は、いずれもＰＣにおいて動作する複数のアプリケーションのうちの特定のアプリケーションをタッチ操作によってスクロールするよう構成したものである。したがって、タッチパネル付きディスプレイ装置を使ったプレゼンテーション中、任意の位置のドラッグ操作によってスクロール可能なアプリケーションが制限されるという欠点があった。
【０００８】
本発明は、上記した点に鑑みてなされたものであり、ＰＣやタッチパネル付きディスプレイ装置で動作するアプリケーションのすべてでタッチ操作によるスクロールを可能にし、より操作性が高く、プレゼンテーション等を円滑に進行させられるスクロール制御方法およびその方法をコンピュータに実行させるためのプログラムを提供することを目的とする。
【０００９】
【課題を解決するための手段】
上記目的を達成するため、請求項１にかかる発明は、ディスプレイ画面上に表示される画像を制御するスクロール制御方法であって、前記ディスプレイ画面上において独立にスクロール可能なスクロールの対象領域を選択するスクロール領域選択ステップと、前記スクロール領域選択ステップにおいて選択された対象領域上におけるドラッグを検出するドラッグ検出ステップと、前記ドラッグ検出ステップで検出されたドラッグの方向およびドラッグされた長さを取得するドラッグ情報取得ステップと、前記ドラッグ情報取得ステップで取得されたドラッグの方向および長さに基づいて前記対象領域に表示されている対象画像をスクロールするスクロール実行ステップと、を含むことを特徴とする。
【００１０】
この請求項１に記載の発明によれば、ディスプレイ画面上において独立にスクロール可能なスクロールの対象領域を選択し、選択された対象領域上におけるドラッグを検出する。さらに、検出されたドラッグの方向およびドラッグされた長さに基づいて対象領域に表示されている対象画像をスクロールする。このため、スクロールの操作にあたってスクロールバーのスクロールボックス上の座標にタッチ、あるいは座標上でクリックする必要がなく、簡易に画面をスクロールすることができる。また、ディスプレイ画面上の複数の対象領域からいずれかを選択してスクロールを制御できる。
【００１１】
請求項２に記載の発明にかかるスクロール制御方法は、前記ドラッグ検出ステップでは前記対象領域の任意の位置においてなされた停止・移動タッチにかかる情報を変換して得られるマウスデータに基づいてドラッグを検出し、ドラッグ情報取得ステップでは前記マウスデータに基づいてドラッグの方向およびドラッグされた長さを取得し、前記スクロール実行ステップでは取得されたドラッグの方向およびドラッグされた長さに基づいて、前記スクロール領域選択ステップで選択された対象領域のスクロールバーに割り当てられた制御を実行することによって対象画像をスクロールすることを特徴とする。
【００１２】
この請求項２に記載の発明によれば、任意の位置においてなされた移動・停止タッチをマウスデータに変換し、このマウスデータに基づいてドラッグの方向や長さを検出する。さらに、検出されたドラッグの方向や長さに基づいて対象領域のスクロールバーに割り当てられた制御を実行する。このため、任意の位置においてなされた移動・停止タッチによって画面をスクロールする制御を、マウスによってスクロール可能なウィンドウを提供するすべてのアプリケーションに適用することができる。
【００１３】
請求項３に記載の発明にかかるスクロール制御方法は、前記ドラッグ情報取得ステップが検出されたドラッグが特定の長さである特定長以上であったときにドラッグを確定してドラッグの方向および長さを取得し、前記スクロール実行ステップが、前記ドラッグがなされた方向に前記対象画像をスクロールすることを特徴とする。
【００１４】
この請求項３に記載の発明によれば、オペレータがドラッグを意図しないで行なった移動・停止タッチがドラッグとして認識されることを少なくすることができる。また、ドラッグ時の方向の変化をすべてドラッグの方向として検出することをなくし、適切なスクロール方向を設定することができる。
【００１５】
請求項４に記載の発明にかかるスクロール制御方法は、前記スクロール実行ステップが、前記ディスプレイ画面の一辺に対して平行な水平方向とドラッグの方向とがなす角度の範囲を設定する傾き設定ステップを含み、ドラッグ方向の水平方向に対する傾きが設定された角度の範囲である場合にはドラッグが水平方向になされたと判断し、前記対象画面を水平方向にスクロールすることを特徴とする。
【００１６】
この請求項４に記載の発明によれば、横方向のドラッグを意図したオペレータのドラッグの方向の傾きを許容し、意図に沿った方向に画面をスクロールすることができる。
【００１７】
請求項５に記載の発明にかかるスクロール制御方法は、前記スクロール実行ステップは、前記ディスプレイ画面の一辺と直交する垂直方向とドラッグの方向とがなす角度の範囲を設定する傾き設定ステップを含み、ドラッグ方向の垂直方向に対する傾きが設定された角度の範囲である場合にはドラッグが垂直方向になされたと判断し、前記対象画面を垂直方向にスクロールすることを特徴とする。
【００１８】
この請求項５に記載の発明によれば、縦方向のドラッグを意図したオペレータのドラッグの方向の傾きを許容し、意図に沿った方向に画面をスクロールすることができる。
【００１９】
請求項６に記載の発明にかかるスクロール制御方法は、前記スクロール実行ステップが、前記対象画面を垂直上方にスクロールしているときに前記ディスプレイ画面上で所定の時間以上の停止タッチがなされた場合、前記対象画面に表示される画像を所定の範囲ずつ下方に移動するページアップ制御を前記停止タッチの間周期的に実行することを特徴とする。
【００２０】
この請求項６に記載の発明によれば、スクロールの途中で停止タッチすることによって画面を比較的大幅に上方にスクロールすることができる。このため、比較的大幅な上方へのスクロールの操作を効率化することができる。
【００２１】
請求項７に記載の発明にかかるスクロール制御方法は、前記スクロール実行ステップが前記対象画面を垂直下方にスクロールしているときに前記ディスプレイ画面上で所定の時間以上の停止タッチがなされた場合、前記対象画面に表示される画像を所定の範囲ずつ下方に移動するページダウン制御を前記停止タッチの間周期的に実行することを特徴とする。
【００２２】
この請求項７に記載の発明によれば、スクロールの途中で停止タッチすることによって画面を比較的大幅に下方にスクロールすることができる。このため、比較的大幅な下方へのスクロールの操作を効率化することができる。
【００２３】
請求項８に記載の発明にかかるスクロール制御方法は、前記ドラッグ情報取得ステップがドラッグの方向の変化を検出した場合、前記スクロール実行ステップは、検出された変化の方向にスクロール方向を変更することを特徴とする。
【００２４】
この請求項８に記載の発明によれば、オペレータはスクロールしたい方向に領域上でドラッグして画面をスクロールすることができる。
【００２５】
請求項９に記載の発明にかかるスクロール制御方法は、さらに、前記スクロール領域選択ステップにおいてスクロール領域が選択されない場合、前記ディスプレイ画面に表示されているスクロールの対象領域を検索し、検索の結果得られた対象領域の表示状態を変更する表示変更ステップを含むことを特徴とする。
【００２６】
この請求項９に記載の発明によれば、オペレータに対象領域の選択を促すと共に、スクロールの対象となる領域を示すことができる。
【００２７】
請求項１０に記載の発明にかかるスクロール制御方法は、前記スクロール領域選択ステップが、前記対象領域のうち、ダブルクリックの操作がなされた位置を含む対象領域を選択することを特徴とする。
【００２８】
この請求項１０に記載の発明によれば、対象領域の選択にあたって所定のボタンを指定する操作を省き、選択の操作を簡易化することができる。
【００２９】
請求項１１に記載の発明にかかるプログラムは、ディスプレイ画面に表示される画像を制御するスクロール制御方法を、コンピュータに実行させるプログラムであって、前記ディスプレイ画面上において独立にスクロール可能なスクロールの対象領域を選択するスクロール領域選択ステップと、前記スクロール領域選択ステップにおいて選択された対象領域上におけるドラッグを検出するドラッグ検出ステップと、前記ドラッグ検出ステップで検出されたドラッグの方向およびドラッグされた長さを取得するドラッグ情報取得ステップと、前記ドラッグ情報取得ステップで取得されたドラッグの方向および長さに基づいて前記対象領域に表示されている対象画像をスクロールするスクロール実行ステップと、を含むことを特徴とする。
【００３０】
この請求項１１に記載の発明によれば、ディスプレイ画面上において独立にスクロール可能なスクロールの対象領域を選択し、選択された対象領域上におけるドラッグを検出する。さらに、検出されたドラッグの方向およびドラッグされた長さに基づいて対象領域に表示されている対象画像をスクロールする。このため、スクロールの操作にあたってスクロールバーのスクロールボックス上の座標にタッチ、あるいは座標上でクリックする必要がなく、簡易に画面をスクロールすることができる。また、ディスプレイ画面上の複数の対象領域からいずれかを選択してスクロールを制御できる。
【００３１】
【発明の実施の形態】
以下に添付図面を参照して、この発明にかかるスクロール制御方法およびその方法をコンピュータに実行させるためのプログラムの好適な実施の形態を詳細に説明する。
【００３２】
本発明の説明に先だって、本発明のスクロール制御方法が適用可能な構成について説明する。図１は、本発明の一実施の形態のスクロール制御方法が適用可能な光学式のタッチパネル付きディスプレイ装置を示す図である。図示したタッチパネル付きディスプレイ装置は、タッチパネル式の座標入力装置１と、座標入力装置１に入力された座標を検出する座標検出装置３と、座標検出装置３が検出した座標に基づいて画像データを制御するホスト装置４（本実施の形態ではＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）を利用している）、ホスト装置４によって制御された画像データ（Ｒ，Ｇ，Ｂ）を液晶画面やＰＤＰ（Ｐｌａｓｍａ  Ｄｉｓｐｌａｙ  Ｐａｎｅｌ）といったディスプレイ画面１１３に表示する表示装置２とを備えている。座標入力装置１と座標検出装置３とを合わせた構成は、タッチパネルとも呼ばれる構成である。
【００３３】
また、図１に示したタッチパネル付きディスプレイ装置には、ディスプレイ画面１１３が座標入力装置１の座標入力面１１２と重なって設けられている。座標入力面とは、座標検出装置３が座標を検出できる領域であって、図１のタッチパネル付きディスプレイ装置はディスプレイ画面１１３に直接タッチする構成であるから、座標入力面１１２は仮想的な面である。なお、このようなタッチパネル付きディスプレイ装置は、ディスプレイ画面１１３に対するタッチ操作によってもホスト装置４に対するマウス操作によっても同様に制御することができる。
【００３４】
座標入力装置１は、後述する光学検出器を備えていて、ディスプレイ画面１１３上のタッチを光学的に検出する。光学検出器が検出したデータは座標検出装置３に入力し、座標検出装置３が、タッチされた座標入力面１１２上の点（タッチ点）ｔの座標（ｘ，ｙ）を算出する。算出される座標は、ディスプレイ画面１１３の画素数（例えばｘ：１０２４，ｙ：７６８）によって表され、１０ｍｓ、あるいは２０ｍｓといった時間で周期的にホスト装置４に出力する。なお、座標検出装置３のタッチ点の座標の算出については、後に詳述する。
【００３５】
また、座標検出装置３は、後述する光学検出器が検出したデータを入力するための左光学検出器Ｉ／Ｆ１０１、右光学検出器Ｉ／Ｆ１０２、座標検出装置３全般を制御する中央演算装置１０４、中央演算装置１０４で使用されるプログラムが格納されているＲＯＭ１０５、中央演算装置１０４の作業データが一時保存されるＲＡＭ１０６、周期的に時間を計測して中央演算装置１０４に入力するタイマ（ＴＩＭＥＲ）１０７とを備えている。
【００３６】
ホスト装置４は、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）であって、Ｗｉｎｄｏｗｓ（Ｒ）、Ｍａｃｉｎｔｏｓｈ（Ｒ）、Ｌｉｎｕｘ（Ｒ）といった汎用的なＯＳを搭載しており、画像データの制御は、ＯＳの制御下で実行されている。そして、汎用的なＯＳの制御下で実行されるプログラム（ドライバソフト）であるドライバ１０８と、共通の汎用的なＯＳの制御下で動作するアプリケーションであるＡＰＬ１１１と、画像データが一時的に保存される画像ＲＡＭ１１５とを有している。
【００３７】
本発明のスクロール制御を図１のタッチパネル付きディスプレイ装置に適用する場合、ＡＰＬ１１１の１つとして本実施の形態のスクロールＡＰＬが入る。スクロールＡＰＬについては後に詳述する。
【００３８】
ここで、図１に示したタッチパネル付きディスプレイ装置におけるタッチ点の検出および座標の算出について説明する。図２は、本実施の形態の座標入力装置を示す図である。座標入力装置１は、図中の縦方向の長さがＨ、横の長さがＷの矩形の座標入力面１１２と、座標入力面の三辺に設けられた再帰性反射部材２０１と、再帰性反射部材２０１が設けられていない一辺の両端に設けられた左光学検出器２０２Ｌ、右光学検出器２０２Ｒとを備えている。
【００３９】
左光学検出器２０２Ｌ、右光学検出器２０２Ｒは、いずれも半導体レーザである光源（図示せず）と、例えばＣＣＤ（Ｃｈａｒｇｅｄ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）を利用した受光部（図示せず）とを一体化したユニットである。光源は、座標入力面１１２の全域に光源を要とする扇状に光を照射する。左光学検出器２０２Ｌ、右光学検出器２０２Ｒが扇状の光を照射することによって、レーザ光は座標入力面１１２の全域に照射される。
【００４０】
座標入力面１１２に照射された光は、再帰性反射部材２０１に反射される。再帰性反射部材２０１は、光を１８０度の角度で反射する部材であって、例えば図中に示す照射光ｐ１を反射して照射光ｐ１の光軸に平行な光軸を通る反射光ｐ２とする。座標入力面上１１２に光を遮るものが存在しない場合、左光学検出器２０２Ｌ、右光学検出器２０２Ｒ、は照射された光のすべての反射光を受光する。しかし、例えば指やペンが座標入力面１１２にタッチしたとき、タッチ点を通る光が左光学検出器２０２Ｌ、右光学検出器２０２Ｒに受光されない。
【００４１】
左光学検出器２０２Ｌ、右光学検出器２０２Ｒによって検出される光の情報は、アナログデータとして座標検出装置３に入力する。このとき、座標検出装置３は、扇状に照射された光のうち、受光部の光を受光しなかった位置で本来受光されるはずの光の光軸から左光学検出器２０２Ｌ、右光学検出器２０２Ｒの受光部を通る直線と各受光部とタッチ点ｔとを通る直線との角度（光遮蔽角度）θＬ、θＲとを求める。タッチ点ｔの座標（ｘ，ｙ）は、角度θＬ、θＲを使って以下のように算出される。
ｘ＝Ｗ×ｔａｎθＲ／（ｔａｎθＬ＋ｔａｎθＲ）
ｙ＝Ｈ−Ｗ×ｔａｎθＬ×ｔａｎθＲ／（ｔａｎθＬ＋ｔａｎθＲ）
【００４２】
次に、本発明のスクロール制御方法が適用可能な構成として、電磁誘導方式のタブレットパーソナルコンピュータ（以下、タブレットＰＣ）について説明する。図３、図４は、タブレットＰＣを説明するための図であって、図３はタブレットＰＣの構成を説明する図、図４はタブレットＰＣの機能および座標検知の原理について説明する図である。タブレットＰＣは、ディスプレイ３０１とキーボード３０５を備えた本体３０３と図示しないマウスを有する。さらにマウスに代えて電子ペン３０７を使ったタッチパネル操作が可能である。また、Ｍｉｃｒｏｓｏｆｔ社からタブレットＰＣ用ＯＳである「Ｗｉｎｄｏｗｓ（Ｒ）  ＰＣ  Ｔａｂｌｅｔ  ＰＣ  Ｅｄｉｔｉｏｎ」がリリースされ手書き文字認識エンジン、音声認識エンジンなどが提供されている。
【００４３】
図３（ｂ）は、ディスプレイ画面３０１を１８０度回転させ、折り畳んだ状態を示す。このような状態のディスプレイ画面３０１に電子ペン３０７でタッチすると、電子ペン３０７とタブレットＰＣに内蔵されたセンサによりディスプレイ３０１上の電子ペン３０７の位置（座標）が検知され、マウスのクリック、ドラッグ操作をエミュレートする。水平のディスプレイ画面３０１と電子ペン３０７によりマウス操作では困難な手書き文字が紙に文字を書く感覚で描画可能となる。
【００４４】
図３（ｃ）に示すように、電子ペン３０７が直接接触するディスプレイ画面３０１の表面には強化ガラス３０９が設置され、液晶ディスプレイユニット３１１が傷つくのを防止する。液晶ディスプレイユニット３１１の下に電子ペンの位置を検知する電磁誘導センサユニット３１３が設置されている。なお、図３ではディスプレイ画面３０１を回転して折り畳む形式のタブレットＰＣを示したが、ディスプレイの部分が取りはずせるタイプもある。
【００４５】
図４（ａ）に示すように、電子ペン３０７には共振回路４０１、コンデンサ４０３、センサコイル４０５が内蔵されている。また、（ｂ）に示すように、電磁誘導センサユニット３１３には複数のセンサコイル４０５が設けられている。センサコイル４０５は座標検知精度に比例した密度に設置される。図はＸ軸方向を検知するためのセンサコイル４０５の一部を示しており、図示はないが図示したセンサコイル４０５と直交する方向にＹ軸方向を検知するためのセンサコイルが設置される。
【００４６】
電子ペン３０７の先端がディスプレイ画面３０１にタッチすると、センサコイル４０５に流れる電流磁界によってセンサコイル４０５に誘導起電圧が生じ、コンデンサ４０３とで構成される共振回路が励振され共振電流が流れる。電子ペン３０７の座標検知は、電磁誘導座標検知ユニット４１３の中央演算装置４２１によってなされる。
【００４７】
電磁誘導座標検知ユニット４１３は、まず、送受切替スイッチＩ／Ｆ４１９によって送受切替スイッチ４１１を制御し、送受切替スイッチ４１１を接点Ａ、接点Ｃに接続する。この接続により、交流電源４０９からセンサコイル４０５に電流が流れる。また、Ｘ軸コイル切替スイッチＩ／Ｆ４１５によってＸ軸コイル切替スイッチ４１０を制御し、高速にスイッチを切替えて順次センサコイル４０５に電流を流す。センサコイル４０５に順次磁界が発生し、発生した磁界によって電子ペン３０７が共振する。次に、中央演算装置４２１は、送受切替スイッチ４１１を接点Ｂ、接点Ｃに接続し、Ｘ軸コイル切替スイッチ４１０を順次高速に切り替える。このとき、電子ペン３０７に共振電流により磁界が発生し、センサコイル４０５に誘導起電圧が発生する。センサコイル４０５に発生する誘導起電圧は、Ｘ軸検知Ｉ／Ｆ４１７によって増幅、測定される。
【００４８】
図４（ｃ）は、測定される誘導起電圧の分布を例示する図である。電子ペン３０７がセンサコイル４０５の「２」を付したものの上にある場合、このセンサコイル「２」が受信する誘導起電圧が最も高くなる。以上のように、電磁誘導座標検知ユニット４１３は、測定された誘導起電圧分布の最も高い点を検出することによりタッチ点のＸ座標を確定する。また、同様にしてＹ座標のタッチ点を確定する。確定されたタッチ点の座標は、ＰＣＩ／Ｆ４２７（ＲＳ２３２Ｃ、ＵＳＢなど汎用Ｉ／Ｆ、または専用Ｉ／Ｆ）によりタブレットＰＣの本体３０３に通知される。タブレットＰＣのドライバが座標のデータを受け取ると、マウスデータに変換する。そして、汎用のマウスＩ／Ｆへ通し、本実施の形態のスクロールＡＰＬ１００に渡される。
【００４９】
なお、本実施の形態では、以上述べたタッチパネル付きディスプレイ装置において、座標入力面（本実施の形態ではディスプレイ画面）に対して指やペンが非接触状態から接触したことをタッチといい、タッチがなされた位置を示す点をタッチ点という。また、タッチ点から指やペンが離れたことをデタッチといい、デタッチすることなくタッチ点が移動することを移動・停止タッチという。また、タッチ、デタッチはマウスでいうクリックの操作に対応し、移動・停止タッチは、マウスでいうドラッグの操作に対応する。さらに、所定の時間内、かつ所定の範囲内に連続して２回のタッチがなされたことをダブルタッチといい、ダブルタッチは、マウスのダブルクリックに対応する。
【００５０】
上記したように、タッチパネル付きディスプレイ装置で検出されたタッチは、いずれもマウスによって入力される座標を含むマウスデータの形式に変換され、装置側で処理される。このようにタッチ操作はマウスの操作といずれも１対１に対応でき、マウス操作と同様に取り扱うことが可能である。このため、本実施の形態では、ダブルタッチとダブルクリックとは単なる入力ツールが異なるものであり、同一の操作とみなす。また、同様に、移動・停止タッチをマウスでいうドラッグと同一の操作とみなすものとする。
【００５１】
次に、タッチ点の座標をマウスデータへの変換する方法について具体的に説明する。図５（ａ）は、検出されたタッチ点データ（検出データ）の形式を説明するための図、図５（ｂ）はマウスデータの形式を説明するための図である。図５（ａ）に示したように、検出データは、タッチ点のｘ座標、ｙ座標、さらにタッチ点の座標ステータスの情報を含んでいる。座標ステータスは、検出データが、タッチ、デタッチ、移動・停止タッチのいずれであるかを１または０によって示すものである。なお、タッチパネル付きディスプレイ装置においてタッチ、デタッチ、移動・停止タッチが検出された場合、各タッチを示すフィールドに１が設定される。
【００５２】
また、図５（ｂ）に示したように、マウスデータは、タッチ点のｘ座標、ｙ座標、さらにマウスステータスの情報を含んでいる。マウスステータスは、マウスの右ボタンのＯＮ、ＯＦＦ、左ボタンのＯＮ、ＯＦＦを１または０によって示すものである。タッチ、デタッチ、移動・停止タッチは、マウスの右ボタンのＯＮ、ＯＦＦ、左ボタンのＯＮ、ＯＦＦのうちいずれかと対応付けて設定されている。
【００５３】
以下、本実施の形態のスクロール表示方法について説明する。図６は、本実施の形態のスクロール表示方法を実行するアプリケーションプログラムであるスクロールＡＰＬ１００を説明するための機能ブロック図である。スクロールＡＰＬ１００は、所定の範囲の面上でなされたタッチにしたがってディスプレイ画面に表示される画像を制御するスクロール制御方法をコンピュータに実行させるためのアプリケーションプログラムであり、Ｗｉｎｄｏｗｓ（Ｒ）によって提供される。
【００５４】
スクロールＡＰＬ１００は、タッチ点の情報を変換して得られるマウスデータを図１に示したドライバ１０８から受け取り、受け取ったマウスデータにしたがってスクロールを制御する。そして、スクロールＡＰＬ１００の起動を検出する起動検出部５０１、起動検出後、スクロールの対象領域を選択するスクロール領域選択ステップを実行する対象領域選択部５０３、選択された対象領域上におけるドラッグを検出するドラッグ検出ステップ、検出されたドラッグの方向およびドラッグされた長さを取得するドラッグ情報取得ステップ、取得されたドラッグの方向および長さに基づいて対象領域に表示されている対象画像をスクロールするスクロール実行ステップを実行するスクロール実行部５０５を備えている。
【００５５】
図６は、図１に示したスクロールＡＰＬ１００でなされる処理を説明するための図である。スクロールＡＰＬ１００は、例えば、デスクトップ画面のスクロール制御を示すアイコンをオペレータがダブルクリック（あるいはダブルタッチ）することによって起動する。スクロールＡＰＬ１００の起動により、タッチパネル付きディスプレイ装置は、スクロール制御モードに入る。
【００５６】
図７（ａ）〜（ｃ）および図８（ａ）〜（ｃ）は、スクロール制御の手順を説明するための図である。図７（ａ）は、スクロール制御モードに入った画面を示し、画面にはページ捲りツールバー６０１が表示される。ページ捲りツールバー６０１にはページ捲りボタン６０１ａ、設定ボタン６０１ｂ、閉じるボタン６０１ｃが表示される。スクロールの操作は、ページ捲りツールバー６０１へのタッチによって開始される。
【００５７】
また、本実施の形態では、スクロールモード時にウィンドウ画面６０３が表示されているものとする。ウィンドウ画面６０３にはそれぞれ独立のスクロールバー６０９、スクロールバー６１１および６１３でスクロールされる２つの領域があり、本実施の形態では、スクロール制御モード時にスクロール可能な領域をスクロール制御の対象領域という。本実施の形態ではウィンドウ画面６０３の２つの領域が対象領域６０５、６１３となる。
【００５８】
対象領域選択部５０３は、対象領域６０５、６１３のうち、ダブルタッチがなされた位置を含む対象領域を選択する。また、スクロールの対象領域が選択されない場合、対象領域選択部５０３は、対象領域を検索する。そして、検索の結果、最初に得られた対象領域の表示状態を変更し、オペレータに対象領域を選択するよう喚起する。図７（ａ）では、対象領域６０５の枠を太線で表示した例を示す。対象領域の表示状態の変更方法としては、他に領域の色を変える、あるいは枠線を点滅させるなどが考えられる。なお、表示が変更された対象領域以外の対象領域をスクロールしたい場合、例えば図７（ｂ）に示すように、スクロールしたい対象領域にオペレータがダブルタッチすることによって対象領域を対象領域６０７に変更することができる。所定の時間対象領域の変更がなされない場合、表示変更のあった対象領域がそのままスクロール制御の対象となる。
【００５９】
なお、対象領域選択部５０３は、対象領域になされたダブルタッチを変換して得られたダブルクリックのマウスデータを受け取ると、マウスデータが示す座標に基づいてダブルタッチがなされた対象領域を特定する。そして、スクロール実行部５０５が、マウスデータに基づいてドラッグの方向およびドラッグされた長さを取得し、さらに対象領域のスクロールバーに割り当てられた制御を実行することによって対象画像をスクロールする。本実施の形態でいうスクロールバーに割り当てられた制御とは、特定した対象領域のスクロールバーにあるスクロールボックスの座標を検出し、検出した座標上でドラッグがなされたのと同様の制御を実行することを指す。このような動作により、対象領域上の任意位置のダブルタッチによってスクロールの対象となる領域の選択が可能になる。
【００６０】
対象領域のスクロールは、オペレータの移動・停止タッチ、すなわちドラッグ操作によってなされる。本実施の形態では、スクロール実行部５０５が、対象領域上でのドラッグの方向をスクロール方向とみなし、ドラッグの方向に対象画像をスクロールするものとする。すなわち、図７（ｃ）に示すように、指や電子ペンをスクロールバー６１１に対する垂直方向（以下垂直方向）にドラッグすると、スクロール実行部５０５は、対象領域６０７を下方または上方（図では下方）にスクロールする。
【００６１】
図８（ａ）のように、指や電子ペンを水平方向にドラッグすると、スクロール実行部５０５は、対象領域６０７を右方または左方（図中Ａで示す）にスクロールする。また、（ｂ）のように、指や電子ペンを水平方向にドラッグすると、対象領域６０７を上方または下方（図中Ｂで示す）にスクロールする。なお、本実施の形態でいう水平方向とは、矩形のディスプレイ画面の周辺のうち、横方向の一辺に平行な方向を指す。また、垂直方向とは、矩形のディスプレイ画面の周辺のうち、横方向の一辺と直交する方向を指す。スクロール実行部５０５は、ドラッグの間にドラッグの方向の変化を検出した場合、検出された変化の方向にスクロール方向を変更する。なお、スクロール方向およびスクロール量の判断は、後で説明する。
【００６２】
また、スクロール実行部５０５は、ドラッグ操作の後、オペレータがドラッグの停止位置にそのまま指や電子ペンを所定の時間以上停止させた（特定停止）場合、ドラッグが下方であればキーボードの「ｐａｇｅ  ｕｐ」キー、ドラッグが上方であれば「ｐａｇｅ  ｄｏｗｎ」キーが押されたのと同様の操作を実行するようディスプレイ画面の表示を制御するＰＣに指示する。指示により、ＰＣは、所定の分量だけディスプレイ画面に表示される画像を表示すべき画像の下方または上方に移動する、いわゆるページ捲りを実行する（図８（ｂ））。ページ捲りは、特定停止の時間のうち所定の時間ごとになされ、指や電子ペンを移動させることなく大幅に表示される画像の範囲を変更することを可能にする。
【００６３】
スクロール制御モードは、オペレータが再度ページ捲りボタン６０１ａにタッチすることによって終了し、他のＡＰＬによるタッチパネル付きディスプレイ装置の操作が可能になる。（図８（ｃ））
【００６４】
ところで、指や電子ペンを操作して完全な直線上を移動させることは困難である。このため、本実施の形態では、以下の方法によって検出される座標の軌跡を特定し、ドラッグの方向がずれて表示される画像範囲が変動することを防いでいる。図９は、本実施の形態のスクロール方向を特定する方法を説明するための図である。図９（ａ）に示したように、ドラッグの間に（Ｘ０，Ｙ０）、（Ｘ１，Ｙ１）、（Ｘ２，Ｙ２）、（Ｘ３，Ｙ３）、（Ｘ４，Ｙ４）の４つの点が検出された場合、スクロール実行部５０５は、図示した各点間の距離Ｌ１，Ｌ２，Ｌ３，Ｌ４を以下の式を用いて算出する。なお、本実施の形態では、ドラッグの間に検出された座標間の長さをドラッグ長と記す。
Ｌ１＝（（Ｘ１−Ｘ０）２＋（Ｙ１−Ｙ０）２）１／２
Ｌ２＝（（Ｘ２−Ｘ０）２＋（Ｙ２−Ｙ０）２）１／２
Ｌ３＝（（Ｘ３−Ｘ０）２＋（Ｙ３−Ｙ０）２）１／２
Ｌ４＝（（Ｘ４−Ｘ０）２＋（Ｙ４−Ｙ０）２）１／２
【００６５】
スクロール実行部５０５は、順次算出されたドラッグ長が予め定められた特定の長さ（スクロール有効長）に達した時点でスクロールの方向（ＳＤ）、Ｘ方向についてのスクロール量（ＬＸ）、Ｙ方向についてのスクロール量（ＬＹ）を算出する。本実施の形態では、ドラッグ長Ｌ４が算出された時点でドラッグ長が有効スクロール長に達したものと判断されたものとする。
【００６６】
図９（ａ）は、スクロール方向を特定する処理を説明するための図である。すなわち、スクロール実行部５０５は、ドラッグを開始したタッチ点Ｐ（Ｘ０，Ｙ０）を基準にし、点Ｘ４の方向を角度θを用いて特定する。角度θは、以下の式によって算出される。
【００６７】
点（Ｘ４，Ｙ４）が（Ｘ４≧Ｘ０、Ｙ４＜Ｙ０）である場合（例えば点Ｐ１）
ＳＤ＝θ
θ＝ａｒｃｔａｎ（（Ｘ４−Ｘ０）／（Ｙ０−Ｙ４））
＋ＬＸ＝Ｌ４×ｓｉｎθ
−ＬＹ＝Ｌ４×ｃｏｓθ
【００６８】
点（Ｘ４，Ｙ４）が（Ｘ４≧Ｘ０、Ｙ４≧Ｙ０）である場合（例えば点Ｐ２）
ＳＤ＝θ＋９０
θ＝ａｒｃｔａｎ（（Ｙ４−Ｙ０）／（Ｘ４−Ｘ０））
＋ＬＸ＝Ｌ４×ｃｏｓθ
＋ＬＹ＝Ｌ４×ｓｉｎθ
【００６９】
タッチ点（Ｘ４，Ｙ４）が（Ｘ４＜Ｘ０、Ｙ４≧Ｙ０）である場合（例えば点Ｐ３）
ＳＤ＝θ＋１８０
θ＝ａｒｃｔａｎ（（Ｘ０−Ｘ４）／（Ｙ４−Ｙ０））
−ＬＸ＝Ｌ４×ｓｉｎθ
＋ＬＹ＝Ｌ４×ｃｏｓθ
【００７０】
タッチ点（Ｘ４，Ｙ４）が（Ｘ４＜Ｘ０、Ｙ４＜Ｙ０）である場合（例えば点Ｐ４）
ＳＤ＝θ＋２７０
θ＝ａｒｃｔａｎ（（Ｙ０−Ｙ４）／（Ｘ０−Ｘ４））
−ＬＸ＝Ｌ４×ｃｏｓθ
−ＬＹ＝Ｌ４×ｓｉｎθ
【００７１】
上記した式のいずれかを用いてスクロール方向θを確定した後、スクロール実行部５０５は、図９（ｃ）に示すように、点（Ｘ４，Ｙ４）に続いてドラッグ操作中に検出された点（Ｘ５，Ｙ５）…について、Ｘ方向クロール量（ＬＸ）、Ｙ方向スクロール量（ＬＹ）を以下の式を用いて順次確定する。
Ｌ＝（（Ｘ５−Ｘ４）２＋（Ｙ５−Ｙ４）２）１／２
＋ＬＸ＝Ｌ×ｃｏｓθ
＋ＬＹ＝Ｌ×ｓｉｎθ
ＳＤ＝θ＋９０
【００７２】
また、スクロール実行部５０５には予めＸ方向スクロール量、Ｙ方向スクロール量に対応する対象領域をスクロールする分量およびが方向のデータが記憶されている。そして、確定したＸ方向スクロール量、Ｙ方向スクロール量をデータと照合し、ディスプレイ画面に表示されている画像のスクロールを、ドラッグされたスクロール量および方向に応じて実行する。
【００７３】
図１０は、オペレータがスクロールモードの設定を行う画面（設定ダイアログボックス）を説明するための図である。設定ダイアログボックスは、図９に示したページ捲りツールバー６０１の設定ボタン６０１ｂにタッチすることによって開かれる。図１０に示した制限時間設定部１００１は、２回のタッチがダブルタッチ（ダブルクリック）とみなす場合の時間間隔を設定するものである。オペレータはダブルクリック間隔設定用のバーのボックスを移動し、時間間隔を遅く（長く）または早く（短く）設定する。設定された時間間隔以内で２回のタッチがなされ、かつ、タッチがなされた２箇所の距離がスクロール有効長以下であれば、スクロールＡＰＬ１００が２回のタッチを変換して作成されるマウスデータがダブルクリックと判断する。
【００７４】
また、ページ捲り移行停止設定用のバーは、スクロール実行部５０５が特定停止中と判断する条件となる停止時間を設定するものである。対象領域のいずれかの一点にバーのボックスを移動して設定した時間以上指や電子ペンがあった場合、スクロール実行部は、「ｐａｇｅ  ｕｐ」キー、または「ｐａｇｅ  ｄｏｗｎ」を実行する。「ｐａｇｅ  ｕｐ」キー、「ｐａｇｅ  ｄｏｗｎ」を実行する周期は、ページ捲り周期設定用バーによって設定できる。
【００７５】
さらに、本実施の形態のスクロール制御方法は、前記したようにスクロールボックスのドラッグ操作と同様の操作を対象領域の任意の位置で行なうものである。このため、主にディスプレイ画面の一辺と平行またはこの一辺と直交する方向に画像をスクロールする処理を対象とする。したがって、本実施の形態では、以下のようにしてドラッグの方向をディスプレイ画面の一辺と平行またはこの一辺と直交する方向に近似するものとした。
【００７６】
水平スクロール傾き設定部１００３は、スクロール実行部５０５が、図９で説明した方法で特定されたスクロール方向を水平方向とみなす場合に許容される傾きを設定するものである。
【００７７】
水平スクロール傾き設定部１００３には、直線１０１５が表示される。矢線１０１５が表示されている領域にオペレータがタッチすると、本実施の形態では、ハンドルが表示されるものとする（図示せず）。ハンドルを矢線Ｃの方向にドラッグすると矢線１０１５の先端だけが移動し、矢線１０１５の傾きが設定される。スクロール実行部５０５は、設定された傾き（水平スクロール傾き）を水平と判断する際の許容範囲とし、図中の横方向になされたドラッグの軌跡が水平方向に対してここで設定された以下の傾きを持つ場合にはドラッグが水平になされたものと判断する。
【００７８】
すなわち、図７（ｂ）に示すように、スクロール実行部５０５は、水平スクロール傾きがθＨ（θＨ＝ａｒｃｔａｎ（Ｙ／Ｘ））に設定された場合、スクロールモード時のドラッグが、図９（ｂ）で示した９０−θＨ〜９０＋θＨである、または２７０−θＨ〜２７０＋θＨである場合にドラッグが水平方向になされたと判断し、選択されている対象領域を水平にスクロールする。
【００７９】
垂直スクロール傾き設定部１００５は、スクロール実行部５０５が、図９で説明した方法で特定されたスクロール方向を垂直方向とみなす場合に許容される傾き（垂直スクロール傾き）を設定するものである。なお、本実施の形態でいう垂直方向とは、矩形のディスプレイ画面の周辺のうち、横方向の一辺に直交する方向をいうものとする。
【００８０】
垂直スクロール傾き設定部１００５には、直線１０１７が表示される。矢線１０１７が表示されている領域にオペレータがタッチすると、本実施の形態では、ハンドルが表示されるものとする（図示せず）。ハンドルを矢線Ｄの方向にドラッグすると矢線１０１７の先端だけが移動し、矢線１０１７の傾きが設定される。スクロール実行部５０５は、設定された傾きを垂直と判断する際の許容範囲とし、図中の縦方向になされたドラッグの軌跡が垂直方向に対してここで設定された以下の傾きを持つ場合にはドラッグが垂直になされたものと判断する。
【００８１】
すなわち、図７（ｃ）に示すように、スクロール実行部５０５は、垂直スクロール傾きがθＶ（θＶ＝ａｒｃｔａｎ（Ｙ／Ｘ））に設定された場合、スクロールモード時のドラッグが、図９（ｂ）で示した３６０−θＶ〜０＋θＶである、または１８０−θＶ〜１８０＋θＶである場合にドラッグが垂直方向になされたと判断し、選択されている対象領域を垂直にスクロールする。
【００８２】
停止タッチ範囲設定部１００７は、スクロール制御モード時に停止タッチであると判断する際のタッチ位置の変動の許容範囲を設定するものである。タッチによって表示されるハンドルを矢線Ｅの方向にドラッグすることによって円１０１８の大きさが決まる。スクロール実行部５０５は、タッチ点が所定の時間以上設定された円の範囲内にあることを示すマウスデータを停止タッチと判断する。すなわち、スクロール実行部５０５は、円１０１８の範囲内でタッチ点が移動しても、この移動を許容して停止タッチと認めることになる。
【００８３】
スクロール有効長設定部１０１９は、図９で説明したスクロール長を設定するものである。タッチによって表示される矢線１０１９をドラッグすると、矢線１０１９の先端だけが移動して矢線１０１９の長さが変わる。スクロール実行部５０５は、矢線１０１９の長さを反映し、有効スクロール長を設定する。
【００８４】
以上述べた本実施の形態によれば、ディスプレイ画面上でなされたタッチをマウスデータに変換し、このマウスデータに基づいてドラッグの方向や長さを検出する。さらに、選択された対象領域のスクロールバーのスクロールボックスを検出し、検出されたドラッグの方向や長さに基づいて、このスクロールボックスをマウスでドラッグするのと同様の制御（スクロール）を実行する。このため、任意の位置においてなされた移動・停止タッチによって画面をスクロールする制御を、マウスによってスクロール可能なウィンドウを提供するすべてのアプリケーションに適用することができる。
【００８５】
次に、以上述べたスクロール制御方法をフローチャートを用いて説明する。図１１は、図５で説明したタッチ点の座標をマウスデータへの変換する方法のフローチャートである。なお、図１１に示したフローチャートは、制御の説明上必要な項目を示したものであり、実際の制御データを示すものではない。
【００８６】
ドライバ１０８は、座標検出装置３からタッチにかかる座標データを入力する（ステップＳ１１０１）。座標データがタッチ座標を示す場合（ステップＳ１１０２：Ｙｅｓ）、ドライバのコントロールパネルの設定に応じてタッチがマウスの右クリックに当たるか否か判断する（ステップＳ１１０３）。そして、右クリックにあたる場合（ステップＳ１１０３：Ｙｅｓ）、右ボタンのＯＮを示すマウスデータとしてＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）が提供するマウスＩ／Ｆへ通知する（ステップＳ１１０４）。また、ドライバ１０８は、ステップ１１０３においてタッチ操作が右クリックにあたらないと判断した場合（ステップＳ１１０３：Ｎｏ）、左ボタンのＯＮを示すマウスデータをマウスＩ／Ｆへ通知する（ステップＳ１１０５）。
【００８７】
一方、ステップ１１０２において、入力した座標データがタッチ座標を示すものでないと判断された場合（ステップＳ１１０２：Ｎｏ）、ドライバ１０８は、座標データがデタッチを示すものか否か判断する（ステップＳ１１０６）。デタッチであれば（ステップＳ１１０６：Ｙｅｓ）、タッチ操作が右クリックにあたるものか否か判断し（ステップＳ１１０７）、この判断に応じてマウスの右ボタンまたは左ボタンのＯＦＦをマウスＩ／Ｆに通知する（ステップＳ１１０９）。
【００８８】
図１２は、スクロール制御モードのフローチャートである。スクロールＡＰＬ１００は、デスクトップアイコンのダブルクリック等によりスクロール制御用のプログラムを起動し、ページ捲りツールバー６０１を表示する（ステップＳ１２０１）。そして、制御データを初期化し（ステップＳ１２０２〜１２０８）、座標検出装置３からタッチ座標を変換して得たマウスデータを受け取る（ステップＳ１２０９）。そして、受け取ったマウスデータがページ捲りツールバー６０１上にあるか否か判断し（ステップＳ１２１０）、タッチ点がページ捲りツールバー６０１上にある場合にはデタッチとなるまでページ捲りツールバー制御を実行する（ステップＳ１２１１）。また、タッチ点がページ捲りツールバー６０１外であると判断した場合（ステップＳ１２１０：Ｎｏ）、タッチ点がデタッチとなるまでスクロール表示制御を実行する（ステップＳ１２１６）。
【００８９】
図１３、図１４は、図１２に示したページ捲りツールバー制御を説明するためのフローチャートである。ページ捲りツールバー制御では、タッチされたボタンを選択表示するよう設定を変更する（ステップＳ１３０３）。また、タッチしたボタン種別を保存する（ステップＳ１３０４）。また、ドラッグ操作によりタッチ点がタッチボタン外へ移動した場合（（ステップＳ１３０２：Ｎｏ）、（ステップＳ１３０５：Ｎｏ））、タッチボタンを通常表示へ戻す（ステップＳ１３０７）。また、デタッチ（ボタンＯＦＦ）を検出した場合（ステップＳ１３０１：Ｎｏ）、タッチボタンを通常表示へ戻す。
【００９０】
制御ボタンの種別がページ捲りである場合（ステップＳ１３０９：Ｙｅｓ）、操作モードをページ捲りに設定するか否か判断する（ステップＳ１３１０）。ページ捲りを設定する場合、ページ捲りボタン６０１ａへのタッチによりページ捲りモード示す実行中表示（例えばページ捲りボタン６０１ａが画面より下がった状態であるように陰影をつける）へ切り替える（ステップＳ１３１１）。さらに、スクロールＡＰＬ１００が、すべてのマウスデータを受け取るモードへ移行し（ステップＳ１３１２）、画面上の任意の領域でドラッグ操作、ダブルクリック操作によりマウスデータをすべて受け取る。
【００９１】
また、対象領域選択部５０３は、スクロールの対象領域を選択するため、対象領域（フローチャートではスクロール領域と表記）を検索、領域枠を表示する（ステップＳ１３１３）。また、ステップＳ１３１０において操作モードをページ捲りに設定しないと判断した場合（ステップＳ１３１０：Ｎｏ）、ページ捲りボタンタッチ６０１ａへのタッチでページ捲りモードから抜け、ページ捲りツールバー６０１上の座標のみ受け取り、他のアプリケーション上の座標はこのアプリケーションが受け取る通常の操作状態へ戻す（ステップＳ１３１６）。
【００９２】
また、制御ボタンの種別がページ捲りでないと判断された場合（ステップＳ１３０９：Ｎｏ）、図１４に示すように、操作モードがページ捲りに設定されているか否か判断する（ステップＳ１４０１）。ページ捲りに設定されていれば（ステップＳ１４０１：Ｙｅｓ）、ページ捲りボタン６０１ａをページ捲り実行中の表示にする（ステップＳ１４０２）。そして、設定ボタン６０１ｂによりページ捲りモード設定ダイアログボックスを表示し（ステップＳ１）、ページ捲りモードを設定する（ステップＳ１４０４）。閉じるボタン６０１ｂへのタッチによりページ捲りツールバーが閉じ（ステップＳ１４０６）、以上の処理が終了する。
【００９３】
図１５は、図１３のステップＳ１３１３に示した対象領域検索制御の処理を説明するためのフローチャートである。スクロール領域検索制御では、ダブルタッチによって選択された対象領域、あるいは自動検知された対象領域が存在するか否かを対象領域選択部５０３がウィンドウに関するスクロール領域情報に基づいて判断する（ステップＳ１５０２）。なお、スクロール領域情報は、ウィンドウが開かれるたびに検出、更新されるものでもよい。ウィンドウの情報は、ＯＳが提供するＩ／Ｆを介して対象領域選択部５０３が取得できる。
以下に、スクロール領域情報に含まれる情報の項目を例示する。
ウィンドウタイトル（０×００：無効）
ウィンドウ番号
ウィンドウ原点の座標
ウィンドウ幅
ウィンドウ高さ
ウィンドウ領域表示枠（０：無，１：有り）
対象領域が存在するか否かの判断は、主に「ウィンドウタイトル」、「ウィンドウ番号」に応じてなされる。
【００９４】
対象領域として選択されていたウィンドウが閉じた、あるいは他のウィンドウの背面に移った場合、対象領域選択部５０３は、最前面にあるウィンドウを提供するアプリケーションの情報を取得する（ステップＳ１５０４）。そして、取得したアプリケーションのウィンドウの中から対象領域を検索する（ステップＳ１５０５）。さらに、取得したアプリケーションからアプリケーションのウィンドウタイトル（Ｍｉｃｒｏｓｏｆｔ（Ｒ）、Ｗｏｒｄ（Ｒ）などがアプリケーション名となる）を取得する。また、スクロール領域のウィンドウ番号、ウィンドウ原点座標、ウィンドウ幅、ウィンドウ高さをスクロール領域情報として保存する（ステップＳ１５０８）。
【００９５】
また、対象領域選択部５０３は、検索した対象領域を示すため、全画面透明ウィンドウを作成し、対象領域の枠線を太線で示す（ステップＳ１５０９）。枠線は、スクロール操作の開始時にクリアされる。
【００９６】
図１６、図１７、図１８は、図１２のステップＳ１２２３に示したスクロール表示制御の処理を説明するためのフローチャートである。スクロール表示制御では、タッチからデタッチまでがスクロール制御の単位となる。マウスボタンのＯＦＦ、すなわちデタッチが検出されると（ステップＳ１６０１：Ｙｅｓ）、スクロール実行部５０５は、スクロールＡＰＬ１００のスクロール制御、ダブルクリック制御を開始し、タッチ座標をクリアしてタッチ点に描画がなされることを防ぐ（ステップＳ１６０５）。
【００９７】
検出されたデタッチまでのドラッグ長がスクロール有効長以下の場合、スクロール実行部５０５は、デタッチがクリック操作として行なわれたものとする（ステップＳ１６０７）。そして、デタッチのタッチ座標をクリック座標として保存する（ステップＳ１６０８）。そして、次のクリックが制限時間設定部１００１で予め設定された時間内になされるか否か判断するために計時を開始する（ステップＳ１６０９）。そして、次のタッチが所定の範囲内（直前のタッチ点との距離がスクロール有効長以下）で設定された時間内に行なわれたと判断した場合（ステップＳ１６１０：Ｎｏ）、このタッチをダブルクリックとみなし、ダブルクリックがなされた位置の座標が含まれる対象領域の情報を取得する（ステップＳ１６１２）。取得した情報は、スクロール領域情報として保存される（ステップＳ１６１５）。
【００９８】
また、タッチから次のタッチがなされた時間までが設定された時間以上であると判断した場合（ステップＳ１６２０：Ｙｅｓ）、ダブルクリックモードを解除する（ステップＳ１６２１）。そして、スクロール領域情報に保存されているスクロール領域が存在するか判断する（ステップＳ１６２３）。スクロール領域情報には、対象領域を持たないアプリケーション、あるいはアプリケーションが表示されていない場合、対象領域に関する情報が存在しない。
【００９９】
スクロール領域情報に対象領域に関する情報がある場合（ステップＳ１６２３：Ｙｅｓ）、図１７に示すように、この対象領域の枠が表示されているか否か判断する（ステップＳ１７０２）。枠が表示されている場合（ステップＳ１７０２：Ｙｅｓ）、この枠を消去する（ステップＳ１７０３）。そして、前回入力した座標と今回入力した座標との間隔を算出し（ステップＳ１７０４）、タッチ開始からのドラッグ長がスクロール有効長に達したか否か判断し（ステップＳ１７０５）、達した時からスクロール表示を開始する（ステップＳ１７０５：Ｙｅｓ）。さらに、スクロール実行部５０５は、図１０に示した方法でスクロール方向ＳＤと傾きθＨあるいはθＶを算出し、スクロール方向を決定する。以下にＳＤ、θＨ、θＶとスクロール方向との関係について記す。
【０１００】
（９０−θＨ）＜ＳＤ＜（９０＋θＨ）である場合
（θ（水平方向に対する傾き）＝０、ＳＤ＝９０）の水平スクロールとする。
（２７０−θＨ）＜ＳＤ＜（２７０＋θＨ）である場合
（θ（水平方向に対する傾き）＝０、ＳＤ＝２７０）の水平スクロールとする。
（３６０−θＶ）＜ＳＤ＜（０＋θＶ）である場合
（θ（垂直方向に対する傾き）＝０、ＳＤ＝０）の垂直スクロールとする。
（１８０−θＶ）＜ＳＤ＜（１８０＋θＶ）である場合
（θ（垂直方向に対する傾き）＝０、ＳＤ＝１８０）の垂直スクロールとする。
【０１０１】
スクロール実行部５０５は、ＯＳが提供するＩ／Ｆを介して対象領域をスクロールする。このスクロールは、図９（ｃ）に示した方法で確定したＸ方向スクロール量、Ｙ方向スクロール量を用いて行なわれる。また、今回受け取った座標が前回受け取った座標を中心とする停止タッチ範囲内にあるか否か判断し（ステップＳ１７１０）、停止範囲内にないと判断された場合には（ステップＳ１７１０：Ｎｏ）、今回受け取った座標と前回受け取った座標との間のドラッグ長、スクロール方向を算出する（ステップＳ１７１５）。また、スクロール方向が逆転した場合（（ＳＤ−９０）〜（ＳＤ＋９０）外）、スクロール表示方向を１８０°反転させ（ステップＳ１７１６）、この方向のデータを保存する（ステップＳ１７１７）。そして、今回の座標と前回の座標との間のドラッグ長、スクロール方向からスクロール量を算出する（ステップＳ１７１８）。
【０１０２】
ステップＳ１７１０において、今回の受け取った座標が停止タッチを示すと判断した場合（ステップＳ１７１０：Ｙｅｓ）、スクロール中にであるか否か判断する（ステップＳ１７２０）。スクロール中であれば（ステップＳ１７２０：Ｙｅｓ）、スクロール制御を停止し（ステップＳ１７２１）、ページ捲りに移行するための特定停止時間の計時を開始する（ステップＳ１７２２）。
【０１０３】
ステップＳ１７２０においてスクロール中でないと判断された場合（ステップＳ１７２０：Ｎｏ）、図１８のように、スクロールモードにおける制御が停止タッチであるか否か判断する（ステップＳ１８０１）。停止タッチであると判断した場合（ステップＳ１８０１：Ｙｅｓ）、この停止タッチが特定停止中であるか否かによってページ捲りの制御に移行するか否か判断する（ステップＳ１８０１）。ページ捲りに移行する場合（ステップＳ１８０２：Ｙｅｓ）、スクロール表示から「ＰａｇｅＤｗｏｎ」、「ＰａｇｅＵｐ」キー出力によるページ制御へ移行する（ステップＳ１８０７）〜（ステップＳ１８１０）。
【０１０４】
なお、この際、「ＰａｇｅＤｏｗｎ」キーコードは、スクロール方向（９０＜ＳＤ＜２７０）である場合にキーボードＩ／Ｆに通知される。この通知によってキーボードの同キーが押されたのと同様の動作が実行される。また、「ＰａｇｅＵｐ」キーコードは、スクロール方向（２７０≦ＳＤ≦９０）である場合にキーボードＩ／Ｆに通知される。この通知によってキーボードの同キーが押されたのと同様の動作が実行される。「ＰａｇｅＤｏｗｎ」、「ＰａｇｅＵｐ」のキーの通知は、停止タッチが連続する場合、ページ捲り周期単位ごと実行される（ステップＳ１８１２）。
【０１０５】
尚、本実施形態のスクロール制御方法は、インストール可能な形式または実行可能な形式のファイルでＣＤ−ＲＯＭ、フロッピー（Ｒ）ディスク（ＦＤ）、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録されて提供される。また、本実施形態のスクロール制御方法をコンピュータに実行させるためのプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。
【０１０６】
【発明の効果】
以上述べたように、請求項１に記載の発明は、簡易に画面をスクロールすることができ、より操作性が高く、プレゼンテーション等を円滑に進行させることができる。また、複数の対象領域からいずれかを選択してスクロールを制御できるので、ＰＣやタッチパネル付きディスプレイ装置で動作するアプリケーションのすべてでタッチ操作によるスクロールを可能にするスクロール制御方法を提供できるという効果を奏する。
【０１０７】
請求項２に記載の発明は、任意の位置においてなされた移動・停止タッチによって画面をスクロールする制御を、マウスによってスクロール可能なウィンドウを提供するすべてのアプリケーションに適用することができるスクロール制御方法を提供できるという効果を奏する。
【０１０８】
請求項３に記載の発明は、スクロール方向を適切に設定することにより、より使い易いスクロール制御方法を提供できるという効果を奏する。
【０１０９】
請求項４に記載の発明は、オペレータの意図に沿った方向に画面をスクロール可能にすることにより、より使い易いスクロール制御方法を提供できるという効果を奏する。
【０１１０】
請求項５に記載の発明は、オペレータの意図に沿った方向に画面をスクロール可能にすることにより、より使い易いスクロール制御方法を提供できるという効果を奏する。
【０１１１】
請求項６に記載の発明は、比較的大幅な上方へのスクロールの操作を効率化することにより、より使い易いスクロール制御方法を提供できるという効果を奏する。
【０１１２】
請求項７に記載の発明は、比較的大幅な下方へのスクロールの操作を効率化することにより、より使い易いスクロール制御方法を提供できるという効果を奏する。
【０１１３】
請求項８に記載の発明は、スクロールしたい方向に領域上でドラッグすることによって画面をスクロールすることにより、より使い易いスクロール制御方法を提供できるという効果を奏する。
【０１１４】
請求項９に記載の発明は、オペレータに対象領域の選択を促すと共に、スクロールの対象となる領域を示すことにより、より使い易いスクロール制御方法を提供できるという効果を奏する。
【０１１５】
請求項１０に記載の発明は、選択の操作を簡易化することにより、より使い易いスクロール制御方法を提供できるという効果を奏する。
【０１１６】
請求項１１に記載の発明は、簡易に画面をスクロールすることができ、より操作性が高く、プレゼンテーション等を円滑に進行させることができる。また、複数の対象領域からいずれかを選択してスクロールを制御できるので、ＰＣやタッチパネル付きディスプレイ装置で動作するアプリケーションのすべてでタッチ操作によるスクロールを可能にするスクロール制御方法をコンピュータに実行させるプログラムを提供できるという効果を奏する。
【図面の簡単な説明】
【図１】本発明の一実施の形態のスクロール制御方法が適用可能な光学式のタッチパネル付きディスプレイ装置を示す図である。
【図２】本発明に適用可能な座標入力装置を示す図である。
【図３】本発明に適用可能なタブレットＰＣを説明するための図である。
【図４】本発明に適用可能なタブレットＰＣを説明するための他の図である。
【図５】本発明の実施の形態のタッチデータとマウスデータとの関係を説明するための図である。
【図６】本発明の実施の形態のスクロール表示方法を実行するアプリケーションプログラムを説明するための図である。
【図７】本発明の実施の形態のスクロール制御の手順を説明するための図である。
【図８】本発明の実施の形態のスクロール制御の手順を説明するための他の図である。
【図９】本実施の形態のスクロール方向を特定する方法を説明するための図である。
【図１０】本発明の実施の形態の設定ダイアログボックスを説明するための図である。
【図１１】図５で説明したタッチ点の座標をマウスデータへの変換する方法のフローチャートである。
【図１２】本発明の実施の形態のスクロール制御モードのフローチャートである。
【図１３】図１２に示したページ捲りツールバー制御を説明するためのフローチャートである。
【図１４】図１２に示したページ捲りツールバー制御を説明するための他のフローチャートである。
【図１５】図１３に示した対象領域検索制御の処理を説明するためのフローチャートである。
【図１６】図１２に示したスクロール表示制御の処理を説明するためのフローチャートである。
【図１７】図１２に示したスクロール表示制御の処理を説明するための他のフローチャートである。
【図１８】図１２に示したスクロール表示制御の処理を説明するための他のフローチャートである。
【符号の説明】
１  座標入力装置
２  表示装置
３  座標検出装置
４  ホスト装置
１０４  中央演算装置
１０８  ドライバ
１１２  座標入力面
１１３  ディスプレイ画面
２０１  再帰性反射部材
２０２Ｒ  右光学検出器
２０２Ｌ  左光学検出器
３０１  ディスプレイ
３０７  電子ペン
５０１  起動検出部
５０３  対象領域選択部
５０５  スクロール実行部
６０１  ページ捲りツールバー
６０１ａ  ページ捲りボタン
６０１ｂ  設定ボタン
６０９、６１１  スクロールバー
１００１  制限時間設定部
１００３  水平スクロール傾き設定部
１００５  垂直スクロール傾き設定部
１００７  停止タッチ範囲設定部
１０１９  スクロール有効長設定部
【図１】
2005044036.tif 000003
【図２】
2005044036.tif 000004
【図３】
2005044036.tif 000005
【図４】
2005044036.tif 000006
【図５】
2005044036.tif 000007
【図６】
2005044036.tif 000008
【図７】
2005044036.tif 000009
【図８】
2005044036.tif 000010
【図９】
2005044036.tif 000011
【図１０】
2005044036.tif 000012
【図１１】
2005044036.tif 000013
【図１２】
2005044036.tif 000014
【図１３】
2005044036.tif 000015
【図１４】
2005044036.tif 000016
【図１５】
2005044036.tif 000017
【図１６】
2005044036.tif 000018
【図１７】
2005044036.tif 000019
【図１８】
2005044036.tif 000020