(57)【特許請求の範囲】
【請求項１】
表示画面の画面サイズにより大きな表示サイズの表示データを記憶する表示データ記憶手段と、
前記表示データ記憶手段に記憶される表示データから前記表示画面に表示される画面表示データを読み出す画面読出領域を第１方向に移動させることで、前記表示画面に表示される画面表示データの内容を前記第１方向にスクロールする画面スクロール手段と、
前記画面スクロール手段での前記第１方向へのスクロールの際に、前記画面読出領域の位置が前記表示データ記憶手段の前記第１方向の第１境界位置に達した場合には、その第１方向側で所定サイズ分の追加データを取得し、その追加データを前記第１境界位置側から挿入することで前記表示データ記憶手段の表示データ内容を更新する更新手段と、
を具備し、
前記表示データ記憶手段における前記第１境界位置と前記第２境界位置との間隔は、前記表示画面の画面サイズと前記所定サイズとの和よりも大きく設定される、
ことを特徴とするデータ表示装置。
【請求項２】
前記第１方向は、前記表示画面に対する縦上方向あるいは縦下方向であり、
前記画面スクロールは、前記表示画面に表示される画面表示データの内容を縦上方向あるいは縦下方向にスクロールし、
前記更新手段は、前記縦上方向あるいは縦下方向へのスクロールの際に、前記画面読出領域の位置が前記表示データ記憶手段の前記縦上方向の上境界位置あるいは縦下方向の下境界位置に達した場合には、前記縦上方向側あるいは縦下方向側で所定サイズ分の追加データを取得し、その追加データを前記上境界位置側あるいは下境界位置側から挿入することで前記表示データ記憶手段の表示データ内容を更新し、
前記表示データ記憶手段における前記上境界位置と前記下境界位置との間隔は、前記表示画面の縦方向の画面サイズと縦方向の前記所定サイズとの和よりも大きく設定される、
ことを特徴とする請求項１に記載のデータ表示装置。
【請求項３】
前記第１方向は、前記表示画面に対する横左方向あるいは横右方向であり、
前記画面スクロールは、前記表示画面に表示される画面表示データの内容を横左方向あるいは横右方向にスクロールし、
前記更新手段は、前記横左方向あるいは横右方向へのスクロールの際に、前記画面読出領域の位置が前記表示データ記憶手段の前記横左方向の左境界位置あるいは横右方向の右境界位置に達した場合には、前記横左方向側あるいは横右方向側で所定サイズ分の追加データを取得し、その追加データを前記左境界位置側あるいは右境界位置側から挿入することで前記表示データ記憶手段の表示データ内容を更新し、
前記表示データ記憶手段における前記左境界位置と前記右境界位置との間隔は、前記表示画面の横方向の画面サイズと横方向の前記所定サイズとの和よりも大きく設定される、
ことを特徴とする請求項１又は２に記載のデータ表示装置。
【請求項４】
表示画面の画面サイズにより大きな表示サイズの表示データを記憶する表示データ記憶手段を有するデータ表示装置のコンピュータを制御するためのプログラムであって、
前記コンピュータを、
前記表示データ記憶手段に記憶される表示データから前記表示画面に表示される画面表示データを読み出す画面読出領域を第１方向に移動させることで、前記表示画面に表示される画面表示データの内容を前記第１方向にスクロールする画面スクロール手段、
前記画面スクロール手段での前記第１方向へのスクロールの際に、前記画面読出領域の位置が前記表示データ記憶手段の前記第１方向の第１境界位置に達した場合には、その第１方向側で所定サイズ分の追加データを取得し、その追加データを前記第１境界位置側から挿入することで前記表示データ記憶手段の表示データ内容を更新する更新手段、
として機能させ、
前記表示データ記憶手段における前記上境界位置と前記下境界位置との間隔は、前記表示画面の縦方向の画面サイズと縦方向の前記所定サイズとの和よりも大きく設定される、
ようにしたことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表示データを表示するデータ表示装置およびプログラムに関する。
【背景技術】
【０００２】
従来のサーバ・クライアント・システムにおいて、例えばクライアント装置からのリモート操作によりサーバ装置側で所望のアプリケーションプログラムを起動実行させるシン・クライアント・システム(Thin client system)がある。このシン・クライアント・システムでは、クライアント装置の操作入力に応じてサーバ装置側で処理更新される表示用の描画データが該サーバ装置からその描画更新の都度クライアント装置へと送信転送されて表示される。これによりクライアント装置は、表示や入力など最低限の機能のみを持てば良く、アプリケーションなどの資源はサーバ装置で一元管理するものである。
【０００３】
このようにシン・クライアント・システムは、サーバ装置上でアプリケーションプログラムが実行されるので、クライアント装置の性能が低い場合にも高機能なコンピューティング環境を実現可能である。このため携帯電話など、PC（Personal Computer）と比較して性能が低い端末をクライアント装置として利用することで、モバイルにおける高度なコンピューティング環境の実現が期待される。
【０００４】
そしてこのシン・クライアント・システムの一形態として、例えば携帯電話からサーバ装置にアクセスし、当該サーバ装置のＷｅｂブラウザにより開かせたＷｅｂコンテンツを当該携帯電話に転送させて表示させる場合に、該携帯電話の表示画面サイズは小さいため、サーバ装置において、前記携帯電話からの表示指示位置に応じたＷｅｂコンテンツの画面領域を小さな端末表示画面サイズに合わせて縮小処理し転送表示させることが考えられている（例えば、特許文献１参照。）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−３４８３８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
携帯電話網のデータ伝送遅延時間は、例えばLAN（Local Area Network）と比較して数百倍程度大きいことが知られており、上述したように、シン・クライアント・システムを携帯電話網で利用する場合には、このネットワークの伝送遅延時間がネックとなり、操作レスポンスが良くないという問題がある。
【０００７】
具体的には、サーバ装置から携帯電話の表示画面に合わせて転送表示されているＷｅｂコンテンツの一部分の画面を、携帯電話のユーザ操作に応じてスクロール表示させるような場合に、そのスクロール操作に伴う画面移動要求がサーバ装置へ送信される都度、その移動範囲に応じた新たな画面領域がサーバ装置１０から受信され表示されることになるが、当該スクロール操作の都度、新たな画面領域を受信したのでは、その度に前記伝送遅延時間からレスポンスが悪く待ち時間が生じてしまう問題がある。
【０００８】
本発明は、操作レスポンスを良くスクロール表示することを目的とする。
【課題を解決するための手段】
【０００９】
請求項１記載の発明は、表示画面の画面サイズにより大きな表示サイズの表示データを記憶する表示データ記憶手段と、前記表示データ記憶手段に記憶される表示データから前記表示画面に表示される画面表示データを読み出す画面読出領域を第１方向に移動させることで、前記表示画面に表示される画面表示データの内容を前記第１方向にスクロールする画面スクロール手段と、前記画面スクロール手段での前記第１方向へのスクロールの際に、前記画面読出領域の位置が前記表示データ記憶手段の前記第１方向の第１境界位置に達した場合には、その第１方向側で所定サイズ分の追加データを取得し、その追加データを前記第１境界位置側から挿入することで前記表示データ記憶手段の表示データ内容を更新する更新手段と、を具備し、前記表示データ記憶手段における前記第１境界位置と前記第２境界位置との間隔は、前記表示画面の画面サイズと前記所定サイズとの和よりも大きく設定される、ことを特徴とする。
【発明の効果】
【００１０】
本発明によれば、操作レスポンスを良くスクロール表示することが可能となる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態に係るシン・クライアント・システムの全体構成を示す図。
【図２】前記シン・クライアント・システムにおけるサーバ装置１０の回路構成を示すブロック図。
【図３】前記シン・クライアント・システムにおけるクライアント装置２０の回路構成を示すブロック図。
【図４】前記シン・クライアント・システムのサーバ装置１０により開かれた描画コンテンツ１０Ａとクライアント装置２０へ転送される仮想スクリーン領域１０Ｂおよび当該クライアント装置２０で実際に表示される画面表示領域２６Ａとの関係を下方向への画面スクロールの各状態に応じて示す図。
【図５】前記クライアント装置２０のＲＡＭ２４に記憶される画面スクロール管理データ２４ａを示す図。
【図６】前記シン・クライアント・システムのクライアント装置２０によるクライアント処理（その１）を示すフローチャート。
【図７】前記シン・クライアント・システムのクライアント装置２０によるクライアント処理（その２）を示すフローチャート。
【図８】前記シン・クライアント・システムのクライアント装置２０によるクライアント処理（その３）を示すフローチャート。
【図９】前記シン・クライアント・システムのサーバ装置１０によるサーバ処理を示すフローチャート。
【図１０】前記シン・クライアント・システムのサーバ装置１０により開かれた描画コンテンツ１０Ａとクライアント装置２０へ転送される仮想スクリーン領域１０Ｂおよび当該クライアント装置２０で実際に表示される画面表示領域２６Ａとの関係を上下方向および左右方向のスクロール制御に必要な各管理データと共に示す図。
【発明を実施するための形態】
【００１２】
以下図面により本発明の実施の形態について説明する。
【００１３】
図１は、本発明の実施形態に係るシン・クライアント・システムの全体構成を示す図である。
【００１４】
このシン・クライアント・システムは、ＬＡＮ(Local Area Network)やＷＡＮ(Wide Area Network)、あるいは携帯電話網からなるネットワークＮＥＴ上に接続されたサーバ装置１０および複数のクライアント装置２０，…を備える。
【００１５】
サーバ装置１０は、文書作成処理プログラム，表計算処理プログラム，プレゼン資料作成プログラム，メール処理プログラム，インターネット接続処理プログラム、Ｗｅｂ表示プログラムなど、複数のアプリケーションプログラムを有し、当該サーバ装置１０に接続されたクライアント装置２０，…からの操作入力（入力イベント）信号に応じて起動しその処理を実行する。
【００１６】
このサーバ装置１０において、クライアント装置２０，…からの操作入力信号に応じたアプリケーションプログラムの実行に伴い生成された表示出力用の描画データは、圧縮処理されてアクセス元のクライアント装置２０，…へ送信（転送）される。
【００１７】
そして、クライアント装置２０，…では、前記サーバ装置１０から転送された描画データがその圧縮を解凍され、表示部に表示される。
【００１８】
つまり、このシン・クライアント・システムにおける各クライアント装置２０，…は、何れもキーボード及びマウスなどのユーザ操作に応じた入力機能とＬＣＤ表示部及びプリンタなどへの出力機能を主要な機能として有し、少なくとも前記サーバ装置１０が有している各種のアプリケーション機能やデータファイルの管理機能を一切持っていない。
【００１９】
そして、クライアント装置２０，…からの操作入力（入力イベント）信号に応じてサーバ装置１０にて起動実行される各種の処理に伴い生成されたデータファイルは、基本的には、当該サーバ装置１０内あるいは該サーバ装置１０にて接続管理される磁気ディスクなどの記憶装置にユーザアカウント毎あるいは共有ファイルとして記憶され保存される。
【００２０】
図２は、前記シン・クライアント・システムにおけるサーバ装置１０の回路構成を示すブロック図である。
【００２１】
サーバ装置１０は、コンピュータとしてのＣＰＵ１１を備え、このＣＰＵ１１には、バス１２を介してＲＯＭ１３、ＲＡＭ１４、外部記憶装置１５、表示装置１６が接続されると共に、キーボード，マウスなどのキー入力装置１７、クライアント装置２０との通信Ｉ／Ｆ（インターフェイス）１８が接続される。
【００２２】
ＣＰＵ１１は、ＲＯＭ１３に予め記憶されているシステムプログラムや種々のアプリケーションプログラムに従ってＲＡＭ１４を作業用メモリとし回路各部の動作を制御するもので、キー入力装置１７からのキー入力信号や通信Ｉ／Ｆ１９を介して受信されるクライアント装置２０からのユーザ操作（入力イベント）に応じた処理指令信号などに応じて前記種々のプログラムが起動・実行される。
【００２３】
このサーバ装置１０において、端末装置２０からの入力イベント信号に応じて起動・実行されるアプリケーションプログラムに従い生成された種々のデータは、例えばそのユーザＩＤに対応付けられて外部記憶装置１５に記憶され、また表示用の描画データは、ＲＡＭ１４内の表示用メモリを使用して生成されると共に、圧縮処理されて通信Ｉ／Ｆ１８からクライアント装置２０へ転送されて表示出力される。
【００２４】
図３は、前記シン・クライアント・システムにおけるクライアント装置２０の回路構成を示すブロック図である。
【００２５】
クライアント装置２０は、コンピュータとしてのＣＰＵ２１を備え、このＣＰＵ２１には、バス２２を介してＲＯＭ２３、ＲＡＭ２４が接続されると共に、キーボード，マウスなどの入力装置２５、表示装置２６、前記サーバ装置１０との通信Ｉ／Ｆ（インターフェイス）２７が接続される。
【００２６】
ＣＰＵ２１は、ＲＯＭ２３に予め記憶されているシステムプログラムに従ってＲＡＭ２４を作業用メモリとし回路各部の動作を制御するもので、入力装置２５からの入力信号や通信Ｉ／Ｆ２７を介して受信されるサーバ装置１０からのアプリケーション応答信号，転送描画データなどに応じて前記システムプログラムが起動され実行される。
【００２７】
このクライアント装置２０において、前記サーバ装置１０におけるアプリケーションプログラムを実行させて生成した種々のデータは、適宜、外部記憶装置１５に読み込ませて記憶させ、また生成転送された表示用の描画データは、その圧縮が解凍されてＲＡＭ２４内の表示用メモリに書き込まれ表示装置２６で表示出力される。
【００２８】
ここで、前記サーバ装置１０におけるＲＡＭ１４内の表示用メモリに生成された表示用の描画データには、例えば図４（Ａ）に示すように、当該描画データの全内容（コンテンツ）１０Ａのうち前記クライアント装置２０における表示用メモリのメモリサイズに応じた仮想スクリーン領域１０Ｂが設定され、この仮想スクリーン領域１０Ｂの描画データが読み出されてクライアント装置２０へ転送される。そして、クライアント装置２０では、前記仮想スクリーン領域１０Ｂとして転送された描画データがＲＡＭ２４内の表示用メモリに書き込まれると共に、そのうち表示装置２６の画面表示領域２６Ａに対応する範囲の描画データのみ読み出されて表示される。
【００２９】
図４は、前記シン・クライアント・システムのサーバ装置１０により開かれた描画コンテンツ１０Ａとクライアント装置２０へ転送される仮想スクリーン領域１０Ｂおよび当該クライアント装置２０で実際に表示される画面表示領域２６Ａとの関係を下方向への画面スクロールの各状態に応じて示す図である。
【００３０】
このシン・クライアント・システムでは、クライアント装置２０からのイベント入力に応じてサーバ装置１０により開かれた描画コンテンツ１０Ａを当該クライアント装置２０へ転送する場合に、クライアント装置２０における表示装置２６の画面表示領域２６Ａよりも大きな仮想スクリーン領域１０Ｂを設定してその描画データを転送する。そしてさらに、クライアント装置２０に転送された仮想スクリーン領域１０Ｂの描画データには、その上端より予め設定された幅だけ残したところの上方向スクロール時境界２０ｕと、同下端より予め設定された幅だけ残したところの下方向スクロール時境界２０ｄとを設定し、画面表示領域２６Ａの下方向へのスクロールに伴い、該画面表示領域２６Ａが下方向スクロール時境界２０ｄに到達したときに、サーバ装置１０に対して仮想スクリーン領域１０Ｂの内容を下方向へスクロールさせる要求を送信し、また同様に、画面表示領域２６Ａの上方向へのスクロールに伴い、該画面表示領域２６Ａが上方向スクロール時境界２０ｕに到達したときに、サーバ装置１０に対して仮想スクリーン領域１０Ｂの内容を上方向へスクロールさせる要求を送信する。
【００３１】
図５は、前記クライアント装置２０のＲＡＭ２４に記憶される画面スクロール管理データ２４ａを示す図である。
【００３２】
この画面スクロール管理データ２４ａとしては、表示装置２６の表示画面サイズに応じた画面表示領域２６Ａの高さＨｄ、仮想スクリーン領域１０Ｂの高さＨｖ、描画コンテンツ１０Ａの高さＨｃ、仮想スクリーン領域１０Ｂ上端からの下方向スクロール時境界２０ｄまでの幅Ｂｄおよび同上方向スクロール時境界２０ｕまでの幅Ｂｕ、１回のユーザスクロール操作に応じた画面表示領域２６Ａの移動幅（単位移動幅）Ｓｄ、サーバ装置１０に対する１回のスクロール要求に応じた仮想スクリーン領域１０Ｂのスクロール幅Ｓｓ、描画コンテンツ１０Ａ上端から仮想スクリーン領域１０Ｂ上端までのオフセット幅Ｏｃｖ、仮想スクリーン領域１０Ｂ上端から画面表示領域２６Ａ上端までのオフセット幅Ｏｖｄがそれぞれ常時記憶更新されて管理される。
【００３３】
ここで、前記仮想スクリーン領域１０Ｂの高さＨｖ、１回のユーザスクロール操作に応じた画面表示領域２６Ａの単位移動幅Ｓｄ、サーバ装置１０に対する１回のスクロール要求に応じた仮想スクリーン領域１０Ｂのスクロール幅Ｓｓ、仮想スクリーン領域１０Ｂ上端からの下方向スクロール時境界２０ｄまでの幅Ｂｄおよび同上方向スクロール時境界２０ｕまでの幅Ｂｕを、以下の条件式（式１）（式２）（式３）を満たすように設定する。
【００３４】
Ｈｖ＞Ｈｄ …（式１）
Ｓｓ≧Ｎ×Ｓｄ （但し、Ｎは２以上の整数） …（式２）
Ｂｄ−Ｂｕ＞Ｈｄ＋Ｓｓ …（式３）
前記（式１）に示すように、仮想スクリーン領域１０Ｂの高さＨｖを、画面表示領域２６Ａの高さＨｄよりも大きくすることで、先読みキャッシュの役割を果たすことができる。そして、本実施形態では、画面表示領域２６Ａのスクロールが常に仮想スクリーン領域１０Ｂの中で行われるように制御することで、サーバ装置１０との通信レスポンスに影響されない、操作レスポンスの良いスクロール表示を実現する。
【００３５】
前記（式２）に示すように、サーバ装置１０に対する１回のスクロール要求に応じた仮想スクリーン領域１０Ｂのスクロール幅Ｓｓを、１回のユーザスクロール操作に応じた画面表示領域２６Ａの単位移動幅ＳｄのＮ倍以上とすることで、連続して同一方向のスクロール操作を行う際に、その都度、サーバ装置１０に対してスクロールの要求が発生されるのを防止し、サーバ装置１０との通信頻度をＮ分の１以下に減らすことができる。なお、前記Ｎの値は２以上の整数に設定されるが、当該Ｎ値は、クライアント装置２０のメモリ使用状況やユーザによるスクロール操作の頻度に応じて自動的に可変設定してもよい。この場合Ｎ値は、メモリ容量に余裕のあるときやスクロール操作の頻度が大きいときに大きな値に、メモリ容量に余裕のないときやスクロール操作の頻度が小さいときに小さな値に設定する。
【００３６】
前記（式３）に示すように、仮想スクリーン領域１０Ｂにおける上方向スクロール時境界２０ｕと下方向スクロール時境界２０ｄとの間隔（Ｂｄ−Ｂｕ）を、画面表示領域２６Ａの高さＨｄと仮想スクリーン領域１０Ｂのスクロール幅Ｓｓとの和よりも大きくすることで、ユーザスクロール操作に伴いその操作方向が上下逆転した場合に、同操作逆転時からサーバ装置１０に対してスクロール要求を出すまで少なくともＮ回分（Ｓｓ≧Ｎ×Ｓｄ）のスクロール操作では、サーバ装置１０に対してスクロール要求を送信する必要が無く、クライアント装置２０に現存する仮想スクリーン領域１０Ｂからの描画データの読み出しだけでスクロール表示することができる。これにより、例えばユーザが描画コンテンツ１０Ａを上下に短い幅で行ったりきたりして閲覧するような操作をした場合に、クライアント装置２０とサーバ装置２０間で通信をする必要が無く、移動体通信網ＮＥＴのような伝送遅延の大きな通信網利用時においても操作レスポンス良くスクロール表示できる。
【００３７】
次に、前記構成のシン・クライアント・システムにおける表示制御動作について説明する。
【００３８】
図６は、前記シン・クライアント・システムのクライアント装置２０によるクライアント処理（その１）を示すフローチャートである。
【００３９】
図７は、前記シン・クライアント・システムのクライアント装置２０によるクライアント処理（その２）を示すフローチャートである。
【００４０】
図８は、前記シン・クライアント・システムのクライアント装置２０によるクライアント処理（その３）を示すフローチャートである。
【００４１】
クライアント装置２０からサーバ装置１０に対して所望のコンテンツの閲覧要求が送信されると、これに応答してサーバ装置１０からその描画コンテンツ１０Ａが開かれたことを示す通知が受信される（ステップＳ１）。
【００４２】
次いでサーバ装置１０から、前記開かれた描画コンテンツ１０Ａの高さＨｃおよび描画コンテンツ１０Ａ上端から仮想スクリーン領域１０Ｂ上端までのオフセット幅Ｏｃｖが受信され、画面スクロール管理データ２４ａとして記憶される（ステップＳ２，Ｓ３）。
【００４３】
ここで、コンテンツが開いたというのは、サーバ装置１０上で動作するアプリケーションがファイル等を開いた時や、同一アプリケーションにおいて今まで開いていたコンテンツとは別のコンテンツを開いたことを意味する。具体的には、ＷｅｂブラウザによりＷｅｂページを開いた時や他のＷｅｂページにジャンプした時、エディタやワープロソフト等により文書ファイルを開いた時などであり、サーバ装置１０より前記各通知を受信する。
【００４４】
なお、本実施形態における仮想スクリーン領域１０Ｂは、サーバ装置１０上で動作するアプリケーションのウィンドウ（アプリケーションプログラムがコンテンツを表示する窓）と同じサイズとする。
【００４５】
次いでクライアント装置２０では、仮想スクリーン領域１０Ｂ上端から画面表示領域２６Ａ上端までのオフセット幅Ｏｖｄが、前記画面スクロール管理データ２４ａとして記憶される（ステップＳ４）。
【００４６】
すると、クライアント装置２０では、サーバ装置１０から受信された描画データによりＲＡＭ２４内の表示メモリにおける仮想スクリーン領域１０Ｂが更新された後、当該仮想スクリーン領域１０Ｂの上端より前記オフセット幅Ｏｖｄの位置から画面表示領域２６Ａの高さＨｄ分の描画データが読み出され表示装置２６に表示される（ステップＳ５）。
【００４７】
この状態が、例えば図４（Ａ）に示すように、描画コンテンツ１０Ａを開いた時の最初の状態に相当する。
【００４８】
クライアント装置２０は、前記描画データの初期表示後、サーバ装置１０からの更新画面（描画）データの受信待機状態（ステップＳ６）、またはユーザによるスクロール操作の待機状態（ステップＳ７）となる。
【００４９】
ここで、ユーザ入力に伴い下方向へのスクロール操作が判断された場合には（ステップＳ８（Ｙｅｓ））、図４（Ｂ）に示すように、画面表示領域２６Ａが仮想スクリーン領域１０Ｂに対して単位幅Ｓｄだけ下方向に移動される。すなわち、仮想スクリーン領域１０Ｂ上端から画面表示領域２６Ａ上端までのオフセット幅Ｏｖｄが、Ｏｖd＋Ｓｄに更新され（ステップＳ１０）、この移動更新後の位置の画面表示領域２６Ａに相当する仮想スクリーン領域１０Ｂ内の描画データが読み出され表示装置２６に表示される（ステップＳ１１）。
【００５０】
なお、前記下方向へのスクロール操作が判断された場合には（ステップＳ８（Ｙｅｓ））、その都度、仮想スクリーン領域１０Ｂの高さＨｖから画面表示領域２６Ａ下端までの幅（Ｏｖｄ＋Ｈｄ）を差し引いた残りの幅が、１回のユーザスクロール操作に応じた画面表示領域２６Ａの移動幅Ｓｄ以下に達しているかが判断され（ステップＳ９）、この状態（図４（Ｆ）参照）に達していると判断された場合には（ステップＳ９（Ｙｅｓ））、当該移動幅Ｓｄ分のスクロール処理が行えないので、ステップＳ２４以降の処理に分岐する。
【００５１】
一方、前記ステップＳ１１における、下方向のスクロール操作に伴う移動幅Ｓｄ分の画面表示領域２６Ａの下スクロール表示が繰り返されることで（ステップＳ１１，Ｓ１２（Ｎｏ）→Ｓ６（Ｎｏ），Ｓ７（Ｙｅｓ），Ｓ８（Ｙｅｓ），Ｓ９（Ｎｏ），Ｓ１０，Ｓ１１）、当該画面表示領域２６Ａの下端（Ｏｖｄ＋Ｈｄ）が仮想スクリーン領域１０Ｂに設定した下方向スクロール時境界２０ｄの位置（Ｂｄ）まで到達したと判断された場合には（ステップＳ１２（Ｙｅｓ））、さらに、描画コンテンツ１０Ａの高さＨｃから仮想スクリーン領域１０Ｂの高さＨｖを差し引いた残りの幅（Ｈｃ−Ｈｖ）が当該仮想スクリーン領域１０Ｂ上端から画面表示領域２６Ａ上端までのオフセット幅Ｏｖｄに等しいか否かの判断によって、当該仮想スクリーン領域１０Ｂが描画コンテンツ１０Ａの最下端に到達したか否か判断される（ステップＳ１３）。
【００５２】
ここで、仮想スクリーン領域１０Ｂが描画コンテンツ１０Ａの最下端に未だ到達してないと判断された場合には（ステップＳ１３（Ｎｏ））、下方向のスクロール操作であることを示すフラグＦｄがセットされると共に（ステップＳ１４）、サーバ装置１０に対して仮想スクリーン領域１０Ｂの下方向へのスクロール要求が送信され（ステップＳ１５）、当該サーバ装置１０からのスクロールされた更新画面（描画）データの受信待機状態となる（ステップＳ６）。
【００５３】
この後、サーバ装置１０から描画コンテンツ１０Ａに対する仮想スクリーン領域１０Ｂが下方向に移動幅Ｓｓ分スクロールされた更新画面（描画）データが受信されると（ステップＳ６（Ｙｅｓ））、ＲＡＭ２４内の表示メモリにおける仮想スクリーン領域１０Ｂの内容が更新される（ステップＳ１６）。
【００５４】
そして、下方向のスクロール操作であることを示すフラグＦｄのセット状態であると判断された場合には（ステップＳ１７（Ｙｅｓ））、描画コンテンツ１０Ａの高さＨｃから仮想スクリーン領域１０Ｂ下端までの幅（Ｏｃｖ＋Ｈｖ）を差し引いた残りの幅が、サーバ装置１０に対する１回のスクロール要求に応じた仮想スクリーン領域１０Ｂのスクロール幅Ｓｓ以下に達しているか（図４（Ｄ）参照）が判断される（ステップＳ１８）。
【００５５】
ここで、例えば図４（Ｃ）に示すように、描画コンテンツ１０Ａの高さＨｃから仮想スクリーン領域１０Ｂ下端までの幅（Ｏｃｖ＋Ｈｖ）を差し引いた残りの幅が、サーバ装置１０に対する１回のスクロール要求に応じた仮想スクリーン領域１０Ｂのスクロール幅Ｓｓ以下に未だ達していないと判断された場合には（ステップＳ１８（Ｎｏ））、仮想スクリーン領域１０Ｂ上端から画面表示領域２６Ａ上端までのオフセット幅Ｏｖｄが、当該仮想スクリーン領域１０Ｂのスクロール幅Ｓｓに応じて更新されると共に（ステップＳ１９）、描画コンテンツ１０Ａ上端から仮想スクリーン領域１０Ｂ上端までのオフセット幅Ｏｃｖも同仮想スクリーン領域１０Ｂのスクロール幅Ｓｓに応じて更新される（ステップＳ２０）。
【００５６】
すると、前記フラグＦｄがクリアされ（ステップＳ２１）、サーバ装置１０からの次の更新画面（描画）データの受信待機状態（ステップＳ６）、またはユーザによる次のスクロール操作の待機状態（ステップＳ７）となる。
【００５７】
この後、前記仮想スクリーン領域１０Ｂに設定された下方向スクロール時境界２０ｄに前記画面表示領域２６Ａの下端が達しない状態での当該画面表示領域２６Ａの移動幅ＳｄずつのＮ回の下方向スクロール表示処理（ステップＳ７（Ｙｅｓ）〜Ｓ１２（Ｎｏ）→Ｓ６）と、同下方向スクロール時境界２０ｄに画面表示領域２６Ａの下端が達した場合のサーバ装置１０に対する仮想スクリーン領域１０Ｂの下方向へのスクロール要求処理（ステップＳ７（Ｙｅｓ）〜Ｓ１５）およびこれに伴いサーバ装置１０から受信された更新画面（描画）データによる仮想スクリーン領域１０Ｂの内容更新処理（ステップＳ６（Ｙｅｓ）→Ｓ１６〜Ｓ２１）とが繰り返されることで、例えば図４（Ｄ）に示すように、描画コンテンツ１０Ａの高さＨｃから仮想スクリーン領域１０Ｂ下端までの幅（Ｏｃｖ＋Ｈｖ）を差し引いた残りの幅が、サーバ装置１０に対する１回のスクロール要求に応じた仮想スクリーン領域１０Ｂのスクロール幅Ｓｓ以下に達したと判断された場合には（ステップＳ１８（Ｙｅｓ））、今回の仮想スクリーン領域１０Ｂの内容更新処理によって、図４（Ｅ）に示すように、当該仮想スクリーン領域１０Ｂの下端が描画コンテンツ１０Ａの下端に達する状態となるので、これに応じて、仮想スクリーン領域１０Ｂ上端から画面表示領域２６Ａ上端までのオフセット幅Ｏｖｄが、当該仮想スクリーン領域１０Ｂ下端から描画コンテンツ１０Ａ下端までの残り幅（Ｈｃ−（Ｏｃｖ＋Ｈｖ））に応じて更新され（ステップＳ２２）、さらに、描画コンテンツ１０Ａ上端から仮想スクリーン領域１０Ｂ上端までのオフセット幅Ｏｃｖも当該同仮想スクリーン領域１０Ｂの高さＨｖに応じて更新される（ステップＳ２３）。
【００５８】
すると、前記フラグＦｄがクリアされ（ステップＳ２１）、サーバ装置１０からの次の更新画面（描画）データの受信待機状態（ステップＳ６）、またはユーザによる次のスクロール操作の待機状態（ステップＳ７）となる。
【００５９】
こうして、仮想スクリーン領域１０Ｂが描画コンテンツ１０Ａの下端まで達した状態（Ｏｃｖ＝Ｈｃ−Ｈｖ）で、前記同様に画面表示領域２６Ａの下方向へのスクロール表示処理が繰り返された後（ステップＳ７〜Ｓ１３（Ｙｅｓ）→Ｓ６）、図４（Ｆ）に示すように、前記画面表示領域２６Ａ下端から仮想スクリーン領域１０Ｂ下端までの残りの幅（Ｈｖ−（Ｏｖｄ＋Ｈｄ））が、１回のユーザスクロール操作に応じた当該画面表示領域２６Ａの移動幅Ｓｄ以下に達したと判断された場合には（ステップＳ９（Ｙｅｓ））、さらに同画面表示領域２６Ａ下端が仮想スクリーン領域１０Ｂ下端に達した（Ｈｖ−（Ｏｖｄ＋Ｈｄ）＝０）のか否か判断される（ステップＳ２４）。
【００６０】
ここで、前記画面表示領域２６Ａ下端が仮想スクリーン領域１０Ｂ下端に未だ達していないと判断された場合には（ステップＳ２４（Ｎｏ））、図４（Ｇ）に示すように、当該画面表示領域２６Ａの仮想スクリーン領域１０Ｂに対する上端側オフセット幅Ｏｖｄが同画面表示領域２６Ａが仮想スクリーン領域１０Ｂの下端に達した状態（Ｏｖｄ＝Ｈｖ−Ｈｄ）として更新される（ステップＳ２５）。
【００６１】
すると、仮想スクリーン領域１０Ｂの下端から画面表示領域２６Ａの高さＨｄに相当する描画データが読み出され表示装置２６に表示される（ステップＳ２６）。
【００６２】
一方、前記下方向へのスクロール操作が判断された場合（ステップＳ８（Ｙｅｓ））とは逆に、上方向へのスクロール操作が判断された場合（ステップＳ８（Ｎｏ））には、前記ステップＳ９〜Ｓ１５およびＳ２４〜Ｓ２６にて説明した下方向のスクロール表示処理と同様の手法である、図７に示すような、ステップＳ９ｕ〜Ｓ１５ｕおよびＳ２４ｕ〜Ｓ２６ｕでの上方向のスクロール表示処理が実行される。
【００６３】
また、この上方向のスクロール表示処理に伴い、前記仮想スクリーン領域１０Ａの上方向へのスクロール要求に応じて、サーバ装置１０から当該上方向スクロール後の更新画面（描画）データが受信され（ステップＳ６（Ｙｅｓ））、当該仮想スクリーン領域１０Ｂの内容が更新された場合には（ステップＳ１６）、前記ステップＳ１８〜Ｓ２３にて説明した下方向スクロールに伴う画面スクロール管理データ２４ａの更新処理と同様の手法である、図８に示すような、ステップＳ１８ｕ〜Ｓ２３ｕでの下方向スクロールに伴う画面スクロール管理データ２４ａの更新処理が実行される。
【００６４】
すなわち、上方向のスクロール操作が判断される毎に、先ず、仮想スクリーン領域１０Ｂ内の画面表示領域２６Ａが単位移動幅Ｓｄずつ上方向にスクロールされて表示装置２６に表示される（ステップＳ７，Ｓ８（Ｎｏ）→Ｓ９ｕ〜Ｓ１２ｕ（Ｎｏ）→Ｓ６）。
【００６５】
そして、この上方向のスクロール表示処理に伴い、画像表示領域２６Ａの上端が仮想スクリーン領域１０Ｂに設定された上方向スクロール時境界２０ｕに達する毎に、下方向のスクロールフラグＦｄがクリアされ、仮想スクリーン領域１０Ｂを移動幅Ｓｓ（≦Ｎ×Ｓｄ）で上方向にスクロールさせるための要求信号がサーバ装置１０に対して送信される（ステップＳ１２ｕ（Ｙｅｓ）〜Ｓ１５ｕ→Ｓ６）。
【００６６】
これにより、サーバ装置１０から仮想スクリーン領域１０Ｂが上方向に移動幅Ｓｓでスクロールされた状態での更新画面（描画）データが受信され、ＲＡＭ２４内の表示メモリにおける仮想スクリーン領域１０Ｂの内容が更新されると（ステップＳ６（Ｙｅｓ）→Ｓ１６）、下方向のスクロールフラグＦｄがクリアされていることに従い（ステップＳ１７（Ｎｏ））、仮想スクリーン領域１０Ｂ上端から画面表示領域２６Ａ上端までのオフセット幅Ｏｖｄ、および描画コンテンツ１０Ａ上端から仮想スクリーン領域１０Ｂ上端までのオフセット幅Ｏｃｖのそれぞれが同仮想スクリーン領域１０Ｂのスクロール幅Ｓｓに応じて更新される（ステップＳ１８ｕ〜Ｓ２０ｕ）。
【００６７】
この後、上方向にスクロール処理された仮想スクリーン領域１０Ｂの上端から描画コンテンツ１０Ａ上端までの残り幅が当該仮想スクリーン領域１０Ｂのスクロール幅Ｓｓ以下に達した場合には（ステップＳ６（Ｙｅｓ）→Ｓ１６，Ｓ１７（Ｎｏ）→Ｓ１８ｕ（Ｙｅｓ））、同仮想スクリーン領域１０Ｂが描画コンテンツ１０Ａの上端に達した状態に合わせて、前記画面表示領域２６Ａ上端のオフセット幅Ｏｖｄおよび仮想スクリーン領域１０Ｂ上端のオフセット幅Ｏｃｖがそれぞれ更新される（ステップＳ２２ｕ，Ｓ２３ｕ）。
【００６８】
そして、さらなる上方向のスクロール表示処理に伴い（ステップＳ７（Ｙｅｓ）→Ｓ８（Ｎｏ））、前記画面表示領域２６Ａ上端のオフセット幅Ｏｖｄが１回のスクロール操作に伴う単位移動幅Ｓｄ以下に達した場合には（ステップＳ９ｕ（Ｙｅｓ））、当該画面表示領域２６Ａが仮想スクリーン領域１０Ｂの上端に達した状態に合わせて、同画面表示領域２６Ａ上端のオフセット幅Ｏｖｄが更新されると共に（ステップＳ２６ｕ）、その描画データが読み出されてスクロール表示される（ステップＳ２６ｕ）。
【００６９】
このようにクライアント装置２０では、画面表示領域２６Ａの次のスクロール先の描画データが当該クライアント装置２０内に常に先読みされている状態にして上下両方向のスクロール表示処理が行われる。このため仮想スクリーン領域１０Ｂをスクロールする際のサーバ装置１０との間でのネットワークＮＥＴ上の伝送遅延時間に影響を受けることなく、操作レスポンスの良いスクロール表示処理を行うことができる。
【００７０】
図９は、前記シン・クライアント・システムのサーバ装置１０によるサーバ処理を示すフローチャートである。
【００７１】
クライアント装置２０からの所望のコンテンツの閲覧要求に応じて、アプリケーションプログラムが起動され、その描画コンテンツ１０Ａが開かれたことが判断されると（ステップＡ１（Ｙｅｓ））、当該描画コンテンツ１０Ａの高さＨｃが取得されると共に（ステップＡ２）、当該描画コンテンツ１０Ａの上端から現在ウィンドウに表示している仮想スクリーン領域１０Ｂ上端までのオフセット幅Ｏｃｖが取得される（ステップＡ３）。
【００７２】
すると、クライアント装置２０に対して、要求されたコンテンツが開いたことが通知されると共に、前記ステップＡ２，Ａ３にて取得された描画コンテンツ１０Ａの高さＨｃ、および仮想スクリーン領域１０Ｂ上端のオフセット幅Ｏｃｖが送信される（ステップＡ４）。次に、クライアントの仮想スクリーン分の画面データをクライアント装置２０へ送信する（ステップＡ５）。この画面データは前記開かれたコンテンツであって、クライアントの仮想スクリーン分のコンテンツである。
【００７３】
そして、クライアント装置１０からスクロールの要求が受信されると（ステップＡ６（Ｙｅｓ））、当該スクロール要求が下方向のスクロール要求であるか、上方向のスクロール要求であるかが判断され（ステップＡ７）、下方向のスクロール要求であると判断された場合には（ステップＡ７（Ｙｅｓ））、前記起動中のアプリケーションプログラムに対して仮想スクリーン領域１０Ｂを下方向に１回の単位移動幅Ｓｄで移動させるためのスクロール要求イベントがＮ回連続して発行され、当該仮想スクリーン領域１０Ｂが移動幅Ｓｓ（＝Ｎ×Ｓｄ）で下方向にスクロールされる（ステップＡ８）。
【００７４】
すると、この下方向スクロールに応じた分、即ち、１回の単位移動幅ＳｄのＮ倍分の描画データが読み出され、前記スクロール要求元のクライアント装置２０へ送信転送される（ステップＡ９）。これにより、単位当たりのスクロール幅より大きい幅でスクロールした表示データがクライアント装置２０へ送信される。
【００７５】
一方、上方向のスクロール要求であると判断された場合にも（ステップＡ７（Ｎｏ））、前記同様に起動中のアプリケーションプログラムに対して仮想スクリーン領域１０Ｂを上方向に１回の単位移動幅Ｓｄで移動させるためのスクロール要求イベントがＮ回連続して発行され、当該仮想スクリーン領域１０Ｂが移動幅Ｓｓ（＝Ｎ×Ｓｄ）で上方向にスクロールされる（ステップＡ１０）。
【００７６】
すると、この上方向スクロールに応じた分の描画データが読み出され、前記スクロール要求元のクライアント装置２０へ送信転送される（ステップＡ１１）。これにより、単位当たりのスクロール幅より大きい幅でスクロールした表示データがクライアント装置２０へ送信される。
【００７７】
したがって、前記構成のシン・クライアント・システムにおけるスクロール表示の制御機能によれば、仮想スクリーン領域１０Ｂの高さＨｖを画面表示領域２６Ａの高さＨｄより大きくすると共に、当該仮想スクリーン領域１０Ｂの上下両端から設定された幅分手前の位置に上方向スクロール時の境界線２０ｕおよび下方向スクロール時の境界線２０ｄを設け、上方向のスクロール操作時は、前記画面表示領域２６Ａの上端が上方向スクロール時の境界線２０ｕに達した場合にのみ、サーバ装置１０に対して仮想スクリーン領域１０Ｂのスクロール要求を送信し、下方向のスクロール操作時は、前記画面表示領域２６Ａの下端が下方向スクロール時の境界線２０ｄに達した場合にのみ、サーバ装置１０に対して仮想スクリーン領域１０Ｂのスクロール要求を送信する。そして、１回のスクロール操作あたりの画面表示領域２６Ａの単位移動幅Ｓｄに対して、前記サーバ装置１０への１回のスクロール要求に伴う仮想スクリーン領域１０Ｂのスクロール幅ＳｓがＮ倍以上（Ｓｓ≧Ｎ×Ｓｄ）となるように設定したので、例えば連続する同一方向のスクロール操作時でも、そのスクロール操作の度にクライアント装置２０とサーバ装置１０との間でスクロール要求と描画データのやり取りを行う必要がなく、その通信頻度をＮ分の１以下に減らすことができる。このため、伝送遅延の大きなネットワークＮＥＴを利用した環境においても、これに影響されることなく、操作レスポンスの良いスクロール表示を行うことができる。
【００７８】
また、前記構成のシン・クライアント・システムにおけるスクロール表示の制御機能によれば、前記仮想スクリーン領域１０Ｂに設定した上方向スクロール時の境界線２０ｕと下方向スクロール時の境界線２０ｄとの間隔（Ｂｄ−Ｂｕ）を、前記画面表示領域２６Ａの高さＨｄと仮想スクリーン領域１０Ｂのスクロール幅Ｓｓ（≧Ｎ×Ｓｄ）との和よりも大きくなるように設定したので、スクロール操作時において、上方向の操作から下方向の操作、あるいはその逆のような、スクロール方向が変化する操作が行われた場合に、当該操作方向が変化した直後からＮ回分（仮想スクリーン領域１０Ｂのクロール幅Ｓｓ÷画面表示領域２６Ａのスクロール幅Ｓｄ）のスクロール操作については、サーバ装置１０に対してスクロール要求を送信する必要がない。これにより、例えばユーザがコンテンツを短い幅で上下に行ったりきたりして閲覧するような操作をした場合に、クライアント装置２０とサーバ装置１０間で通信をする必要が無く、伝送遅延の大きな通信網利用時においても、操作レスポンスの良いスクロール表示を行うことができる。
【００７９】
なお、前記実施形態では、図４で示したように、描画コンテンツ１０Ａと仮想スクリーン領域１０Ｂおよび画面表示領域２６Ａの幅が、何れも等しい場合を実施例として、上下方向のスクロール操作に応じた表示制御機能についてのみ説明したが、次の図１０に示すように、左右方向のスクロール操作をも含めた表示制御も同様にして実施することができる。
【００８０】
図１０は、前記シン・クライアント・システムのサーバ装置１０により開かれた描画コンテンツ１０Ａとクライアント装置２０へ転送される仮想スクリーン領域１０Ｂおよび当該クライアント装置２０で実際に表示される画面表示領域２６Ａとの関係を上下方向および左右方向のスクロール制御に必要な各管理データと共に示す図である。
【００８１】
すなわち、上下方向のスクロール操作に応じた表示制御に加えて、左右方向のスクロール操作をも含めた表示制御を行う場合には、新たに、仮想スクリーン領域１０Ｂの左端より予め設定された幅だけ残したところの左方向スクロール時境界２０ｌと、同右端より予め設定された幅だけ残したところの右方向スクロール時境界２０ｒとを設定する。そして、画面表示領域２６Ａの横幅Ｗｄ、仮想スクリーン領域１０Ｂの横幅Ｗｖ、描画コンテンツ１０Ａの横幅Ｗｃ、仮想スクリーン領域１０Ｂ左端からの左方向スクロール時境界２０ｌまでの幅Ｂｌおよび同右方向スクロール時境界２０ｒまでの幅Ｂｒ、描画コンテンツ１０Ａ左端から仮想スクリーン領域１０Ｂ左端までのオフセット幅Ｏｃｈ、仮想スクリーン領域１０Ｂ左端から画面表示領域２６Ａ左端までのオフセット幅Ｏｈｄを、画面スクロール管理データ２４ａとして加える。
【００８２】
これにより、左右方向のスクロール操作に対しても、前述した上下方向のスクロール操作に応じた表示制御と同様の処理を行うことで、上下左右方向共に操作レスポンスの良いスクロール表示を行うことができる。
【００８３】
なお、本願発明は、前記各実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。さらに、前記各実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出され得る。例えば、各実施形態に示される全構成要件から幾つかの構成要件が削除されたり、幾つかの構成要件が異なる形態にして組み合わされても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除されたり組み合わされた構成が発明として抽出され得るものである。
【符号の説明】
【００８４】
１０  …サーバ装置
１０Ａ…描画コンテンツ
１０Ｂ…仮想スクリーン領域
１１  …サーバＣＰＵ
１３  …サーバＲＯＭ
１４  …サーバＲＡＭ
１５  …外部記憶装置
１６  …サーバ表示装置
１７  …サーバ入力装置
１８  …サーバ通信Ｉ／Ｆ
２０  …クライアント装置
２０ｕ…上方向スクロール時境界
２０ｄ…下方向スクロール時境界
２０ｌ…左方向スクロール時境界
２０ｒ…右方向スクロール時境界
２１  …クライアントＣＰＵ
２３  …クライアントＲＯＭ
２４  …クライアントＲＡＭ
２４ａ…画面スクロール管理データ
２５  …クライアント入力装置
２６  …クライアント表示装置
２６Ａ…画面表示領域
２７  …クライアント通信Ｉ／Ｆ
ＮＥＴ…通信ネットワーク
【図１】
0005527357.tif 000002
【図２】
0005527357.tif 000003
【図３】
0005527357.tif 000004
【図４】
0005527357.tif 000005
【図５】
0005527357.tif 000006
【図６】
0005527357.tif 000007
【図７】
0005527357.tif 000008
【図８】
0005527357.tif 000009
【図９】
0005527357.tif 000010
【図１０】
0005527357.tif 000011