(57)【特許請求の範囲】
【請求項１】
コンピュータ・ディスプレイ上にイメージを表示する方法であって、
（ａ）前記コンピュータ・ディスプレイ上のＧＵＩウインドウにおける、ドキュメントの次の領域を表示させるための、スクロール領域およびパックを備えるスクロール・バーを表示するステップと、
（ｂ）前記スクロール・バーにおけるスクロール領域に一以上の広告を表示するステップと
（ｃ）前記スクロール・バー上の前記パックの位置を、ユーザ入力に応答して更新するステップと、
（ｄ）更新された前記パックの位置に基づいて、前記スクロール領域に表示されている前記広告を更新するステップと、
を含む方法。
【請求項２】
前記スクロール・バーを用いたスクロールの方向が、ドキュメントに対して上下の方向または左右の方向である請求項１に記載の方法。
【請求項３】
前記スクロール領域に表示されている前記広告を更新する前記ステップが、更新されたパックの位置に応じて複数のイメージの中から選択するステップを含む、請求項１に記載の方法。
【請求項４】
前記複数のイメージの各々が各自に関連する範囲を備えており、かつ、前記複数のイメージの中から選択する前記ステップが、前記更新されたパックの位置と前記複数のイメージの各々に関連する前記範囲とを比較するステップを含む、請求項３に記載の方法。
【請求項５】
前記スクロール領域に表示されている前記広告を更新する前記ステップが、前記パックによって塞がれていない前記スクロール領域の部分内に前記広告を表示するステップを含む、請求項１に記載の方法。
【請求項６】
さらに、前記パックによってオーバーラップされている前記スクロール領域において、前記パック上に前記広告の少なくとも一部を表示するステップを含む、請求項１に記載の方法。
【請求項７】
さらに、ユーザが操作したポインタが前記スクロール・バー上に配置されている時にだけ、前記スクロール・バー上に前記パックを表示するステップを含む、請求項１に記載の方法。
【請求項８】
前記広告を表示する前記ステップが、前記パック上に広告を表示するステップを含む、請求項１に記載の方法。
【請求項９】
前記パック上に前記広告を表示する前記ステップが、ユーザが前記パックを操作するのに応答してなされる、請求項８に記載の方法。
【請求項１０】
前記パック上に前記広告を表示する前記ステップが、
（ａ）前記パック上に第１のグラフィカル・イメージを表示するステップと、
（ｂ）前記パックを用いたドラッグ操作を開始するユーザ入力に応答して、前記パック上に第２のグラフィカル・イメージを表示するステップと、
（ｃ）前記パックを用いたドラッグ操作を完了するユーザ入力に応答して、前記パック上に前記第１のグラフィカル・イメージを再表示するステップと
を含む、請求項９に記載の方法。
【請求項１１】
さらに、前記スクロール・バー上に表示すべき広告を決定するステップを含む、請求項１に記載の方法。
【請求項１２】
前記スクロール・バーがウインドウ内に表示されており、前記ウインドウ内には当該ウインドウに関連するコンテントの少なくとも一部も表示されており、かつ、前記スクロール・バー上に表示すべき前記広告を決定する前記ステップが、前記ウインドウのコンテントに基づいて前記広告を選択するステップを含む、請求項１１に記載の方法。
【請求項１３】
（ａ）メモリと、
（ｂ）前記メモリに駐在するコンピュータ・プログラムであって、コンピュータ・ディスプレイ上のＧＵＩウインドウにおける、ドキュメントの次の領域を表示させるための、スクロール領域およびパックを備えるスクロール・バーを表示すると共に、前記スクロール・バーにおけるスクロール領域に一以上の広告を表示し、
前記スクロール・バー上の前記パックの位置を、ユーザ入力に応答して更新し、
更新されたパックの位置に基づいて、前記スクロール領域に表示されている前記広告を更新するように構成されているコンピュータ・プログラムと
を含む装置。
【請求項１４】
前記コンピュータ・プログラムにおいて、前記スクロール・バーを用いたスクロールの方向が、ドキュメントに対して上下の方向または左右の方向であるコンピュータ・プログラムを備えた請求項１３に記載の装置。
【請求項１５】
前記コンピュータ・プログラムが、パックの位置が更新されたときに、複数のイメージから一以上の広告を選択し、前記スクロール領域に表示される広告を、選択された前記広告に更新する、請求項１３に記載の装置。
【請求項１６】
前記複数のイメージの各々が各自に関連する範囲を備えており、かつ、前記コンピュータ・プログラムが、前記パックの前記更新された位置と前記複数のイメージの各々に関連する前記範囲とを比較して、前記複数のイメージの中から１つを選択するように構成されている、請求項１５に記載の装置。
【請求項１７】
前記コンピュータ・プログラムが、前記パックによって塞がれていない前記スクロール領域の一部内に前記広告を表示することにより、前記スクロール領域に表示されている前記広告を更新するように構成されている、請求項１３に記載の装置。
【請求項１８】
前記コンピュータ・プログラムが、前記パックによってオーバーラップされている前記スクロール領域において、前記パック上に前記広告の少なくとも一部を表示するように構成されている、請求項１４に記載の装置。
【請求項１９】
前記コンピュータ・プログラムが、ユーザが操作したポインタが前記スクロール・バー上に配置されている時にだけ、前記スクロール・バー上に前記パックを表示するように構成されている、請求項１３に記載の装置。
【請求項２０】
前記コンピュータ・プログラムが、前記パック上に広告を表示するように構成されている、請求項１３に記載の装置。
【請求項２１】
前記コンピュータ・プログラムが、ユーザが前記パックを操作するのに応答して、前記パック上に前記広告を表示するように構成されている、請求項２０に記載の装置。
【請求項２２】
前記コンピュータ・プログラムが、前記パックを用いてドラッグ操作がなされているか否かに基づいて、第１および第２のグラフィカル・イメージのうちの一方を選択することにより、前記パック上に前記広告を表示するように構成されている、請求項２１に記載の装置。
【請求項２３】
前記コンピュータ・プログラムが、前記スクロール・バー上に表示すべき前記広告を決定するように構成されている、請求項１３に記載の装置。
【請求項２４】
前記スクロール・バーがウインドウ内に表示されており、前記ウインドウ内には当該ウインドウに関連するコンテントの少なくとも一部も表示されており、かつ、前記コンピュータ・プログラムが、前記ウインドウのコンテントに基づいて前記広告を選択することにより、前記スクロール・バー上に表示すべき前記広告を決定するように構成されている、請求項２３に記載の装置。
【請求項２５】
（ａ）コンピュータ・ディスプレイ上のＧＵＩウインドウにおける、ドキュメントの次の領域を表示させるための、スクロール領域およびパックを備えるスクロール・バーを表示すると共に、
（ｂ）前記スクロール・バーにおけるスクロール領域に一以上の広告を表示し、
（ｃ）前記スクロール・バー上の前記パックの位置を、ユーザ入力に応答して更新し、
（ｄ）更新されたパックの位置に基づいて、前記スクロール領域に表示されている前記広告を更新するように構成されているコンピュータ・プログラムを格納する、記録可能媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、コンピュータ・ディスプレイにイメージを表示する方法および装置に関する。本発明は、一般に、コンピュータおよびコンピュータ・ソフトウェアに関する。具体的には、本発明は、一般に、グラフィカル・ユーザ・インタフェース・コンピュータ環境で使用されるスクロール・バー・インタフェース・コントロールに関する。
【０００２】
【従来の技術】
多くのコンピュータでグラフィカル・ユーザ・インタフェース（ＧＵＩ）が使われているので、ユーザは、これらのコンピュータに格納されている情報と対話することができる。ＧＵＩ環境では、ユーザは、通常、直観的操作によってコンピュータと対話することができる。直観的操作とは、コンピュータ・ディスプレイ上に表示されている様々なグラフィカル表示要素を、マウスなどのユーザ・インタフェース装置によって制御されるグラフィカル・ポインタを用いて「ポイントしてクリックする」ような操作である。
【０００３】
ＧＵＩ環境で使用される共通形の表示要素の１つに、ウインドウ表示要素すなわちウインドウがある。ウインドウは、通常、長方形のフレームを備えている。このフレーム内には、当該ウインドウに関連するコンテント情報を表示する表示領域が画定されている。例えば、ウインドウは、通常、ウェブ・ブラウザと呼ばれているコンピュータ・プログラムによって、インターネットからダウンロードしたコンテント情報を表示するのに使われている。
【０００４】
多くの場合、ウインドウの表示領域は、当該ウインドウに関連するコンテント情報の全てを表示することはできない。したがって、スクロール・バーのようなユーザ・インタフェース・コントロールを使って、ユーザが当該ウインドウを「スクロール」して上記コンテント情報の別の部分を閲覧することができるようにしている。
【０００５】
スクロール・バーによって、ユーザは、通常、当該スクロール・バー上の様々なコントロールを操作して所定の方向（例えば垂直（上下）方向または水平（左右）方向）にスクロールすることができる。例えば、スクロール・バーの多くは、ドキュメントの全体サイズを表す細長い背景すなわちスクロール領域を備えている。スクロール領域上であって、コンテント情報のうちウインドウに表示されている部分の相対的な位置に、パックすなわちスライダが固定されている。パックのサイズは、固定にも可変にもすることができる。パックのサイズが可変の場合には、パックのサイズは、コンテント情報のうちウインドウに表示されている部分の相対的なサイズを表すように、スクロール領域の長手方向に沿って変化する。ポインタがパック上に配置されている間にマウス・ボタンを押し、マウス・ボタンを押したままスクロール領域の長手方向に沿ってポインタを移動させることにより、ユーザは、通常、ドキュメントをスクロールさせることができる（この操作は、パックの「ドラッグ」と呼ばれている）。
【０００６】
また、スクロール・バーがスクロール領域の両端に１組の矢印ボタンを備えることにより、ウインドウ・コンテント情報を漸次的に（例えば１行ずつ）スクロールすることが可能になる。さらに、スクロール・バーの中には、ユーザがスクロール領域を直接ポイントしクリックすることにより、１度に大量の（例えば１画面ずつまたは１ページずつ）スクロールを行なえるようにしたものもある。
【０００７】
多くの場合、ウインドウによって、コンピュータ・ディスプレイ上に提供される限られた表示領域に表示する可視情報の量を管理するのが容易になる。しかし、ウインドウによって表示される情報の量を最大にするためには、多くの場合、ウインドウに表示される他の構成要素に比べてウインドウの表示領域の相対サイズを最大にすることが望ましい。上記他の構成要素には、例えば、フレームおよびスクロール・バーに加え、様々なタイトル・バー、ツール・バー、メニュー・バー、ステータス・バーなどが含まれる。さらに、特にインターネットからダウンロードした情報のような商業上の情報に対しては、ユーザが要求した情報のそばに少なくとも１つの広告を表示することができる。広告の表示は、ウインドウの表示領域、タイトル・バーやステータス・バーのような構成要素、あるいは別のウインドウのどこに行なってもよい。しかし、このような広告は、その表示方法に関係なく、広告を表示しなければユーザが要求した情報を表示するのに使うことができたであろう、コンピュータ・ディスプレイ上のスペースを占有する。
【０００８】
ウインドウ内に表示される素材は、ユーザが特に要求したすなわち望んだ情報以外のものはどんなものでも、ユーザの生産性および効率性を阻害する可能性がある。特に、ユーザが頻繁にスクロールして情報を見る必要がある場合は、いつもそうである。そこで、コンピュータ・ディスプレイ上の使用可能なスペースをより効率的に使う方法に対して、大きなニーズが常に存在する。
【０００９】
スペースが多くの場合非効率に使われている特定の領域の１つは、スクロール・バー内、特にスクロール領域およびパックの上に存在する。従来のスクロール・バー設計の中には、スクロール・バーに追加の表示要素およびコントロールを表示することができるものもある。追加の表示要素およびコントロールは、例えば、ウインドウに表示されているコンテント情報中のある点の相対位置を示す、または、ウインドウに表示されているコンテント情報中のある場所を見るのに費やした時間を示す、などのために使用される。また、スクロール・バー設計の中には、パックが様々なアイコン（例えば第３のスクロール次元を示す）を備えているものがある。
【００１０】
しかし，一般に、従来のスクロール・バー設計で表示される追加の表示要素は、ウインドウ内のあるコンテント情報をスクロールするコントロール、またはウインドウ内のあるコンテント情報の相対位置を表示するインジケータのどちらかに限定されていた。言い換えると、従来のスクロール・バーに表示されていた表示要素は全て、様々な点でスクロール・バーの使い勝手を良くすることに関連する傾向があった。
【００１１】
しかし、このような追加の表示要素がスクロール・バーに表示されるときでさえ、かなりの量の表示領域がスクロール・バー上で未使用のまま放置されがちである。コンピュータ・ディスプレイ上のスペースをより効率的に使う方法に対するニーズが常に存在する点を考慮すると、スクロール・バー上のこのような未使用領域をより生産的な方法で使用できるとしたら、それは大いに望ましいであろう。
【００１２】
【課題を解決するための手段】
本発明は、従来技術に関連するこれらの問題および他の問題に取り組むものである。この取り組みは、その中でスクロール・バーの少なくとも一部に広告が表示される、装置、プログラム製品、および方法を提供することにより、なされている。それ故、多くの実例において、コンピュータ・ディスプレイ上で使用可能なスペースに与える影響（もしあるとして）が最小の状態で、広告メッセージをユーザに伝達することができる。これにより、ユーザの生産性に与えるいかなる悪影響をも限定するというさらに有利な効果が得られる。
【００１３】
本発明を特徴付けるこれらのおよび他の利点並びに特徴は、特許請求の範囲に開示されている。しかし、本発明、および本発明の使用を通じて得られる利点および目的をより良く理解するためには、図面およびそれに付随する記載事項を参照する必要がある。そこには、本発明に係る典型的な実施の形態が記載されている。
【００１４】
【発明の実施の形態】
〔ハードウェア環境およびソフトウェア環境〕
図面を参照すると、図中、同一の符号は同一の部品を示している。図１は、本発明に係るコンピュータ・システム１０を示している。コンピュータ・システム１０は、ネットワーク１８を通してサーバ１６（例えばＰＣベースのサーバ、ミニコンピュータ、中型コンピュータ、メインフレーム・コンピュータなど）に接続された１台以上のクライアント・コンピュータ１２、１４、２０（例えばデスクトップ・コンピュータまたはＰＣベースのコンピュータ、ワークステーションなど）を備えたネットワーク・コンピュータ・システムとして示されている。ネットワーク１８には、実際上、どんな型のネットワーク相互接続を用いてもよい。それには、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、無線ネットワーク、および公衆ネットワーク（例えばインターネット）が含まれるが、これらに限定されない。さらに、ネットワーク１８を通して、任意の数のコンピュータおよび他の装置をネットワーク接続することができる（例えば多重サーバ）。
【００１５】
クライアント・コンピュータ２０（コンピュータ１２、１４と同様である）は、中央処理装置（ＣＰＵ）２１；コンピュータ・ディスプレイ２２のような多数の周辺装置；ストレージ装置２３；プリンタ２４；および様々な入力装置（例えばマウス２６およびキーボード２７）などを備えている。サーバ１６も同様に構成することができるが、当技術分野で周知のように、通常、より大きな処理性能およびストレージ容量を備えている。
【００１６】
図２は、本発明に係る装置３０用の典型的なハードウェア環境およびソフトウェア環境を別の方法で示している。本発明の目的のために、装置３０は、実際上、クライアント・コンピュータ（例えば図１のコンピュータ１２、１４、２０と同様のもの）、サーバ・コンピュータ（例えば図１のサーバ１６と同様のもの）、携帯型コンピュータ、ハンドヘルド・コンピュータ、組み込みコントローラなどを含む任意の型のコンピュータ、コンピュータ・システム、または他のプログラム可能な電子装置を代表することができる。以下では、装置３０を「コンピュータ」とも呼ぶ。しかし、用語「装置」には、本発明に適合的な他のプログラム可能な電子装置をも含めることができる点を認識すべきである。
【００１７】
コンピュータ３０は、典型的には、メモリ３２に接続されたプロセッサ３１を備えている。プロセッサ３１は、少なくとも１つのプロセッサ（例えばマイクロプロセッサ）を代表することができる。メモリ３２は、コンピュータ３０の主記憶を構成するＲＡＭ（random access memory）デバイスに加えて、任意の追加レベルのメモリ（例えばキャッシュ・メモリ）、不揮発性メモリすなわちバックアップ・メモリ（例えばプログラマブル・メモリまたはフラッシュ・メモリ）、ＲＯＭ（read-only memory）などを代表することができる。さらに、メモリ３２は、コンピュータ３０内に物理的に位置するメモリ・ストレージ（例えばプロセッサ３１内の任意のキャッシュ・メモリ）に加えて、仮想記憶として使われている任意のストレージ容量（例えば大容量記憶装置（マス・ストレージ）３５上に格納されたもの、またはネットワーク３６を経由して接続された別のコンピュータ上に格納されたもの）を含むものと考えることができる。
【００１８】
また、コンピュータ３０は、通常、多くの入出力をこなして外部と情報の通信を行なっている。ユーザすなわちオペレータ（操作員）とのインタフェースに関して、コンピュータ３０は、通常、少なくとも１つのユーザ入力装置３３（例えばキーボード、マウス、トラックボール、ジョイスティック、および／またはマイクロフォンなど）およびディスプレイ３４（例えばＣＲＴモニタ、ＬＣＤ表示パネル、および／またはスピーカーなど）を備えている。
【００１９】
また、追加の記憶装置に関して、コンピュータ３０は、少なくとも１つの大容量記憶装置（マス・ストレージ）３５を備えている。大容量記憶装置３５としては、例えば、フロッピーディスク駆動装置または他の取り外し可能ディスク駆動装置、ハードディスク駆動装置、ＤＡＳＤ（direct access storage device）、光ディスク駆動装置（例えばＣＤ駆動装置、ＤＶＤ駆動装置など）、および／またはテープ駆動装置などを用いることができる。さらに、コンピュータ３０は、少なくとも１つのネットワーク３６（例えばＬＡＮ、ＷＡＮ、無線ネットワーク、および／またはインターネットなど）に対するインタフェースを備えることができ、それにより上記ネットワークに接続された他のコンピュータとの間で情報のやり取りをすることができる。次の点を認識すべきである。すなわち、当技術分野でよく知られているように、コンピュータ３０は、通常、プロセッサ３１と各構成要素３２、３３、３４、３５、３６との間に適切なアナログおよび／またはディジタルのインタフェースを備えている。
【００２０】
コンピュータ３０は、オペレーティング・システム３８の制御下で動作すると共に、様々なコンピュータ・ソフトウェア・アプリケーション、コンポーネント、プログラム、オブジェクト、モジュール、データ構造など（例えばスクロール・バー４０、ブラウザ４２、およびアカウント・ファイルなど）を実行する、あるいはその逆に以上のものに依存している。さらに、様々なアプリケーション、コンポーネント、プログラム、オブジェクト、モジュールなどは、ネットワーク３６を経由してコンピュータ３０に接続されている別のコンピュータの少なくとも１つのプロセッサ上でも実行することができる。これは、例えば分散コンピューティング環境またはクライアント／サーバ・コンピューティング環境で実行することができる。これにより、１つのコンピュータ・プログラムの機能群を実現するのに必要とされる処理をネットワーク上の複数のコンピュータに割り当てることができる。
【００２１】
一般に、本発明の実施形態を実現するのに実行するルーチンは、オペレーティング・システムの一部としてインプリメントされているか、あるいは、個々のアプリケーション、コンポーネント、プログラム、オブジェクト、モジュール、または命令列としてインプリメントされているかにかかわらず、ここでは「コンピュータ・プログラム」あるいは単に「プログラム」と呼ぶ。コンピュータ・プログラムは、通常、少なくとも１つの命令から成る。上記命令は、コンピュータ内の様々なメモリおよびストレージ装置に様々な時に駐在している。そして、上記命令がコンピュータ内の少なくとも１つのプロセッサによって読み出されて実行されると、上記コンピュータは、本発明の様々な側面を実現するステップまたは要素を実行するのに必要なステップを実行する。さらに、完全に機能するコンピュータおよびコンピュータ・システムの文脈において、本発明を記述してきたし、以下でもそのように記述するが、当業者は次の点を認識すべきである。すなわち、本発明の様々な実施形態は、様々な形態のプログラム製品として頒布することができる；そして、本発明は、実際の頒布に使用される特定の型の信号搬送媒体と関係なく、均等に適合する。信号搬送媒体の例には、次に例示する記録可能型媒体および伝送型媒体が含まれるが、それらに限定されない。記録可能型媒体の例：揮発性メモリ・デバイスおよび不揮発性メモリ・デバイス、フロッピーディスクおよび他の取り外し可能ディスク、ハードディスク駆動装置、磁気テープ、光ディスク（例えばＣＤ−ＲＯＭ、ＤＶＤなど）など。伝送型媒体の例：ディジタルおよびアナログ通信リンク。
【００２２】
さらに、本発明の特定の実施形態においてプログラムをインプリメントする際には、ある用途を目的とするが、以下で記述する様々なプログラムは、こうした用途に基づいて識別することができる。しかし、次の点を認識すべきである。すなわち、以下で使用する特定のプログラム用語は、どれも、便宜上使用しているに過ぎない；したがって、そのような用語によって識別される、および／または含意される特定の用途だけに、本発明の使用を限定すべきではない。
【００２３】
当業者が認識できる点として、図１および図２に示した典型的な環境は、本発明を限定することを意図していない。実際、本発明の範囲から離れることなく、別の形のハードウェア環境および／またはソフトウェア環境を使用することができる、ということを当業者は認識することができる。
【００２４】
〔統合広告を備えたスクロール・バー〕
ここで述べる実施形態は、一般に、スクロール・バーに広告を表示することにより動作する。これは、典型的には、コンピュータ・ディスプレイ上に表示されたスクロール・バーのディスプレイ表示の上にグラフィカル・イメージを表示する形態で行なう。スクロール・バーは、特定の変数が取り得るある範囲の値から１つの値または値の部分集合を選択するのに使用するグラフィカル・ユーザ・インタフェース（ＧＵＩ）コントロールである、と考えることができる。
【００２５】
スクロール・バーの共通の用途は、例えば、ＧＵＩウインドウのコンテントをスクロールすることに関連している。しかし、次の点を認識することができる。すなわち、本発明に係るスクロール・バーは、従来のスクロール・バーのよく知られた他の用途に関連させて使用することもできる；これは、例えば取り得るある範囲の値から１つの値または値の部分集合を選択することが望ましい時は、いつでも行なうことができる。
【００２６】
例えば、図３に示すように、コンピュータ・ディスプレイ５０は、ブラウザ４２（図２）用のＧＵＩウインドウ５２を備えている。ＧＵＩウインドウ５２は、図示したインプリメンテーションでは、ＨＴＭＬ（hypertext markup language)ベースのビューワであり、その中にハイパーテキスト・ドキュメント５４が表示される。ユーザは、マウスのようなポインティング・デバイスによって制御されるポインタ５６を主として使用することにより、ウインドウ５２のコンテントを操作する。ウインドウ５２には、当該ウインドウを垂直（上下）方向にスクロールさせて、ドキュメント５４の別の領域を表示させるためのスクロール・バー６０が示されている。従来のスクロール・バーの場合と同様に、スクロール・バー６０はスクロール領域６４を備えている。スクロール領域６４は、スクロール・バー６０を用いて選択することのできる全範囲の値（ここでは、ウインドウ５２における垂直（上下）方向の位置）を表示している。
【００２７】
一定範囲の値の中から現在選択されている値を表す、スクロール領域６４に沿った特定の位置に、スライダすなわちパック６６が位置している。パック６６は、オプションとしてスクロール領域６４に沿ってサイズを変化させ、スクロール・バーによって選択できる全範囲の値中の値の部分集合を表すことができる（ここでは、ウインドウ５２内に現在表示されているドキュメント５４の相対位置を表している）。ユーザは、ポインタ５６を用いて（通常、従来の「ドラッグ・アンド・ドロップ」操作によって）パック６６を操作することにより、スクロール領域６４に沿ってパック６６をスライドさせて、スクロール・バー６０に現在選択されている値を変化させることができる。当技術分野で周知のように、追加のコントロール（例えば、パック６６を上方または下方にそれぞれ漸次的に移動させる矢印ボタン６８、７０）を備えることもできる。さらに、パック６６は、キーボード入力、マウスのスクロール・ホイール、およびスクロール領域の選択などに応答して移動させることもできる。
【００２８】
図示したインプリメンテーションでは、スクロール・バーは、オブジェクト指向環境でインプリメントされている。したがって、スクロール・バーは、コンピュータ・ディスプレイ上のディスプレイ表示と、その下に横たわり、ユーザが行なうスクロール・バーとの対話を処理するのに必要なプログラム・コードとの双方を含むものと考えられる。さらに、図示したインプリメンテーションでは、イベント駆動型環境が使われている。これにより、ユーザがスクロール・バーのディスプレイ表示と対話すると、イベントが生成される。このイベントは、スクロール・バーに関係する専用の処理プログラム・コードに引き渡される。しかし、次の点を認識すべきである。すなわち、別のプログラミングとオペレーションの環境（例えば手続き型環境など）では、スクロール・バーのプログラム・コードとディスプレイ表示とは、別々に処理される可能性がある；そこで、コンピュータ内の様々なソフトウェア資源の間でスクロール・バーへの広告の表示を処理する機能を割り当てることができるが、本発明は、いかなる特定の割り当てにも限定されない。
【００２９】
本発明によると、スクロール・バー６０のディスプレイ表示、典型的には、スクロール領域６４（ここでは、これが示してある）およびパック６６の一方または双方の上に広告６２が表示される。ここで使用しているように、本発明に係る広告は、実際、ユーザに任意のメッセージを伝達することができる。これは、通常、主としてスクロール・バーを見ているユーザ以外の主体の商業上の利益のためになされる。しかし、広告は、他のメッセージ（例えば公共サービスの告知など）も伝達することができる。ただし、それは、そのようなメッセージがスクロール・バーの操作またはそれによってスクロールされるコンテントに関してユーザを補助することを主目的としない場合に限られる。
【００３０】
説明中の実施形態では、広告は、広告レコードの形態でデータベース（例えば図２のアカウント・ファイル４４）内に格納されている。図４に示すように、広告レコード８０には、複数のフィールド８２〜９０を含めることができる。フィールド８２は、広告の名前または他の一義的な識別子を格納している。一方、フィールド８４は、スクロール・バーのスクロール領域にグラフィカル・イメージを表示する主背景イメージを格納している。
【００３１】
フィールド８６およびフィールド８８は、主パック・イメージおよび代替パック・イメージをそれぞれ格納している。これらは、図示するインプリメンテーションにおいて、ユーザが現在パック上でドラッグ操作を行なっているいるか否かに基づいて選択的に表示される。フィールド９０は、副背景イメージ群のリストを格納している。副背景イメージは、フィールド８４に格納されている主背景イメージの代替物としてスクロール・バーのスクロール領域に表示することができる。図示するインプリメンテーションでは、フィールド９０は、リンクされたリストへのポインタを格納している。上記リンクされたリストは、複数の副背景イメージ・レコード９２を含んでいる。副背景イメージ・レコード９２は、各々、副背景イメージ・フィールド９４、範囲フィールド９６、および続きフィールド９８を含んでいる。フィールド９４は副背景イメージを格納している。一方、フィールド９６は範囲パラメータを格納している。範囲パラメータは、副背景イメージの表示が適合するためのパック位置の範囲を明記するものである。フィールド９８は、上記リンクされたリストの次のレコード９２へのポインタを格納している。このようなレコードのうち最後のものは、フィールド９８にＮＵＬＬ値を含んでいる。
【００３２】
フィールド８２〜８８および９２は、実際のイメージ・データを格納することができる、あるいは、その代わりに、グラフィカル・イメージ・ファイルにアクセスするのに使うことのできるポインタ、ファイル名、または他の識別子を格納することができる。さらに、本発明に関しては、任意の数のグラフィカル・フォーマット（例えばビットマップ・ファイル、ＧＩＦファイル、ＪＰＥＧファイルなど）を使用することができる。加えるに、広告には、静止画以外に、アニメーションおよび／またはビデオのような動画、並びに関連する音声情報を含めることができる。音声情報は、静止画または動画の表示と同時に再生する。さらに、次の点を認識することができる。すなわち、各広告レコードに格納されている情報は、本発明と矛盾しない無数の代替データ構造中に保持することができる。
【００３３】
図５は、本発明に係るスクロール・バー・オブジェクト４０の主プログラム・フローを示している。この図では、スタートアップ時に行なわれる機能とスクロール・バーの使用中に行なわれる機能とが同じプログラム・フロー中に示されている。しかし、多くのインプリメンテーションでは、このようなオペレーションは、別々のルーチン（例えばコンストラクタ・ルーチン（１００で図示）およびイベント・ハンドラ・ルーチン（１０２で図示））によって処理される。次の点を認識することができる。すなわち、このようなルーチンを、例えばオブジェクト指向イベント駆動型環境でインプリメントすることは、本開示の恩恵を受けている当業者の能力の範囲内のものである。
【００３４】
通常、コンストラクタ・ルーチン１００は、スクロール・バー・オブジェクトの初期化中に実行される。例えば、ウインドウのコンテントがウインドウの表示領域を超えるように、当該ウインドウのコンテントを生成し、および／または更新すると、それに応答してスクロール・バー・オブジェクトの初期化が実行される。スクロール・バー・オブジェクトのコンストラクション中に、始めに広告をアカウント・ファイルから選択し（ブロック１０４）、次いでスクロール・バー表示ルーチン１０６を呼び出すことによりスクロール・バーを表示する（詳細は後述する）。続いて、広告表示ルーチン１０８を呼び出すことにより、選択した広告をスクロール・バーに表示する（詳細は後述する）。いったんコンストラクションがなされると、スクロール・バーの制御は、イベント・ハンドラ・ルーチン１０２に渡る。
【００３５】
イベント・ハンドラ・ルーチン１０２は、ループ内での動作として示されている。上記ループ内では、ブロック１１０で新しいイベントを待ち受けており、到来するイベントは、各々、ブロック１１２〜１２６のうちの１つによって解読されて処理される。ブロック１１２〜１２４は、本発明に係る多数の機能をインプリメントするいくつかのイベントを表している。通常、従来のスクロール・バーによって処理される残り全部のイベントも、スクロール・バー・オブジェクト４０に渡すことができる。このようなイベントの従来の方法での処理は、ブロック１２６で代表されている。
【００３６】
スクロール・バー・オブジェクト４０によって処理される特別のイベントの１つにリフレッシュ・イベントがある。リフレッシュ・イベントは、ブロック１１２で検出され、ルーチン１０６および１０８を連続して呼び出すことにより処理され、スクロール・バーを再表示し、その上に広告を再表示する。次いで、制御は、ブロック１１０に渡り、新たなイベントを待ち受ける。
【００３７】
スクロール・バー・オブジェクト４０によって処理される別のイベントにデフォルト変更イベントがある。デフォルト変更イベントは、ブロック１１４で検出され、ブロック１２８でスクロール・バー・オプション・ダイアログを開くことにより処理される。同ダイアログによって、ユーザは様々なスクロール・バー・オプションを選択することができる。いったんスクロール・バー・オプション・ダイアログでユーザの選択がなされると、制御はブロック１３０に渡り、それらの選択値をスクロール・バーのデフォルト値として格納する。次いで、制御はブロック１１０に戻る。デフォルト変更イベントの開始は、多くの方法で処理することができる。例えば、親ウインドウのメニュー・オプションを選択することより、または、スクロール・バーに関連するポップアップ・メニューでオプションを選択することにより、あるいは当技術分野で知られている他の方法で処理することができる。
【００３８】
スクロール・バー・オブジェクト４０によって処理される別のイベントに新広告イベントがある。新広告イベントは、ブロック１１６で検出され、制御をブロック１３２に渡してアカウント・ファイルから新広告を選択することにより処理される。いったん新広告が選択されると、制御はブロック１３４に渡りリフレッシュ・イベントをスクロール・バーに送る。リフレッシュ・イベントは、ブロック１１２に関連して上述したように処理される。次いで、制御はブロック１１０に戻る。
【００３９】
アカウント・ファイルからの新広告の選択は、上のブロック１０４での最初の広告の選択と同様に、多くのアクティビティに応答して行なうことができる。新広告の選択は、スクロール・バーが生成されるごとにランダムな広告が表示されるように、ランダムに行なうことができる。さらに、スクロール・バーに表示される広告は、例えばタイマーの満了に応答して定期的に更新することができる。また、広告の選択は、例えばウインドウの特定のコンテントに基づく文脈依存にすることもできる。１つの例として、ブラウザ・ウインドウが特定の会社のウェブ・サイトからのドキュメントを表示している場合、当該会社に関連する広告を選択することが望ましいことがあり得るし、あるいは逆に、当該会社の競業会社の１つに関連する広告を選択することが望ましいこともあり得る。インプリメンテーションの中には、ウインドウに新しいドキュメントが表示されるごとに新広告を選択するのが望ましいものもある。これらの代わりに、スクロール・バー内の広告をリフレッシュすること、および広告のコンテントとスクロール・バーによって操作されているコンテントとを関連付けることの双方を制御する別の方法を用いることができる。
【００４０】
また、次の点を認識することができる。すなわち、インプリメンテーションの中には、広告をアカウント・ファイルに付加し、および／またはアカウント・ファイルから削除することができるように、アカウント・ファイル管理機能を含めるのが望ましいことがあり得る、というものもある。さらに、広告が所定のアクションに応答してアカウント・ファイルに自動的に格納されるようなユーザには、広告を「プッシュ」するのが望ましい、ということもあり得る。
【００４１】
一例として、広告の情報は、ユーザが取り出したドキュメント（例えばインターネットから取り出したハイパーテキスト・ドキュメント）の中で解読することができる。このようなインプリメンテーションによれば、広告の作成者は、ドキュメントに関連してどのような広告を表示させるかということを制御することができるようになる。このような情報は、例えばＨＴＭＬ（hypertext markup language)タグを使うことにより、または、ＸＭＬ（extensible markup language) タグのような他の埋め込みコードを使うことにより、ドキュメント中に埋め込むことができる。これらの代わりに、スクロール・バーによって使用するために広告を提供する他の方法を用いることもできる。
【００４２】
図５に戻って、スクロール・バー・オブジェクト４０によって処理することのできる別のイベントの組に、ポインタ・オーバー・イベントおよびポインタ・アウト・イベントがある。これらは、ブロック１１８およびブロック１２０でそれぞれ検出される。ポインタ・オーバー・イベントは、ユーザがスクロール・バーの外部に位置しているポインタをスクロール・バーのディスプレイ表示の上に移動させるのに応答して生成される。逆に、ポインタ・アウト・イベントは、ポインタがスクロール・バーのディスプレイ表示から離れて動くのに応答して生成される。
【００４３】
ポインタ・オーバー・イベントおよびポインタ・アウト・イベントは、オプションの隠しパック機能を管理するのに使う。隠しパック機能は、ポインタがスクロール・バーのディスプレイ表示内に配置されている時だけパックを表示するのに使う。こうすることにより、ポインタがスクロール・バーのディスプレイ表示内に配置されている時だけスクロール・バーに表示されている広告を塞ぐようにパックを構成することができる。これにより、ユーザがスクロール・バーを活発に操作していない時には、スクロール領域を塞がれていない状態にしておくことができる。説明中のインプリメンテーションでは、隠しパック機能はオプションである。そこで、ポインタ・オーバー・イベントに応答して、制御はブロック１３６に渡され、隠しパック機能が有効であるか否かを判定する。Ｙｅｓならば、ブロック１３８でパックを現在の位置に表示する。そして、制御はブロック１１０に戻る。しかし、隠しパック機能のオプションが有効でない場合には、ブロック１３８はバイパスされる。したがって、スクロール・バーのディスプレイ表示がポインタ・オーバー・イベントに応答して変更されることはない。
【００４４】
ポインタ・アウト・イベントに応答して、制御はブロック１４０に渡され、ここでも隠しパック機能が有効であるか否かを判定する。Ｙｅｓならば、ブロック１４２で、パックはスクロール・バーのディスプレイ表示から取り除かれる。そして、制御はブロック１１０に戻る。しかし、隠しパック機能が有効でない場合には、ブロック１４０は、ブロック１４２をバイパスし、制御をブロック１１０に直接戻す。
【００４５】
ブロック１２２は、スタート・パック・ドラッグ・イベントを検出する。ブロック１２４は、エンド・パック・ドラッグ・イベントを検出する。スタート・パック・ドラッグ・イベントは、スクロール・バーのパックに向けられたドラッグ操作の開始を表わす。エンド・パック・ドラッグ・イベントは、スクロール・バーのパックに向けられたドラッグ操作の終了を表わす。通常、スタート・パック・ドラッグ・イベントは、ポインタがパックの上に配置されている間にユーザがマウス・ボタンを押すと生成される。エンド・パック・ドラッグ・イベントは、通常、ユーザがパックを望みの場所に移動させた後、マウス・ボタンを放すと生成される。
【００４６】
スタート・パック・ドラッグ・イベントおよびエンド・パック・ドラッグ・イベントは、本発明に係る、スクロール・バーの別のオプション機能をインプリメントするのに使う。特に、これらのイベントは、スクロール・バーのパックの上に広告を表示するのを制御するのに使う。この制御は、ユーザがパック上でドラッグ操作を現在行なっているか否かに基づいて、主パック・イメージと副パック・イメージとを交替させることにより行なう。
【００４７】
具体的には、スタート・パック・ドラッグ・イベントに応答して、ブロック１２２が制御をブロック１４４に渡し、オプションのパック広告機能が有効になっているか否かを判定する。Ｙｅｓならば、制御はブロック１４６に渡り、代替パックイメージ（広告レコードのフィールド８８に格納されている（図４））を表示する。次いで、制御をブロック１１０に戻す。しかし、パック広告機能が有効になっていない場合には、制御はブロック１４６をバイパスしてブロック１１０に戻る。
【００４８】
同様に、エンド・パック・ドラッグ・イベントに応答して、ブロック１２４が制御をブロック１４８に渡し、オプションのパック広告機能が有効になっているか否かを判定する。Ｙｅｓならば、制御はブロック１５０に渡り、関連する広告レコード（図４）のフィールド８６に格納されている主パック・イメージを再度表示する。次いで、制御はブロック１１０に戻る。ブロック１４８に戻って、パック広告機能が有効になっていない場合には、制御はブロック１５０をバイパスしてブロック１１０に直接戻る。
【００４９】
スクロール・バーに関連する追加の機能を処理するために、パック位置更新プログラム・コードを用い、他の型のイベント（例えばスタート・パック・ドラッグ・イベント操作とエンド・パック・ドラッグ・イベント操作との間におけるパックの移動）に応答してスクロール・バーを更新する。
【００５０】
例えば、ブロック１５２で示すように、他の型のイベントの処理が完了すると、イベントによってパックの移動がもたらされたか否かが判定される。Ｎｏならば、制御はブロック１１０に戻る。しかし、パックが移動した場合には、制御はブロック１５４に渡り、背景広告機能が有効であるか否かを判定する。背景広告機能とは、パックの位置に基づいて選択される多数の背景広告をサポートする機能である。そこで、背景広告機能が有効である場合、広告表示ルーチン１０８が呼び出され、パックの新しい位置を反映するために背景広告が更新されていることを確実にする。次いで、制御はブロック１５６に渡る。さらに、背景広告機能が有効でない場合には、ブロック１５４は、ルーチン１０８をバイパスして制御をブロック１５６に直接渡す。
【００５１】
ブロック１５６はスクロール・バーの別のオプション機能であるクリア・パック機能を示している。クリア・パック機能は、パック部分の背景広告が「透けて見える」ようにするために使う（この機能を使わないと上記背景広告はパックによって塞がれる）。
【００５２】
クリア・パック機能は、説明中のインプリメンテーションでは、オプションである。そこで、ブロック２５６で、クリア・パック機能が有効であるか否かを判定している。Ｎｏの場合、制御はブロック１１０に戻る。しかし、クリア・パック機能が有効である場合には、制御は、ブロック１５８に渡り、パックの現在位置の背後のスクロール・バーに表示されている広告の部分を測定する。広告イメージのこのような部分を引き抜いた後、それをパックの中心部上に再び描く。この結果、パックの境界部だけがフレームとして表示されたまま残される。したがって、ユーザは、パックの範囲を確認することができると共に、なおも広告イメージの大部分を相対的に塞がれていない状態で見ることができる。ブロック１５８の処理が完了すると、制御はブロック１１０に戻って新たなイベントを処理する。
【００５３】
図６は、デフォルト変更イベント（図５のブロック１２８）に応答して開かれるスクロール・バー・オプション・ダイアログ・ボックス１７０の好適なディスプレイ表示を示している。上述したように、スクロール・バーに対して、いくつかのオプション機能を使うことができる。その中には、背景広告機能、パック広告機能、クリア・パック機能、および隠しパック機能がある。これらの機能の各々は、対応するチェック・ボックス１７２〜１７８を使って選択的に有効または無効にすることができる。オプションの確認は「ＯＫ」ボタン１８０を選択することにより行なう。一方、スクロール・バーに対して選定の変更をせずにダイアログ・ボックス１７０から抜け出すには、キャンセル・ボタン１８２を選択する。
【００５４】
この代わりに、オプションを選択するのに他の方法を用いることができる点を認識すべきである。さらに、スクロール・バー・オプション・ダイアログは、コンピュータ・ディスプレイ上に表示されている全てのスクロール・バー用に選択したオプションを表示することができる。この代わりに、特定のウインドウ内のスクロール・バー用にオプションを設定することができる。あるいは、スクロール・バーごとに個々のスクロール・バー用にオプションを設定することもできる。さらに、次の点を認識すべきである。すなわち、様々なオプション機能は、二者択一的に有効にすることができる（例えばクリア・パック機能が有効である時はいつでも隠しパック機能を有効にするのを禁止する、など）。また、次の点も認識すべきである。すなわち、インプリメンテーションによっては、様々なオプション機能を選択的に取り除くことができる；あるいは、常に有効にすることもできる；これにより、オプション機能を有効にするコントロールの表示を省略することができる。さらに、隠しパック機能を使わなくとも、ユーザは、パック広告および背景広告のどちらかを選択することができる。この場合、パック広告機能が有効であるときには、ポインタの位置に関係なく、パック上にパック広告が表示される。この他の変更は、当業者にとって自明である。
【００５５】
図７は、スクロール・バー表示ルーチン１０６を詳細に示す図である。スクロール・バー表示ルーチン１０６は、ブロック２００でスクロール・バーの背景を表示することにより開始する。スクロール・バーの背景には、スクロール領域に加え、例えば矢印ボタンなどのような関連するコントロールは何でも含まれる。次いで、ブロック２０２でパックをその現在位置に表示する。ブロック２００およびブロック２０２で実行されるオペレーションは、スクロール・バーの技術分野では周知である点を認識すべきである。
【００５６】
続いて、ブロック２０４で、隠しパック機能が有効であるか否かを判定する。Ｙｅｓならば、制御はブロック２０６に渡り、ポインタがスクロール・バーの上に配置されているか否かを判定する。Ｙｅｓならば、それ以上のオペレーションは必要ないので、スクロール・バー表示ルーチン１０６は終了する。しかし、ポインタがスクロール・バーの上に配置されていない場合には、制御はブロック２０８に渡り、パックをディスプレイから取り除く。これにより、スクロール・バー表示ルーチン１０６は完了する。
【００５７】
ブロック２０４に戻って、隠しパック機能が有効でない場合、制御はブロック２１０に渡り、クリア・パック機能が有効であるか否かを判定する。クリア・パック機能が有効でない場合、スクロール・バー表示ルーチン１０６は終了する。しかし、クリア・パック機能が有効てある場合には、制御は、ブロック２１２に渡りパックの背後の背景イメージを抜き出した後、ブロック２１４に渡りパックの境界部だけはディスプレイ上に残るようにして、抜き出した背景イメージの部分をパックの中心部に張り付ける。次いで、スクロール・バー表示ルーチン１０６は完了する。
【００５８】
他の実施形態として、始めに従来のパックを描画せずに、ポインタの位置が決定した後にだけべたのパックを描画する（隠しパック機能の場合）、または、パックの境界部だけを描画する（クリア・パック機能の場合）ことにより、隠しパック機能およびクリア・パック機能をインプリメントするのが望ましいことがあり得る。
【００５９】
続いて、図８は、広告表示ルーチン１０８を詳細に示す図である。広告表示ルーチン１０８は、ブロック２２０で背景広告機能が有効であるか否かを判定することにより開始する。Ｙｅｓならば、制御はブロック２２２に渡り、パックの位置およびスクロール領域のサイズを計測する。さらに、可変サイズ・パックの場合には、このステップでパックの相対サイズを決定することもできる。
【００６０】
次に、ブロック２２４で、背景イメージがスクロール・バーのスクロール領域に１回超だけ適合できるか否かを判定する（１回超だけ適合できるとは、背景イメージ全体の少なくとも１つのコピーがディスプレイ上で塞がれることがない、といった意味である）。Ｙｅｓならば、制御はブロック２２６に渡り、スクロール・バーのスクロール領域に背景イメージをタイル張りする。次いで、制御はブロック２２８に渡り、パック広告機能が有効であるか否かを判定する。Ｙｅｓならば、制御はブロック２３０に渡り、パックのサイズを変更し（必要な場合）、パックに主パック・イメージを表示する。ブロック２３０が完了すると、広告表示ルーチン１０８は完了する。また、ブロック２２８でパック広告機能が有効でないことが判明した場合、広告表示ルーチン１０８は完了する。
【００６１】
ブロック２２４に戻って、背景イメージがスクロール・バーのスクロール領域に１回超だけ適合しない場合、制御はブロック２３２に渡り、副背景イメージのリンクされたリストを巡回して、スクロール・バーのスクロール領域に１回超だけ適合するものがあるか否かを判定する。具体的には、ブロック２３２では副背景イメージのリンクされたリストから次の副背景イメージ（初回は、第１の副背景イメージ）を取得し、制御をブロック２３４に渡し、上記副背景イメージがスクロール領域に１回超だけ適合するか否かを判定する。Ｙｅｓならば、制御はブロック２３６に渡り、スクロール・バーのスクロール領域に上記副背景イメージをタイル張りする。次いで、制御はブロック２２８に渡る。ブロック２３４に戻り、上記副背景イメージがスクロール・バーのスクロール領域に１回超だけ適合しない場合、制御はブロック２３８に渡り、パックが上記副背景イメージに関連する範囲内にあるか否かを判定する。様々なアプリケーションにおいて、パックを、当該パックの一端の位置、当該パックの中心の位置、または当該パックの両端の位置に基づく範囲内に存在すべきものと決めることができる。
【００６２】
上記判定の結果、Ｙｅｓならば、制御はブロック２３６に渡り、スクロール・バーに上記副背景イメージをタイル張りする。Ｎｏならば、制御はブロック２４０に渡り、新たな副背景イメージを処理する。このような背景イメージがそれ以上存在しない場合、制御はブロック２３２に渡り、次の副背景イメージを取得する。しかし、いったん上記リンクされたリスト中の副背景イメージが全て処理されると、制御はブロック２４０に渡り、最後の副背景イメージをスクロール・バーにタイル張りする。
【００６３】
図９（ａ）〜図１２（ｂ）は、上述した機能を詳細に示す図である。具体的には、図９（ａ）および図９（ｂ）は、隠しパック機能を詳細に示す図である。図９（ａ）に示すように、スクロール領域２５２および矢印ボタン２５４、２５６を備えたスクロール・バー２５０は、背景イメージ２５７を備えている。ポインタ２５８がスクロール・バー２５０のディスプレイ表示の外部に配置されている時はいつでも、背景イメージ２５７はパックによって塞がれていない。しかし、図９（ｂ）に示すように、ポインタ２５８がスクロール・バー２５０のディスプレイ表示の上（２５８’で示す位置）に移動すると、パック２５９がディスプレイ上で見えるようになる。そして、いったんポインタ２５８がスクロール・バー２５０のディスプレイ表示の外に移動すると、パック２５９は消えて無くなる。
【００６４】
図１０（ａ）および図１０（ｂ）は、上述したパック広告機能を示す図である。具体的には、図１０（ａ）に示すように、スクロール・バー２６０は、スクロール領域２６２、矢印ボタン２６４、２６６、およびパック２６８を備えている。また、ポインタ２５８も、スクロール・バー２６０の表示領域の外部に表示されているように示してある。ポインタ２４８がこの領域にあり、スクロール・バー２６０に対してドラッグ操作がなされていない場合、パック２６８の上には第１のパック・イメージ（すなわち主パック・イメージ）２６９が表示されている。このインプリメンテーションでは、主パック・イメージとして白地イメージが表示されている。
【００６５】
図１０（ｂ）に示すように、いったんポインタ２５８がパック２６８の上に移動しドラッグ操作が開始される（例えばマウス・ボタンを押すことにより）と、パック２６８の上には代替パック・イメージ２６９’が表示される。
【００６６】
無論、ドラッグ操作が完了すると（例えばユーザがマウス・ボタンを放すと）、始めのパック・イメージすなわち主パック・イメージ２６９が表示される。
【００６７】
次に、図１１は、クリア・パック機能を示す図である。スクロール領域２７２および矢印ボタン２７４、２７６を備えたスクロール・バー２７０は、中央領域２７８ａを有するパック２７８を備えている。中央領域２７８ａ内には、その下にある背景イメージ２７９の部分が表示されている。パック２７８のフレームすなわち縁がまだ表示されており、パック２７８の境界を画している。しかし、下にある背景イメージ２７９の大部分は、まだ見ることができる、ということが分かる。
【００６８】
図１２（ａ）および図１２（ｂ）は、パックの位置に基づいて表示される副背景イメージの使い方を示す図である。具体的には、図１２（ａ）に示すように、スクロール・バー２８０は、スクロール領域２８２、矢印ボタン２８４、２８６、およびパック２８８を備えている。第１の背景イメージ２８７が、２８７ａおよび２８７ｂで画定された範囲を有するものとして表示されている。パックは第１の背景イメージ２８７の上記範囲の外に配置されている点に留意すべきである。
【００６９】
次に、図１２（ｂ）に示すように、パックが２８８’で示す位置に移動すると、２８７ａ’から２８７ｂ’までの範囲を有する別の第２の背景イメージ２８７’が図１２（ａ）に示す第１の背景イメージ２８７の代替物として表示される。これにより、スクロール・バーは、パックの移動に応答して背景イメージが移動するという視覚上の印象を与えることになる。
【００７０】
次の点を認識すべきである。すなわち、何らかの数の背景イメージを使うと、パックの位置に基づく異なった時間間隔で広告を配置することができるようになる。さらに、スクロール領域全体を占めるイメージを保持しておくのではなく、その代わりに各イメージの境界の座標を保持しておき、スクロール・バーの１個所だけにイメージを表示し、表示されたイメージによってオーバーラップされる領域以外の領域に表示されているスクロール領域の最初の背景はそのままにしておくことが望ましいこともあり得る。このようなインプリメンテーションでは、ただ１つのイメージを様々な座標の組に関係付けることができる。この場合、パックの位置に基づいて、異なった座標の組を使ってイメージを表示することになる。
【００７１】
さらに、イメージをタイル張りしてスクロール領域を占有するのではなく、例えば、スクロール領域の軸に沿ってイメージを引き伸ばすことにより、１つのイメージだけを巧みに扱うことができる。また、実例の中には、イメージがスクロール軸に沿って引き伸ばされたときに、イメージのアスペクト比（縦横比）が保存されるように、（スクロール軸を横切る方向の）スクロール・バーの幅を自動的にサイズ変更するのが望ましいこともあり得る。さらに、インプリメンテーションの中には、パックが異なった場所に配置されたときに異なった広告が表示されるような様々な副イメージとして完全に別々の広告イメージを使うのが望ましいものもあり得る。また、パックのサイズも、パック広告のサイズに基づいてダイナミックに調整することができる。
【００７２】
上述した機能は、各々、互いに独立に使うことができる点も認識すべきである。また、残り全ての変更は、当業者とって自明である。したがって、本発明は、特許請求の範囲の中に存在する。
【図面の簡単な説明】
【図１】  本発明に係るネットワーク・コンピュータ・システムのブロック図である。
【図２】  図１のネットワーク・コンピュータ・システムに由来する１つのコンピュータ用の典型的なハードウェア環境およびソフトウェア環境のブロック図である。
【図３】  その上に図２のブラウザ用のブラウザ・ウインドウが表示され、本発明に係るスクロール・バーを備えたコンピュータ・ディスプレイのブロック図である。
【図４】  図２のアカウント・ファイルに由来する代表的な広告レコードのブロック図である。
【図５】  図２のスクロール・バーのプログラム・フローを示すフローチャートを示す図である。
【図６】  図２のスクロール・バー用のディスプレイ・オプションを変更するのに使用するスクロール・バー・オプション・ダイアログ・ボックスのブロック図である。
【図７】  図５で参照されるスクロール・バー表示ルーチンのプログラム・フローを示すフローチャートを示す図である。
【図８】  図５で参照される広告表示ルーチンのプログラム・フローを示すフローチャートを示す図である。
【図９】  隠しパック機能を示す、本発明に係るスクロール・バーのブロック図である。
【図１０】  パック広告機能を示す、本発明に係る別のスクロール・バーのブロック図である。
【図１１】  クリア・パック機能を示す、本発明に係るさらに別のスクロール・バーのブロック図である。
【図１２】  位置敏感性背景広告機能を示す、本発明に係る追加のスクロール・バーのブロック図である。
【符号の説明】
１０…コンピュータ・システム、１２…クライアント・コンピュータ、１４…クライアント・コンピュータ、１６…サーバ、１８…ネットワーク、２０…クライアント・コンピュータ、２１…中央処理装置（ＣＰＵ）、２２…コンピュータ・ディスプレイ、２３…ストレージ装置、２４…プリンタ、２６…マウス、２７…キーボード、３０…装置（コンピュータ）、３１…プロセッサ、３２…メモリ、３３…ユーザ入力装置、３４…ディスプレイ、３５…大容量記憶装置（マス・ストレージ）、３６…ネットワーク、３８…オペレーティング・システム、４０…スクロール・バー、４２…ブラウザ、５０…コンピュータ・ディスプレイ、５２…ＧＵＩウインドウ、５４…ハイパーテキスト・ドキュメント、５６…ポインタ、６０…スクロール・バー、６２…広告、６４…スクロール領域、６６…パック、６８…矢印ボタン、７０…矢印ボタン、８０…広告レコード、８２…フィールド、８４…フィールド、８６…フィールド、８８…フィールド、９０…フィールド、９２…副背景イメージ・レコード、９４…副背景イメージ・フィールド、９６…範囲フィールド、９８…続きフィールド。
【図１】
0003755122.tif 000002
【図２】
0003755122.tif 000003
【図３】
0003755122.tif 000004
【図４】
0003755122.tif 000005
【図５】
0003755122.tif 000006
【図６】
0003755122.tif 000007
【図７】
0003755122.tif 000008
【図８】
0003755122.tif 000009
【図９】
0003755122.tif 000010
【図１０】
0003755122.tif 000011
【図１１】
0003755122.tif 000012
【図１２】
0003755122.tif 000013