(57)【要約】【課題】スクロールバー内にマウスカーソルを移動させる操作を行なうことなく、移動キーの操作だけでスクロール動作を行なうことが可能なサーバベースコンピューティングシステムを提供すること。【解決手段】システムを構成するクライアントが、カーソルの移動を示すコードとスクロールの指示を示すコードとを対応付けたテーブルと、画面情報及びウインドウの端点の座標情報を含むデータをサーバから受信する手段と、受信した画面情報を表示する手段と、カーソルの移動操作を含む入力操作を実行する手段と、カーソルの位置を検出する手段と、検出したカーソルの位置がウインドウの端点に達したか否かを検出する手段と、カーソルの位置がウインドウの端点に達したことを検出した場合に、テーブルによってカーソルの移動を示すコードをスクロールの指示を示すコードに変換する手段と、変換したコードをサーバに送信する手段とを備える。【選択図】図１０
2009003296.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介してサーバ装置に対してサービス要求を行ない、前記サービス要求に対応する画面情報を前記サーバ装置から取得するクライアント装置であって、
画面上に表示されるカーソルの移動を示すコードと前記画面のスクロールの指示を示すコードとを対応付けて格納したコード変換テーブルを記憶する記憶手段と、
前記画面情報及び前記画面内に開かれているウインドウの端点の座標情報を含むデータを前記サーバ装置から受信するクライアント装置側受信手段と、
前記クライアント装置側受信手段によって受信した画面情報を表示する表示手段と、
前記カーソルの移動操作を含む入力操作を実行する入力手段と、
前記カーソルの位置を検出するカーソル位置検出手段と、
前記カーソル位置検出手段によって検出した前記カーソルの位置が前記ウインドウの端点に達したか否かを検出する検出手段と、
前記検出手段によって前記カーソルの位置がウインドウの端点に達したことを検出した場合に、前記コード変換テーブルによって前記カーソルの移動を示すコードを前記スクロールの指示を示すコードに変換するコード変換手段と、
前記コード変換手段によって変換したコードを前記入力手段によって実行する入力操作のコードとして前記サーバ装置に送信するクライアント装置側送信手段と、
を備えたことを特微とするクライアント装置。
【請求項２】
請求項１に記載のクライアント装置とサーバ装置とを備えることを特徴とするサーバベースコンピューティングシステムであって、
前記サーバ装置は、
前記クライアント装置から送信された入力操作のコードを受信するサーバ側受信手段と、
前記サーバ側受信手段によって受信した入力操作のコードに従った処理を実行する実行手段と、
前記実行手段によって実行した結果の画面情報及び前記画面内に開かれているウインドウの端点の座標情報を含むデータを前記クライアント装置に送信するサーバ装置側送信手段と、
を備えたことを特徴するサーバベースコンピューティングシステム。
【請求項３】
ネットワークを介してサーバ装置に対してサービス要求を行ない、前記サービス要求に対応する画面情報を前記サーバ装置から取得するクライアント装置のコンピュータを、
画面上に表示されるカーソルの移動を示すコードと前記画面のスクロールの指示を示すコードとを対応付けて格納したコード変換テーブルを記憶する記憶手段、
前記画面情報及び前記画面内に開かれているウインドウの端点の座標情報を含むデータを前記サーバ装置から受信するクライアント装置側受信手段、
前記クライアント装置側受信手段によって受信した画面情報を表示する表示手段、
前記カーソルの移動操作を含む入力操作を実行する入力手段、
前記カーソルの位置を検出するカーソル位置検出手段、
前記カーソル位置検出手段によって検出した前記カーソルの位置が前記ウインドウの端点に達したか否かを検出する検出手段、
前記検出手段によって前記カーソルの位置がウインドウの端点に達したことを検出した場合に、前記コード変換テーブルによって前記カーソルの移動を示すコードを前記スクロールの指示を示すコードに変換するコード変換手段、
前記コード変換手段によって変換したコードを前記入力手段によって実行する入力操作のコードとして前記サーバ装置に送信するクライアント装置側送信手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションプログラムを動作させるサーバ装置に対してサービス要求を行なうクライアント装置とクライアント装置からのサービス要求に基づいてアプリケーションプログラムを動作させるサーバ装置とがネットワークを介して相互に接続可能に構成されたサーバベースコンピューティングシステムに関する。
【背景技術】
【０００２】
近年、企業の情報漏えい対策などの目的のため、企業によるサーバベースコンピューティングシステムの採用が急速に進んでいる。
【０００３】
サーバベースコンピューティングシステム（シンクライアントシステム）とは、クライアント装置（シンクライアント装置とも呼ばれる）とサーバ装置とがネットワークを介して相互に接続可能に構成されたシステムにおいて、クライアント装置がサーバ装置に対してサービス要求を行なうと、サーバ装置がクライアント装置からのサービス要求に基づいて、データの管理およびアプリケーションプログラムを動作させるというものである（例えば、特許文献１参照。）。
【０００４】
サーバ装置はクライアント装置用の表示データを作成し、これをクライアント装置に送る。クライアント装置では、使用者のキーやマウス装置等の操作情報を、ネットワークを介してサーバ装置へ送り、前記サーバ装置側で作成されたクライアント装置用の表示データを受け取って表示する。クライアント装置は、ネットワーク機器、表示装置、マウス装置やキーボード等の入力装置を備えているだけでよく、データをクライアント装置内に持たないためハードディスク等のストレージが不要であり、アプリケーションプログラムの実行を行なわないためクライアント装置に必要となる処理の負荷は軽い。
【０００５】
このようなサーバベースコンピューティングシステムにおいて、サーバ装置側の仮想的な大画面を、それよりも小さなクライアント装置側の画面に表示するために、クライアント装置に画面をスクロール表示するスクロール機能を有したり、サーバ装置側の仮想的な大画面を縮小表示したりという方法がある。特に、スクロール機能を有するクライアント装置において、使用者がアプリケーションをスクロールさせる場合には、マウスカーソル（単にカーソルともいう。）をスクロールバーに移動して操作するか、スクロールを示すキーコードを送信することで、スクロール機能が実現されている。
【０００６】
また、マウスカーソルをスクロールバーに移動して操作する場合の操作性の向上を図った提案も行なわれている。例えば、スクロールバー内のマウスカーソルの移動をさせることなく同一方向の画面移動を操作者が続けて行なえるようにすることを目的として、ウインドウのスクロールバー内においてスライダーが表示されていない部分がクリックされたことによりウインドウの表示範囲が移動した場合、その移動と同一方向の表示範囲の移動を続けてできるようにマウスカーソルの位置を移動させるという技術が開示されている（例えば、特許文献２参照。）。
【０００７】
【特許文献１】特開２００５−２２８２２７号公報
【特許文献２】特開平１０−１７１６２５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上述したように、サーバベースコンピューティングシステムが実行される際には、アプリケーションプログラムを動作させるサーバ装置に対してサービス要求を行なうクライアント装置と、クライアント装置からのサービス要求に基づいてアプリケーションプログラムを動作させるサーバ装置とが、ネットワークを介して相互に接続可能に構成されている。
【０００９】
このようなサーバベースコンピューティングシステムは、基本的には通常のパソコンを用いて操作することを想定したものである。つまりフルキーボードやマウス装置を使用して操作することが前提となっている。
【００１０】
しかしながら、クライント装置の入力装置は通常のパソコンに比べてスペースなどの制約があるので、操作部にマウス装置が無かったり、キーの数が少なかったりする。このような場合、パソコン等と比べ同じ操作を行なうのに多くの手間がかかり、使用者にとって使いづらいシステムであるという問題があった。
【００１１】
例えば、ウインドウの下端にカーソルがきた場合に、下方向にスクロールするには、まずスクロールバーにカーソルを移動させてカーソルを確定させる操作が必要であった。すなわち、キー操作の場合は、移動キーを何回か押してスクロールバーにカーソルを移動させた後にカーソルを確定させるキーを押す操作が必要であった。
【００１２】
本発明は、上記問題点に鑑みてなされたものであり、スクロールバー内にマウスカーソルを移動させる操作を行なうことなく、移動キーの操作だけでスクロール動作を行なうことが可能なサーバベースコンピューティングシステムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明は、上記課題を解決するため、下記のような構成を採用した。
すなわち、本発明の一態様によれば、本発明のクライアント装置は、ネットワークを介してサーバ装置に対してサービス要求を行ない、前記サービス要求に対応する画面情報を前記サーバ装置から取得するクライアント装置であって、画面上に表示されるカーソルの移動を示すコードと前記画面のスクロールの指示を示すコードとを対応付けて格納したコード変換テーブルを記憶する記憶手段と、前記画面情報及び前記画面内に開かれているウインドウの端点の座標情報を含むデータを前記サーバ装置から受信するクライアント装置側受信手段と、前記クライアント装置側受信手段によって受信した画面情報を表示する表示手段と、前記カーソルの移動操作を含む入力操作を実行する入力手段と、前記カーソルの位置を検出するカーソル位置検出手段と、前記カーソル位置検出手段によって検出した前記カーソルの位置が前記ウインドウの端点に達したか否かを検出する検出手段と、前記検出手段によって前記カーソルの位置がウインドウの端点に達したことを検出した場合に、前記コード変換テーブルによって前記カーソルの移動を示すコードを前記スクロールの指示を示すコードに変換するコード変換手段と、前記コード変換手段によって変換したコードを前記入力手段によって実行する入力操作のコードとして前記サーバ装置に送信するクライアント装置側送信手段とを備えたことを特微とする。
【００１４】
また、本発明の一態様によれば、本発明のサーバベースコンピューティングシステムは、請求項１に記載のクライアント装置とサーバ装置とを備えることを特徴とするサーバベースコンピューティングシステムであって、前記サーバ装置が、前記クライアント装置から送信された入力操作のコードを受信するサーバ側受信手段と、前記サーバ側受信手段によって受信した入力操作のコードに従った処理を実行する実行手段と、前記実行手段によって実行した結果の画面情報及び前記画面内に開かれているウインドウの端点の座標情報を含むデータを前記クライアント装置に送信するサーバ装置側送信手段とを備えたことを特徴する。
【００１５】
また、本発明の一態様によれば、本発明のプログラムは、ネットワークを介してサーバ装置に対してサービス要求を行ない、前記サービス要求に対応する画面情報を前記サーバ装置から取得するクライアント装置のコンピュータを、画面上に表示されるカーソルの移動を示すコードと前記画面のスクロールの指示を示すコードとを対応付けて格納したコード変換テーブルを記憶する記憶手段、前記画面情報及び前記画面内に開かれているウインドウの端点の座標情報を含むデータを前記サーバ装置から受信するクライアント装置側受信手段、前記クライアント装置側受信手段によって受信した画面情報を表示する表示手段、前記カーソルの移動操作を含む入力操作を実行する入力手段、前記カーソルの位置を検出するカーソル位置検出手段、前記カーソル位置検出手段によって検出した前記カーソルの位置が前記ウインドウの端点に達したか否かを検出する検出手段、前記検出手段によって前記カーソルの位置がウインドウの端点に達したことを検出した場合に、前記コード変換テーブルによって前記カーソルの移動を示すコードを前記スクロールの指示を示すコードに変換するコード変換手段、前記コード変換手段によって変換したコードを前記入力手段によって実行する入力操作のコードとして前記サーバ装置に送信するクライアント装置側送信手段として機能させるためのプログラムである。
【発明の効果】
【００１６】
本発明によれば、カーソルがアプリケーションウインドウの端部まで移動してきた場合に、それまでのマウス装置の操作と同じ操作を続けることで、アプリケーションウインドウをスクロールさせることができる。そのため、アプリケーションウインドウをスクロールさせるために、スクロールバーまでカーソルを移動させるためにマウス装置を操作したり、別のキーを操作したりというような手間を省くことができる。
【００１７】
すなわち、本発明によれば、スクロールバー内にカーソルを移動させる操作を行なうことなく、移動キーの操作だけでスクロール動作を行なうことが可能となる。
【発明を実施するための最良の形態】
【００１８】
まず、本発明の実施の形態について概略を説明する。
サーバベースコンピューティングシステムにおいて、サーバ装置は、アプリケーションが起動してウインドウが作成された場合、又はそのウインドウのサイズが変更された場合等に、ウインドウの位置及びサイズをクライアント装置に通知する。そして、使用者がカーソルを移動させる操作を行なうことにより、カーソルがアプリケーションのウインドウの端部に位置していた場合、クライアント装置は、サーバ装置に対してカーソルの移動を要求する代わりにアプリケーションのスクロールを要求する。
【００１９】
あるいは、サーバベースコンピューティングシステムにおいて、サーバ装置は、サーバ装置で動作しているアプリケーションのウインドウの位置及びサイズをクライアント装置に通知する。そして、カーソルの位置がアプリケーションのウインドウの上下左右いずれかの端部まで来た場合に、クライアント装置は、それ以上カーソルを移動させず、代わりにアプリケーションがスクロールする要求を送信する。これにより、カーソルを移動させる操作とアプリケーションでのスクロールの操作が連動される。
【００２０】
以下、本発明の実施の形態について図面を参照しながら説明する。
図１は、サーバベースコンピューティングシステムの構成を示す図である。
図１に示すとおり、本サーバベースコンピューティングシステムは、クライアント装置１０からは、キーボードやマウスなどの入力装置からの入力情報をサーバ装置２０へ送り、その入力情報に基づいてサーバ装置２０が処理を実行し、更新された画面情報（座標、大きさと画像）をクライアント装置１０へ送るというものである。クライアント装置１０は、その画面情報を表示装置に反映させる。
【００２１】
本実施の形態では、サーバ装置２０側で保持する仮想画面としてはある程度大きなものを想定している。それに対し、クライアント装置１０の画面サイズが小さく、スクロール機能を用いて、全体を表示できるようにしてある。
【００２２】
図２は、サーバベースコンピューティングシステムの概要を説明するための図である。
図２に示す通り、クライアント装置１０とサーバ装置２０は、ネットワーク（通信網）を介して互いに接続され、サーバベースコンピューティングシステムを形成している。クライアント装置１０が無線通信を行なう場合には、中継装置３０およびネットワークを介してサーバ装置２０と通信を行なう。
【００２３】
図３は、クライアント装置１０のハードウェア構成の概略を示す図である。
図３において、クライアント装置１０は、ＣＰＵ（中央処理装置：Central Processing Unit）３０２、各種のデータや信号等を入力するための入力装置３０３、画像やその他の情報を表示するための表示装置３０４、クライアント装置１０において実行する処理を実行するプログラムの他、クライアント装置１０の各機能を制御し実行するための制御プログラムが収納されたＲＯＭ３０５やＲＡＭ３０６、表示装置３０４に表示するための画像を一時的に格納するＶＲＡＭ３０７、無線ＬＡＮや携帯電話網等のネットワークに接続するための通信Ｉ／Ｆ３０８がバス３０１に接続されて構成され、ＣＰＵ３０２がこれらの各部を制御している。
【００２４】
図４は、サーバ装置２０のハードウェア構成の概略を示す図である。
図４において、サーバ装置２０は、ＣＰＵ２０２、各種のデータや信号等を入力するための入力装置２０３、画像やその他の情報を表示するための表示装置２０４、サーバ装置２０において実行する処理を実行するプログラムの他、サーバ装置２０の各機能を制御し実行するための制御プログラムが収納されたＲＯＭ２０５やＲＡＭ２０６、表示装置２０４に表示するための画像を一時的に格納するＶＲＡＭ２０７、ＬＡＮ等のネットワークに接続するための通信Ｉ／Ｆ２０８がバス２０１に接続されて構成され、ＣＰＵ２０２がこれらの各部を制御している。
【００２５】
次に、本発明を更に具体的に説明する。
本発明が適用されるクライアント装置１０は、例えば携帯電話のように十分な入力手段がない場合を想定している。携帯電話では、カーソルの移動を上下左右キー等の別のキーで代用することがありえる。本発明は、このような携帯電話において、例えば下キーを押して画面の一番下までカーソルを移動させた後に、さらに下キーを押した場合に、アプリケーションを下スクロールさせるキーをサーバ装置２０に送る。これにより、同じキー操作を続けることでカーソル移動に続いて、そのままアプリケーションのスクロールが可能になる。
【００２６】
すなわち、クライアント装置１０は、下キーが押されたことを検知したら、カーソル表示を下にずらし、その位置をサーバ装置２０に通知する。しかし、すでにカーソルの位置が画面の一番下だったら、カーソルの位置はそのままで、アプリケーションを下方向にスクロールさせるためのキーをサーバ装置に送信する。
【００２７】
これにより、従来はアプリケーションのスクロールバーの位置にカーソルを移動させてからでないと、アプリケーションのスクロールをさせることができなかった、もしくは、アプリケーションのスクロール用のキーを新たに割当てる必要があったという問題を解決することができる。すなわち、カーソルの移動をし続けるような感覚で、アプリケーションのスクロールをすることが可能になり、わざわざアプリケーションをスクロールさせるという手間を省くことができる。また、アプリケーションのスクロール専用のキーを割当てる必要がなくなる。
【００２８】
次に、本発明を適用したサーバベースコンピューティングシステムの動作例、すなわちサーバベースコンピューティングシステムを構成するサーバ装置２０およびクライアント装置１０の動作例を説明する。ここで、サーバ装置２０で動作しているのは通常のパソコンを用いて操作するウインドウシステムと同等のものである。一方、クライアント装置１０の入力装置３０３は、通常のパソコン等に比べ、マウス装置が無くキーの数が少ないという制約があるもの、例えば携帯電話を想定している。
【００２９】
図５は、クライアント装置１０としての携帯電話の入力装置３０３の例を示す図である。
図５において、携帯電話であるクライアント装置１０は、カーソル移動させるための上キー３０３１、下キー３０３２、左キー３０３３及び右キー３０３４を有している。これらの上下左右の各キー３０３１、３０３２、３０３３又は３０３４が押されると、クライアント装置１０は、それぞれの方向（上下左右方向）にカーソルを移動するという情報をサーバ装置２０に送信する。
【００３０】
また、クライアント装置１０は、使用者が設定可能な機能として、ウインドウロックモードを有している。このウインドウロックモードのオン又はオフは使用者が自由に切り替えられる。
【００３１】
図６は、サーバ装置２０が管理している仮想画面２０００とクライアント装置１０に表示される表示画面１０００の関係を示す図である。
図６において、座標の単位は画素（Pixel）であり、左上を原点（０，０）とする。仮想画面２０００の幅はＷｖ（画素）、高さがＨｖ（画素）であり、クライアント装置の表示画面１０００の幅がＷｔ（画素）、高さがＨｔ（画素）である。また、フォーカスされているアプリケーションウインドウ（アプリケーションWindow）の左上の座標が（Ｘａ，Ｙａ）で、縦スクロールバー１００２の幅を除いたアプリケーションウインドウの幅がＷａ（画素）、横スクロールバー１００３の幅を除いたアプリケーションウインドウの高さがＨａ（画素）である。ここで、カーソル１００１の位置は、(Ｘｐ，Ｙｐ)で示すものとする。
【００３２】
図７は、サーバ装置２０とクライアント装置１０との間で実行されるシーケンスを示す図である。
なお、サーバ装置２０で稼動しているサーバプログラムは、フォーカスのあるアプリケーションウインドウの位置情報としての座標（Ｘ，Ｙ）とアプリケーションウインドウのサイズ情報（幅，高さ）を取得することが可能である。
【００３３】
まず、クライアント装置１０からアプリケーションを起動するための操作に関する情報を受信したサーバ装置２０は、ステップＳ７０１において、その情報に基づいてアプリケーションを起動し、ステップＳ７０２において、アプリケーションウインドウの位置情報（座標（Ｘ，Ｙ））を作成し、サイズ情報を示す識別子とともにクライアント装置１０へ送信する。なお、アプリケーションウインドウのサイズが変更された場合も新しくアプリケーションが起動された時と同様、サイズ情報を示す識別子と位置情報とをクライアント装置１０に送信する。
【００３４】
クライアント装置１０は、サーバ装置２０からのデータを受信待機している。クライアント装置１０は、データを受信すると、受信したサイズ情報を示す識別子をチェックし、異なっているならば通常の処理となる。他方、サイズ情報を示す識別子がセットされていた場合、ステップＳ７０３において、位置情報（座標）を変数Ｘａ，Ｙａに代入し、サイズ（幅，高さ）を変数Ｗａ，Ｈａに代入する。
【００３５】
次に、クライアント装置１０は、ステップＳ７０５において入力された操作であるカーソル１００１の移動を入力操作情報としてサーバ装置２０へ送信する。ここで、カーソル１００１の移動には、図５に示した上下左右の各キー３０３１、３０３２、３０３３又は３０３４を用いる。これら上下左右の各キー３０３１、３０３２、３０３３又は３０３４の何れかが押されると、クライアント装置１０は、使用者が設定可能な「ウインドウロックモード」の状態を調べる。ここで、ウインドウロックモードが「オフ」の場合は通常の処理を実行する。他方、ウインドウロックモードが「オン」の場合は、現在のカーソル１００１の座標（Ｘｐ，Ｙｐ）を取得する。
【００３６】
次に、例えば下キー３０３２が操作されることにより、カーソル１００１のＹ座標Ｙｐがアプリケーションウインドウの表示画面１０００の一番下の座標（Ｙａ＋Ｈａ）と一致した場合、その座標がアプリケーションウインドウの表示画面１０００の下限（端部）であると判断する。そして、クライアント装置１０は、アプリケーションウインドウの表示画面１０００を下方にスクロールさせるため、図８に示したようなコード変換テーブルを参照して「下キー」に対応する「下スクロール」のコード（マウス装置の下ホイールコード）をサーバ装置２０に送信する。なお、「上キー」、「左キー」、「右キー」の場合も同様の処理となる。
【００３７】
ここで、図８を説明する。
図８は、カーソルの移動を示すコードとスクロールの指示を示すコードとを対応付けて格納したコード変換テーブルの例を示す図である。
【００３８】
上述したように、ウインドウロックモードがオンの状態において、カーソル１００１がアプリケーションウインドウの表示画面１０００の端部（上下左右）に達した場合には、コードを変換する。その変換の組み合わせは、図８に示したように、カーソル１００１が上端に達した場合に入力キーが上キー３０３１であれば、変換されるべき変換キーは上スクロールを実行するためのキーであり、カーソル１００１が下端に達した場合に入力キーが下キー３０３２であれば、変換されるべき変換キーは下スクロールを実行するためのキーであり、カーソル１００１が左端に達した場合に入力キーが左キー３０３３であれば、変換されるべき変換キーは左スクロールを実行するためのキーであり、カーソル１００１が右端に達した場合に入力キーが右キー３０３４であれば、変換されるべき変換キーは右スクロールを実行するためのキーである。
【００３９】
図７の説明に戻る。
上述したようにクライアント装置１０は、通常の場合は通常の入力操作情報を、カーソル１００１アプリケーションウインドウの表示画面１０００の端部（上下左右）に達した後にも操作され続けた場合には、変換されたコードを含む入力操作情報を、サーバ装置２０へ送信する。
【００４０】
そして、入力操作情報を受信したサーバ装置２０は、ステップＳ７０６において、受信した入力操作情報を反映させた画面データを作成し、画面更新情報としてクライアント装置１０へ送信する。
【００４１】
すると、クライアント装置１０は、ステップＳ７０７において、この画面更新情報を受信して表示する。
次に、上述してきた各動作をフローチャートを用いて説明する。
【００４２】
図９は、クライアント装置１０において実行されるクライアント処理の流れを示すフローチャートである。
まず、ステップＳ９０１において、クライアント装置１０は、サーバ装置２０への接続要求信号を送信し、ステップＳ９０２において、サーバ装置２０からの接続許可信号の受信待ちを行なう。
【００４３】
ステップＳ９０２で接続要求が拒否されたり所定時間が経過してしまったり（タイムアウト）した場合（ステップＳ９０２：拒否ｏｒタイムアウト）は、本クライアント処理を終了し、他方、ステップＳ９０２で接続要求が許可された場合（ステップＳ９０２：許可）は、ステップＳ９０３において、サブルーチン「入力イベント処理」を実行する。
【００４４】
図１０は、サブルーチン「入力イベント処理」の流れを示すフローチャートである。
まず、ステップＳ１００１において、キー入力があったか否かを判断し、キー入力がまだの場合（ステップＳ１００１：Ｎｏ）は、キー入力があるまで待機し、キー入力があったと判断された場合（ステップＳ１００１：Ｙｅｓ）は、ステップＳ１００２において、その入力されたキーがカーソル（ポインタ）１００１を移動させるためのキー（上下左右キー３０３１、３０３２、３０３３又は３０３４）であるか否かを判断する。
【００４５】
そして、カーソル１００１を移動させるためのキーであると判断された場合（ステップＳ１００２：Ｙｅｓ）は、ステップＳ１００３において、ウインドウロックモードがオンであるか否かを判断し、オンであると判断された場合（ステップＳ１００３：Ｙｅｓ）は、ステップＳ１００４において、現在のカーソル１００１の座標（Ｘｐ，Ｙｐ）を取得する。
【００４６】
次に、ステップＳ１００５において、ステップＳ１００４で取得したカーソル１００１の座標（Ｘｐ，Ｙｐ）がアプリケーションウインドウの表示画面１０００の端部（上下左右端）に達したか否かを判断する。
【００４７】
端部に達したと判断された場合（ステップＳ１００５：Ｙｅｓ）は、ステップＳ１００６において、図８を用いて説明したコード変換テーブルを用いてコードを変換する。
そして、ステップＳ１００７において、変換されたコードをサーバ装置２０へ送信して本サブルーチン「入力イベント処理」を終了する。
【００４８】
また、カーソル１００１を移動させるためのキーでないと判断された場合（ステップＳ１００２：Ｎｏ）、ウインドウロックモードがオフであると判断された場合（ステップＳ１００３：Ｎｏ）、又は、カーソル１００１の座標（Ｘｐ，Ｙｐ）がアプリケーションウインドウの表示画面１０００の端部（上下左右端）に達していないと判断された場合（ステップＳ１００５：Ｎｏ）は、ステップＳ１００７において、入力されたコードをサーバ装置２０へ送信して本サブルーチン「入力イベント処理」を終了する。
【００４９】
図９の説明に戻る。
クライアント装置１０は、ステップＳ９０４において、サーバ装置２０から受信したデータが接続終了要求の信号であるのか、後述する図１１のステップＳ１１１０で送信された表示用データであるのかを判断する。接続終了要求の信号であると判断された場合（ステップＳ９０４：接続終了要求）は、本クライアント処理を終了する。他方、表示用データであると判断された場合（ステップＳ９０４：表示用データ）は、ステップＳ９０５において、表示用バッファに受信した描画情報（表示用データ）を反映し、ステップＳ９０６において、反映した結果を画面に表示する。そして、ステップＳ９０４以降を繰り返す。
【００５０】
図１１は、サーバ装置２０において実行されるサーバ処理の流れを示すフローチャートである。
ステップＳ１１０１において、クアイアント装置１０からの接続要求を待ち、ステップＳ１１０２において、クライアント装置１０からの接続要求を許可するか否かを判断する。
【００５１】
接続要求を許可しないと判断した場合（ステップＳ１１０２：拒否）は、ステップＳ１１０３において、接続要求をしてきたクライアント装置１０に対して接続を拒否する通知を送信し、ステップＳ１１０１に戻る。
【００５２】
他方、接続要求を許可すると判断した場合（ステップＳ１１０２：許可）は、ステップＳ１１０４において、接続したクライアント装置１０から送信されてくるデータの受信待ちを行ない、ステップＳ１１０５において、クライアント装置１０から送信されてくるデータが切断要求であるか否かを判断する。
【００５３】
クライアント装置１０から送信されてくるデータが切断要求であると判断された場合（ステップＳ１１０５：Ｙ）は、ステップＳ１１０６において、切断処理を実行して、ステップＳ１１０１に戻る。
【００５４】
他方、クライアント装置１０から送信されてくるデータが切断要求でないと判断された場合（ステップＳ１１０５：Ｎ）は、ステップＳ１１０７において、クライアント装置１０から送信されてくるデータ（入力情報）をアプリケーションへ送付する。
【００５５】
次に、ステップＳ１１０８において、その入力情報に応じた処理を実行し、ステップＳ１１０９において、その処理により生じた画面表示の更新情報を取得する。
そして、ステップＳ１１１０において、その更新された画面表示の情報をクライアント装置１０へ送信し、ステップＳ１１０４以降を繰り返す。
【００５６】
このように、カーソル１００１がアプリケーションウインドウの表示画面１０００の端部まで移動してきた場合に、それまでのマウス装置の操作と同じ操作を続けることで、アプリケーションウインドウの表示画面１０００をスクロールさせることができる。そのため、アプリケーションウインドウの表示画面１０００をスクロールさせるために、スクロールバー１００２又は１００３までカーソル１００１を移動させるためにマウス装置を操作したり、別のキーを操作したりというような手間を省くことができる。
【００５７】
また、アプリケーションウインドウの表示画面１０００の位置とサイズを、サーバ装置２０からクライアント装置１０に通知することにより、どんなアプリケーションウインドウにも対応できるという効果がある。
【００５８】
また、ウインドウロックモードという機能を使用者に設定させることにより、マウス装置の操作をアプリケーションに限定したいのか、画面全体を使用したいのかを区別することができる。
【００５９】
また、クライアント装置１０側でカーソル１００１の移動かスクロールの要求なのかを判別し、それに対応する要求を行っているため、サーバ装置２０で稼動するアプリケーションは既存のものを使用することができる。
【００６０】
なお、上述の実施の形態では、アプリケーションウインドウの表示画面１０００の位置と大きさをサーバ装置２０からクライアント装置１０へ送信することとしたが、あらかじめ決められた位置に起動したり、最大化状態で使用したりするなど、クライアント装置１０がウインドウの場所を把握できるものであれば、何でもよい。
【００６１】
また、カーソル１００１を移動させるための操作に、上下左右のソフトキーを使用するものとしたが、キーは何でも良いし、指紋認証装置をカーソル移動のキーであるとしても良い。
【００６２】
また、アプリケーションウインドウの表示画面１０００の位置を通知するのに、左上座標、幅及び高さを、サーバ装置２０から通知させるとしたが、左上座標と右下座標でもよく、アプリケーションウインドウの表示画面１０００の場所が特定できるものであれば何でも良い。
【００６３】
また、アプリケーションを下にスクロールさせるのに、マウス装置の下ホイールコードを用いたが、アプリケーションを下にスクロールさせる要求を示すものであれば、何でも良い。
【００６４】
以上、本発明の実施の形態を、図面を参照しながら説明してきたが、上述してきた本発明の実施の形態は、クライアント装置の一機能としてハードウェアまたはＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）ボードやＣＰＵボードでのファームウェアもしくはソフトウェアにより実現することができる。
【００６５】
また、本発明が適用されるクライアント装置は、その機能が実行されるのであれば、上述の実施の形態に限定されることなく、単体の装置であっても、複数の装置からなるシステムあるいは統合装置であっても、ＬＡＮ、ＷＡＮ等のネットワークを介して処理が行なわれるシステムであってもよいことは言うまでもない。
【００６６】
また、バスに接続されたＣＰＵ、ＲＯＭやＲＡＭのメモリ、入力装置、出力装置、外部記録装置、媒体駆動装置、ネットワーク接続装置で構成されるシステムでも実現できる。すなわち、前述してきた実施の形態のシステムを実現するソフトェアのプログラムを記録したＲＯＭやＲＡＭのメモリ、外部記録装置、可搬記録媒体を、クライアント装置に供給し、そのクライアント装置のコンピュータがプログラムを読み出し実行することによっても、達成されることは言うまでもない。
【００６７】
この場合、可搬記録媒体等から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した可搬記録媒体等は本発明を構成することになる。
【００６８】
プログラムを供給するための可搬記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、磁気テープ、不揮発性のメモリーカード、ＲＯＭカード、電子メールやパソコン通信等のネットワーク接続装置（言い換えれば、通信回線）を介して記録した種々の記録媒体などを用いることができる。
【００６９】
また、コンピュータ（情報処理装置）がメモリ上に読み出したプログラムを実行することによって、前述した実施の形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施の形態の機能が実現される。
【００７０】
さらに、可搬型記録媒体から読み出されたプログラムやプログラム（データ）提供者から提供されたプログラム（データ）が、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施の形態の機能が実現され得る。
【００７１】
すなわち、本発明は、以上に述べた実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の構成または形状を取ることができる。
【図面の簡単な説明】
【００７２】
【図１】サーバベースコンピューティングシステムの構成を示す図である。
【図２】サーバベースコンピューティングシステムの概要を説明するための図である。
【図３】クライアント装置１０のハードウェア構成の概略を示す図である。
【図４】サーバ装置２０のハードウェア構成の概略を示す図である。
【図５】クライアント装置１０としての携帯電話の入力装置３０３の例を示す図である。
【図６】サーバ装置２０が管理している仮想画面２０００とクライアント装置１０に表示される表示画面１０００の関係を示す図である。
【図７】サーバ装置２０とクライアント装置１０との間で実行されるシーケンスを示す図である。
【図８】カーソルの移動を示すコードとスクロールの指示を示すコードとを対応付けて格納したコード変換テーブルの例を示す図である。
【図９】クライアント装置１０において実行されるクライアント処理の流れを示すフローチャートである。
【図１０】サブルーチン「入力イベント処理」の流れを示すフローチャートである。
【図１１】サーバ装置２０において実行されるサーバ処理の流れを示すフローチャートである。
【符号の説明】
【００７３】
１０      クライアント装置
２０      サーバ装置
３０      中継装置
２０１    バス
２０２    ＣＰＵ
２０３    入力装置
２０４    表示装置
２０５    ＲＯＭ
２０６    ＲＡＭ
２０７    ＶＲＡＭ
２０８    通信Ｉ／Ｆ
３０１    バス
３０２    ＣＰＵ
３０３    入力装置
３０４    表示装置
３０５    ＲＯＭ
３０６    ＲＡＭ
３０７    ＶＲＡＭ
３０８    通信Ｉ／Ｆ
１０００  表示画面
１００１  カーソル
１００２  縦スクロールバー
１００３  横スクロールバー
２０００  仮想画面
３０３１  上キー
３０３２  下キー
３０３３  左キー
３０３４  右キー
【図１】
2009003296.tif 000003
【図２】
2009003296.tif 000004
【図３】
2009003296.tif 000005
【図４】
2009003296.tif 000006
【図５】
2009003296.tif 000007
【図６】
2009003296.tif 000008
【図７】
2009003296.tif 000009
【図８】
2009003296.tif 000010
【図９】
2009003296.tif 000011
【図１０】
2009003296.tif 000012
【図１１】
2009003296.tif 000013