(57)【要約】【課題】表示対象データをスクロールしながら表示させる際に、ユーザによる微調整なしに、該データの中の目的位置が表示開始位置になるように制御する。【解決手段】基準位置情報取得部１４０は、表示対象データに対して設定された、該表示対象データ内の１つ以上の基準位置を示す基準位置情報を取得して基準位置情報保持部１５０に保持する。制御実行部１６０は、入力部１９０がスクロール指示を受け付けた際に、現在の表示開始位置と、スクロール指示通りにスクロールした場合の表示開始位置との間に、基準位置情報保持部１５０に保持された基準位置情報が示す基準位置が存在するか否かを確認し、存在するときには、該基準位置のうちの、現在の表示開始位置に最も近い基準位置がスクロール後の表示開始位置になるようにスクロールし、存在しないときには、スクロール指示通りにスクロールするように制御を行う。【選択図】図１
2011141620.tif 000002
【特許請求の範囲】
【請求項１】
表示対象データの表示開始位置を移動させるスクロールを制御するスクロール制御装置であって、
前記表示対象データに対して設定された、該表示対象データ内の１つ以上の基準位置を示す基準位置情報を取得する基準位置情報取得部と、
スクロール指示がなされた際に、現在の表示開始位置と、前記スクロール指示通りにスクロールした場合の表示開始位置との間に、前記基準位置情報取得部により取得された基準位置情報が示す基準位置が存在するか否かを確認し、存在するときには、該基準位置のうちの、現在の表示開始位置に最も近い基準位置がスクロール後の表示開始位置になるようにスクロールがなされ、存在しないときには、スクロール指示通りにスクロールがなされるように制御を行う制御実行部とを備えることを特徴とするスクロール制御装置。
【請求項２】
前記表示対象データは、前記基準位置情報を示しうる付属情報が設定されており、
前記基準位置情報取得部は、前記付属情報を取得して該付属情報から前記基準位置情報を得ることを特徴とする請求項１に記載のスクロール制御装置。
【請求項３】
表示対象データの表示開始位置を移動させるスクロールを制御するスクロール制御方法において、
前記表示対象データに対して設定された、該表示対象データ内の１つ以上の基準位置を示す基準位置情報を取得し、
スクロール指示がなされた際に、現在の表示開始位置と、前記スクロール指示通りにスクロールした場合の表示開始位置との間に、前記基準位置情報が示す基準位置が存在するか否かを確認し、存在するときには、該基準位置のうちの、現在の表示開始位置に最も近い基準位置がスクロール後の表示開始位置になるようにスクロールがなされ、存在しないときには、スクロール指示通りにスクロールがなされるように制御を行うことを特徴とするスクロール制御方法。
【請求項４】
前記表示対象データは、前記基準位置情報を示しうる付属情報が設定されており、
前記付属情報を取得して該付属情報から前記基準位置情報を得ることを特徴とする請求項３に記載のスクロール制御方法。
【請求項５】
表示対象データの表示開始位置を移動させるスクロールの制御のためのプログラムであって、
前記表示対象データに対して設定された、該表示対象データ内の１つ以上の基準位置を示す基準位置情報を取得し、
スクロール指示がなされた際に、現在の表示開始位置と、前記スクロール指示通りにスクロールした場合の表示開始位置との間に、前記基準位置情報が示す基準位置が存在するか否かを確認し、存在するときには、該基準位置のうちの、現在の表示開始位置に最も近い基準位置がスクロール後の表示開始位置になるようにスクロールがなされ、存在しないときには、スクロール指示通りにスクロールがなされるように制御する処理をコンピュータに実行させることを特徴とするプログラム。
【請求項６】
前記表示対象データは、前記基準位置情報を示しうる付属情報が設定されており、
前記付属情報を取得して該付属情報から前記基準位置情報を得ることを特徴とする請求項５に記載のプログラム。
【請求項７】
表示装置と、
表示対象データを前記表示装置に表示させる際の、前記表示対象データの表示開始位置を移動させるスクロールの制御を行う制御実行部と、
前記表示対象データに対して設定された、該表示対象データ内の１つ以上の基準位置を示す基準位置情報を取得する基準位置情報取得部とを備え、
前記制御実行部は、スクロール指示がなされた際に、現在の表示開始位置と、前記スクロール指示通りにスクロールした場合の表示開始位置との間に、前記基準位置情報取得部により取得された基準位置情報が示す基準位置が存在するか否かを確認し、存在するときには、該基準位置のうちの、現在の表示開始位置に最も近い基準位置がスクロール後の表示開始位置になるようにスクロールがなされ、存在しないときには、スクロール指示通りにスクロールがなされるように制御を行うを特徴とする情報処理装置。
【請求項８】
前記表示対象データは、前記基準位置情報を示しうる付属情報が設定されており、
前記付属情報を取得して該付属情報から前記基準位置情報を得ることを特徴とする請求項７に記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データを画面に表示する際のスクロール制御技術に関する。
【背景技術】
【０００２】
表示装置を備えたコンピュータなどの表示システムにおいて、表示装置の一画面に全データを表示しきれない場合に、画面に表示されたスクロールバーに対するユーザ操作などに応じて表示画面を縦横に移動して表示されていないデータ部分を表示することが行われている。この画面の移動は、スクロールと呼ばれる。なお、「画面の移動」とは、データの表示開始位置の移動と同じ意味である。
【０００３】
１回分のスクロール量の決定手法は、いくつか知られている。例えば、ユーザがスクロールバーに備えられたスライダーを用いて自由にスクロール量を指示することができるシステムでは、ユーザが指示した分だけスクロールすることが行われている。また、スクロールバーに備えられたスクロールボタンの１回の押下に応じてシステム規定の一定量の分スクロールすることも行われている。さらに、一画面の表示量より小さい分割量に全データ量を等分割し、分割量ずつスクロールすることも知られている。
【０００４】
また、特許文献１には、データに含まれる無効データの部分を飛ばし、有効データを迅速に表示する技術が開示されている。図１２を参照して説明する。
【０００５】
図１２は、特許文献１における図１０であり、データ１５０１（データ量Ｈ）を表示する際のスクロールの態様を示す。データ１５０１は、等分割によって決定された１回分のスクロール量がｈであるとされている。また、データ１５０１において、領域Ｂ１〜Ｂ４のデータがユーザから画面表示不要と指定されたデータ（無効データ）であり、領域Ａ１〜Ａ４のデータが表示対象のデータ（有効データ）である。この場合、特許文献１の手法は、スクロール量を順に、ｈ、ｈ１、ｈ、ｈ、ｈ、ｈ２、ｈ２、・・・と決定してスクロールを行う。すなわち、現在の表示開始位置からデフォールトの一定のスクロール量ｈだけスクロールしたときに、新たな表示開始位置が領域Ｂ１〜Ｂ４のいずれかの内側に入る場合は、スクロール量を増やして（ｈ１、ｈ２、ｈ３、ｈ４）、新たな表示開始位置が領域Ｂの最後尾位置になるようにする。
【０００６】
例えば、現在の表示開始位置が領域Ａ１の先頭であるときに、１回のスクロールでｈの分スクロールしても、新たな表示開始位置が相変わらず領域Ａ１の中である。しかし、次のスクロールのスクロール量もｈとすると、スクロール後の表示開始位置が無効データＢ１の内側になる。このとき、新たな表示開始位置が領域Ｂ１の最後尾位置になるように、次のスクロールのスクロール量をｈ１に決定する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００２−２４４６４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ところで、例えばプログラムのデバッグなどの際に、膨大な量の有効データの中のある位置（目的位置という）からのデータの表示に際して、該目的位置のデータが表示された状態で、目的位置以降のデータをできるだけ多く表示させたい場合がある。図１３に示すデータの例を参照して説明する。
【０００９】
プログラムのデバッグのデータは、通常膨大な量を有し、一画面では表示しきれない。そのため、スクロールしながら表示させることになる。図１３に示すデータＡは、このようなデータであり、例えば確認の便宜のため、位置ｂのデータが表示されると共に、位置ｂからのデータができるだけ多く表示されるようにしたい場合がある。すなわち、スクロールする際に、位置ｂが表示開始位置になれるようにスクロールすることが要望されている。
【００１０】
図１４は、一度のスクロール量が任意に指定できず、固定のｈである場合のデータＡのスクロール態様の例を示す。図中矢印は、スクロールの方向を示す。
【００１１】
図１４の例に示すように、まず、データの先頭位置ａ０が表示開始位置になり、ａ０からデータが表示される。そして、１回目のスクロールにより位置ａ１が表示開始位置になり、ａ１からデータが表示される。スクロールが続き、８回目のスクロールにより位置ａ８が表示開始位置になり、ａ８からデータが表示される。このとき、位置ｂのデータが表示されるものの、ｂが表示開始位置ではない。９回目のスクロールをすると、位置ａ９が表示開始位置になり、ｂのデータが表示されなくなる。すなわち、一度のスクロール量が任意に指定できず、固定量のスクロールしかできない場合には、上記要望に応えることができない。
【００１２】
スクロール量を任意に指定できる場合には、上記要望に応えることができる。図１５と図１６は、この場合のスクロール態様の例を示す。
【００１３】
図１５は、固定量ずつのスクロールと、任意のスクロール量のスクロールとを組み合わせた場合の例である。図１５に示す例では、８回目のスクロールまでは図１４に示す例と同じである。８回目のスクロールにより表示開始位置がａ８になり、位置ｂのデータが表示された状態で、ユーザが次のスクロールの量をｈ１に指定することにより、位置ｂを表示開始位置とすることができる。
【００１４】
図１６は、固定量ずつのスクロールをせずに、ユーザが任意のスクロール方向と量を指示して、位置ｂを探し当てて表示開始位置にする場合のスクロール態様の例である。図１４と図１５に示す例と同様に、まず、データの先頭位置ａ０が表示開始位置になり、ａ０からデータが表示される。そして、ユーザがスクロール量ｋ１を指定して１回目のスクロールがなされる。その結果、位置ｂ１が表示開始位置になる。次に、ユーザがスクロール量ｋ２を指定して２回目のスクロールがなされる。その結果、位置ｂ２が表示開始位置になる。このとき、位置ｂのデータがまだ表示されていないとする。
【００１５】
ユーザがさらにスクロール量ｋ３を指定して３回目のスクロールがなされる。その結果、位置ｂ３が表示開始位置になり、位置ｂのデータの表示が飛ばされてしまう。これに気付き、ユーザが逆方向にｋ４の分スクロールするよう指示し、４回目のスクロールがなされる。その結果、位置ｂ４が表示開始位置になり、位置ｂのデータも表示される。
【００１６】
この状態で、ユーザがスクロール量ｋ５を指示してスクロールさせることにより、位置ｂを表示開始位置とすることができる。
【００１７】
しかし、図１５と図１６に示す例から分かるように、目的位置（位置ｂ）が表示開始位置になるようにすることができるものの、ユーザによる微調整が必要である。表示対象データの量が膨大である場合や、位置ｂのような目的位置が多い場合には、上記のような微調整がユーザに大きな負担を与えてしまう。
【課題を解決するための手段】
【００１８】
本発明の一つの態様は、表示対象データの表示開始位置を移動させるスクロールを制御するスクロール制御装置である。このスクロール制御装置は、基準位置情報取得部と制御実行部を備える。
【００１９】
基準位置情報取得部は、表示対象データに対して設定された、該表示対象データ内の１つ以上の基準位置を示す基準位置情報を取得する。
【００２０】
制御実行部は、スクロール指示がなされた際に、現在の表示開始位置と、スクロール指示通りにスクロールした場合の表示開始位置との間に、基準位置情報取得部により取得された基準位置情報が示す基準位置が存在するか否かを確認し、存在するときには、該基準位置のうちの、現在の表示開始位置に最も近い基準位置がスクロール後の表示開始位置になるようにスクロールがなされ、存在しないときには、スクロール指示通りにスクロールがなされるように制御を行う。
【００２１】
なお、上記態様のスクロール制御装置を方法やシステムに置き換えて表現したもの、コンピュータを該スクロール制御装置として動作せしめるプログラム、該スクロール制御装置を備えたコンピュータなどの情報処理装置も、本発明の態様としては有効である。
【発明の効果】
【００２２】
本発明にかかる技術によれば、表示対象データをスクロールしながら表示させる際に、ユーザによる微調整なしに、該データの中の目的位置が表示開始位置になるように制御できる。
【図面の簡単な説明】
【００２３】
【図１】本発明の第１の実施の形態にかかる情報処理装置を示す図である。
【図２】図１に示す情報処理装置の表示部の表示画面の例を示す図である。
【図３】図１に示す情報処理装置の記憶部による表示対象データの格納態様の例を示す図である。
【図４】図１に示す情報処理装置のスクロール制御部における基準位置情報取得部を示す図である。
【図５】図１に示す情報処理装置のスクロール制御部における基準位置情報保持部に保持された基準位置情報の例を示す。
【図６】図４に示す基準位置情報取得部の処理を示すフローチャートである。
【図７】図１に示す情報処理装置のスクロール制御部における制御実行部の処理を示すフローチャートである。
【図８】本発明の第２の実施の形態にかかる情報処理装置における表示対象データの格納態様の例を示す図である。
【図９】本発明の第２の実施の形態にかかる情報処理装置における基準位置情報取得部を示す図である。
【図１０】図９に示す基準位置情報取得部の処理を示すフローチャートである。
【図１１】本発明の第３の実施の形態にかかる情報処理装置における制御実行部の処理を示すフローチャートである。
【図１２】特許文献１の技術を説明するための図である。
【図１３】従来技術の問題点を説明するための図である（その１）。
【図１４】従来技術の問題点を説明するための図である（その２）。
【図１５】従来技術の問題点を説明するための図である（その３）。
【図１６】従来技術の問題点を説明するための図である（その４）。
【発明を実施するための形態】
【００２４】
以下、図面を参照して本発明の実施の形態について説明する。説明の明確化のため、以下の記載及び図面は、適宜、省略、及び簡略化がなされている。また、様々な処理を行う機能ブロックとして図面に記載される各要素は、ハードウェア的には、ＣＰＵ、メモリ、その他の回路で構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。
【００２５】
＜第１の実施の形態＞
図１は、本発明の第１の実施の形態にかかる情報処理装置１００を示す。情報処理装置１００は、記憶部１１０、表示部１２０、スクロール制御部１３０、入力部１９０を備える。
【００２６】
記憶部１１０は、ハードディスクやメモリなどであり、表示部１２０に表示させるデータ（表示対象データ）を格納している。
【００２７】
表示部１２０は、記憶部１１０に格納された表示対象データを表示するものであり、例えばモニタや液晶パネルなどである。
【００２８】
入力部１９０は、ユーザが情報処理装置１００に対して種々の入力を行うためのものであり、例えばキーボードやマウスなどの入力デバイスである。これらの入力の中に、後述するスクロール量を含み、すなわち、入力部１９０は、スクロール量の指示を受け付ける受付部でもある。なお、表示部１２０がタッチパネルである場合には、表示部１２０は入力部１９０を兼ねる場合もある。
【００２９】
スクロール制御部１３０は、入力部１９０を介してユーザが行ったスクロール指示に応じて、表示部１２０に対してスクロール制御を行うものであり、基準位置情報取得部１４０と、基準位置情報保持部１５０と、制御実行部１６０を備える。
【００３０】
図２は、本実施の形態の情報処理装置１００における表示部１２０による表示の態様を示す。図示のように、表示部１２０の画面に、データ表示領域１２１には表示対象データの一部分が表示されていると共に、スクロールバー１２２が表示されている。スクロールバー１２２は、スライダー１２４と、２つのスクロールボタン１２３、１２４から構成される。
【００３１】
スクロール指示は、スクロールの実行、スクロールの方向、スクロール量を指示するものであり、入力部１９０を介したスクロールバー１２２の操作により行われる。例えば、スクロールボタン１２３の押下（例えばクリック）は、「上に１回分スクロール」の指示であり、スクロールボタン１２５の押下は、「下に１回分スクロール」の指示である。なお、ここでいう「上」、「下」は、表示対象データにおける表示順の「先」、「後」に対応する。また、１回分のスクロール量は、所定の固定量であってもよいし、表示対象データを等分割した場合の分割単位量であってもよい。なお、この固定量も、分割単位量も、表示部１２０の一画面の表示量以下である。
【００３２】
また、スライダー１２４の移動は、「移動した方向に、移動した分に応じた量スクロールする」指示である。スライダー１２４の移動により、表示部１２０の一画面の表示量以上のスクロール量を指示することができる。
【００３３】
記憶部１１０に記憶された表示対象データと、スクロール制御部１３０の各機能ブロックを詳細に説明しながら、スクロール制御部１３０による制御動作を説明する。
【００３４】
本実施の形態において、表示対象データは、データ本体に基準位置情報が付属されてなる。この基準位置情報は、表示対象データ内の複数の基準位置を示すものであり、例えば表示対象データの作成時に設定されている。これらの基準位置は、表示開始位置になることが期待される位置である。
【００３５】
図３は、表示対象データが記憶部１１０に格納される態様の例を示す。図３において、ａｄｄｒｅｓｓ（ｉ）は、番号ｉの順に連続した記憶領域のアドレスをそれぞれ示す。
【００３６】
図３に示すように、記憶部１１０の１つのアドレス（ａｄｄｒｅｓｓ（ｉ））に、データ本体部「ＤＡＴＡ（ｉ）」とシンボル部との組が１つ格納されている。データ本体部ＤＡＴＡ（ｉ）は、表示対象データのデータ本体の一部であり、ＤＡＴＡ（ｉ）とシンボル部の組を以下「データ組」という。表示対象データは、複数のデータ組から構成される。
【００３７】
シンボルが設定されていない、すなわちシンボル部が空データであることは、該データ組のデータ本体部が基準位置のデータではないことを示す。例えば、ａｄｄｒｅｓｓ（１）に記憶されたＤＡＴＡ（１）や、ａｄｄｒｅｓｓ（８）に記憶されたＤＡＴＡ（８）は、シンボルが設定されておらず、これらのデータは基準位置のデータではない。
【００３８】
また、自身にはシンボルが設定されており、前後のデータ本体部にはシンボルが設定されていないまたは前後のデータ本体部に対して設定されたシンボルが別のシンボルであるデータ本体部の場合には、該データ本体部は、基準位置のデータとなる。例えば、シンボル「ｂｂｂ」が設定されているＤＡＴＡ（７）の場合、その前のＤＡＴＡ（６）にシンボル「ａａａ」が設定されており、後のＤＡＴＡ（８）にシンボルが設定されていない。この場合、ＤＡＴＡ（７）は、基準位置のデータとなる。また、シンボル「ｃｃｃ」が設定されているＤＡＴＡ（１３）の場合、その前後のデータ本体部（ＤＡＴＡ（１２）、ＤＡＴＡ（１３））のいずれにもシンボルが設定されていない。この場合も、ＤＡＴＡ（１３）は、基準位置のデータとなる。
【００３９】
また、連続した複数のアドレスにそれぞれ格納された各データ本体部のいずれに対しても同一のシンボルが設定されており、かつ、該複数のアドレスの先頭アドレスに格納されたデータ本体部の直前のデータ本体部には別のシンボルが設定されているかシンボルが設定されていない場合には、これらの複数のアドレスの先頭のアドレスに格納されたデータ本体部が基準位置のデータになる。例えば、ａｄｄｒｅｓｓ（２）〜ａｄｄｒｅｓｓ（６）に格納されたＤＡＴＡ（２）〜ＤＡＴＡ（６）の全ては、シンボル「ａａａ」が設定されており、かつ、ＤＡＴＡ（２）の前のＤＡＴＡ（１）はシンボルが設定されていない。そのため、ＤＡＴＡ（２）は、基準位置のデータになり、ａｄｄｒｅｓｓ（３）〜ａｄｄｒｅｓｓ（６）に格納されたＤＡＴＡ（３）〜ＤＡＴＡ（６）は、基準位置のデータではない。
【００４０】
スクロール制御部１３０の基準位置情報取得部１４０は、記憶部１１０に記憶された表示対象データから基準位置情報を取得する。図４は基準位置情報取得部１４０の構成を示す。
【００４１】
図４に示すように、基準位置情報取得部１４０は、データ読出部１４２、設定部１４４、判定部１４６、前回シンボル保持部１４８を有する。
【００４２】
データ読出部１４２は、記憶部１１０に格納された表示対象データに対して、データ組のアドレス順に１つずつ読み出してそのアドレスと共に判定部１４６に逐次出力する。なお、最初の読出アドレスは、設定部１４４によりデータ読出部１４２に対して設定される。また、データ読出部１４２は、現在読み出したデータ組のアドレスが表示対象データの最終アドレス、すなわち表示対象データの最後のデータ組を格納したアドレスである場合には、表示対象データの最後まで読出しが終了したことを設定部１４４に通知する。
【００４３】
設定部１４４は、入力部１９０を介してユーザが入力した表示指示に応じてデータ読出部１４２に対して最初の読出アドレスを設定すると共に、読出しを開始させる。通常、この最初の読出アドレスは、表示対象データの先頭のデータ組のアドレス（図３の例の場合、ａｄｄｒｅｓｓ（１））であるが、入力部１９０を介してユーザが表示を開始するデータ組の位置を指定した場合に、設定部１４４は、ユーザが指示した位置のアドレスを最初の読出アドレスとしてデータ読出部１４２に設定する。
【００４４】
判定部１４６は、データ読出部１４２から今回出力されたデータ組に対して、シンボルが含まれているか否かを確認する。シンボルが含まれていなく、すなわちシンボル部には空データが設定されている場合には、判定部１４６は、該データ組に含まれるデータ本体部が基準位置のデータではないと判定する。一方、シンボル部が含まれている、すなわちシンボル部のデータが空ではない場合に、該シンボルと、直前のデータ組のシンボル部のデータとを比較することにより、今回のデータ組に含まれるデータ本体部が基準位置のデータであるか否かを判定する。
【００４５】
今回のデータ組の直前のデータ組のシンボル部のデータは、前回シンボル保持部１４８に保持されている。以下、前回シンボル保持部１４８に保持されているデータを単に前回シンボル保持部１４８の保持データともいう。なお。直前のデータ組のシンボル部のデータが空データである場合には、前回シンボル保持部１４８の保持データも空データである。
【００４６】
判定部１４６の動作をより詳細に説明する。
＜今回のデータ組にシンボルが含まれていない場合＞
この場合は、図３に示す例におけるａｄｄｒｅｓｓ（１）、ａｄｄｒｅｓｓ（８）、ａｄｄｒｅｓｓ（１２）、ａｄｄｒｅｓｓ（１４）に格納されたデータ組が今回のデータ組としてデータ読出部１４２から出力されたときに該当する。
【００４７】
この場合、判定部１４６は、今回のデータ組のデータ本体部が基準位置のデータではないと判定し、基準位置情報の出力をしない。また、判定部１４６は、今回のデータ組のシンボル部のデータが空データであることを前回シンボル保持部１４８に通知し、前回シンボル保持部１４８の保持データを空データに更新する。
【００４８】
＜今回のデータ組にシンボルが含まれており、前回シンボル保持部１４８に保持されているデータが空データである場合＞
この場合は、図３に示す例におけるａｄｄｒｅｓｓ（２）とａｄｄｒｅｓｓ（１３）に格納されたデータ組が今回のデータ組としてデータ読出部１４２から出力されたときに該当する。
【００４９】
この場合、判定部１４６は、今回のデータ組のデータ本体部が基準位置のデータであると判定すると共に、基準位置情報として、該データ組のアドレスを基準位置情報保持部１５０に出力する。そして、前回シンボル保持部１４８の保持データを、今回のシンボルに更新する。
【００５０】
＜今回のデータ組にシンボルが含まれており、前回シンボル保持部１４８に保持されているデータが空データではない＞
この場合は、図３に示す例におけるａｄｄｒｅｓｓ（３）〜ａｄｄｒｅｓｓ（６）、ａｄｄｒｅｓｓ（７）に格納されたデータ組が今回のデータ組としてデータ読出部１４２から出力された場合に該当する。
【００５１】
この場合、判定部１４６は、今回のデータ組に含まれるシンボルと、前回シンボル保持部１４８に保持されている前回のシンボルとを比較し、両者が一致するときには、今回のデータ組のデータ本体部が基準位置のデータではないと判定し、基準位置情報の出力をしない。図３に示す例におけるａｄｄｒｅｓｓ（３）〜ａｄｄｒｅｓｓ（６）は、このようなデータ組に該当する。なお、このとき、前回シンボル保持部１４８の保持データを更新しても、更新前後の保持データが同一であるので、本実施の形態では、処理を速く行うために、この場合には前回シンボル保持部１４８の保持データの更新をしない。
【００５２】
一方、今回のデータ組に含まれるシンボルと、前回シンボル保持部１４８に保持されている前回のシンボルとが異なるときには、判定部１４６は、今回のデータ組のデータ本体部が基準位置のデータであると判定すると共に、基準位置情報として、該データ組のアドレスを基準位置情報保持部１５０に出力する。図３に示す例におけるａｄｄｒｅｓｓ（７）に格納されたデータ組は、このようなデータ組に該当する。
なお、この場合、判定部１４６は、前回シンボル保持部１４８の保持データを、今回のシンボルに更新する。
【００５３】
基準位置情報保持部１５０は、判定部１４６から出力された基準位置情報を保持する。図５は、基準位置情報保持部１５０が基準位置情報を保持する態様の例を示す。基準位置情報保持部１５０は、判定部１４６からの基準位置情報（アドレス）の出力順に各基準位置情報に番号（基準位置番号）を付与して保持する。図３に示す表示対象データの場合、判定部１４６からａｄｄｒｅｓｓ（２）、ａｄｄｒｅｓｓ（７）、ａｄｄｒｅｓｓ（１３）の順の出力がなされる。そのため、基準位置情報保持部１５０は、図５に示すように、ａｄｄｒｅｓｓ（２）、ａｄｄｒｅｓｓ（７）、ａｄｄｒｅｓｓ（１３）に対してそれぞれ基準位置番号「１」、「２」、「３」を付与して、出力順すなわち基準位置番号順に、基準位置番号とアドレスとを対応付けて保持する。
【００５４】
図６は、基準位置情報取得部１４０と基準位置情報保持部１５０による処理の流れを示すフローチャートである。なお、最初の表示開始位置が表示対象データの先頭であるとする。
【００５５】
まず、設定部１４４は、データ読出部１４２に対して、表示対象データの先頭アドレスを最初の読出アドレスとしてデータ読出部１４２に設定して読出しを開始させる（Ｓ１００）
【００５６】
データ読出部１４２は、設定部１４４により設定された読出アドレスに格納されたデータ組（データ本体部とシンボル部のデータ）を読み出して、判定部１４６に出力する（Ｓ１０２）。なお、該読出アドレスが表示対象データの最終アドレスである場合には、データ読出部１４２は、その旨を設定部１４４に通知する。
【００５７】
判定部１４６は、まず、データ読出部１４２から出力された今回のデータ組にシンボルが設定されているか否かを確認する（Ｓ１０４）。
【００５８】
今回のデータ組のシンボル部のデータが空であり、すなわちシンボルが設定されていない場合には、判定部１４６は、前回シンボル保持部１４８の保持データを空データに更新する（Ｓ１０４：Ｎｏ、Ｓ１１４）。
【００５９】
そして、今回のデータ組のアドレスが表示対象データの最終アドレスではなければ、設定部１４４は、次のアドレスを読出アドレスとしてデータ読出部１４２に設定する（Ｓ１１４：Ｎｏ、Ｓ１１６）。これにより、ステップＳ１０２からの処理が繰り返される（Ｓ１０２〜）。一方、今回のデータ組のアドレスが表示対象データの最終アドレスであれば（Ｓ１１４：Ｙｅｓ）、設定部１４４は、処理を終了する。
【００６０】
ステップＳ１０４において、今回のデータ組にシンボルが設定されていると確認された場合に、判定部１４６は、さらに、今回のシンボルと、前回シンボル保持部１４８の保持データ（すなわち直前のデータ組のシンボル部のデータ）とを比較する（Ｓ１０４：Ｙｅｓ、Ｓ１０６）。
【００６１】
今回のシンボルと、前回シンボル保持部１４８の保持データとが異なる場合には、判定部１４６は、今回の読出アドレスを基準位置情報として基準位置情報保持部１５０に出力する（Ｓ１０６：Ｎｏ、Ｓ１０８）。基準位置情報保持部１５０は、判定部１４６から出力された基準位置情報に基準位置番号を付与して登録する（Ｓ１１０）。また、この場合、判定部１４６は、前回シンボル保持部１４８の保持データを今回のシンボルに更新する（Ｓ１１２）。
【００６２】
一方、ステップＳ１０６において、今回のシンボルと、前回シンボル保持部１４８の保持データとが同一である場合には、処理はステップＳ１１４に分岐する（Ｓ１０６：Ｙｅｓ、Ｓ１１４）。
【００６３】
ステップＳ１０２〜Ｓ１１６までは、表示対象データの最終アドレスのデータ組の読出し、シンボルがあるか否かの判定、判定結果に応じた処理の完了まで繰り返される。その結果、表示対象データに対して設定された全ての基準位置の情報が得られて基準位置情報保持部１５０に保持される。
【００６４】
次いでスクロール制御部１３０における制御実行部１６０を説明する。
制御実行部１６０は、入力部１９０から表示指示が入力されたときに、記憶部１１０に格納された表示対象データの先頭のデータ組内のデータ本体部から表示するように表示部１２０を制御する。図３に示す例の場合、ＤＡＴＡ（１）の位置が表示開始位置になる。なお、入力部１９０を介してユーザが表示を開始するデータ組の位置を指定した場合に、制御実行部１６０は、ユーザが指示した位置のデータ組内のデータ本体部から表示するように表示部１２０を制御する。例えば、ａｄｄｒｅｓｓ（３）に格納されたデータ組が表示を開始するデータ組として指示された場合には、制御実行部１６０は、ＤＡＴＡ（３）から表示するように表示部１２０を制御する。
【００６５】
表示部１２０の一画面で表示対象データの全てを表示しきれない場合に、入力部１９０を介してユーザがスクロール指示を入力する。このスクロール指示は、前述したように、スクロール方向、スクロール量の指示を含む。
【００６６】
制御実行部１６０は、入力部１９０からスクロール指示が入力されると、基準位置情報保持部１５０に保持された基準位置情報を参照して、現在の表示開始位置と、スクロール指示通りにスクロールした場合の新しい表示開始位置との間に、基準位置が存在するか否かを確認する。
【００６７】
図３に示す表示対象データを用いて説明する。例えば、現在の表示開始位置がａｄｄｒｅｓｓ（１）であり、すなわち表示部１２０がＤＡＴＡ（１）から表示をしている場合に、ａｄｄｒｅｓｓ（４）までスクロールする指示が入力されたとする。このとき、スクロール指示通りにスクロールした場合の新しい表示開始位置がａｄｄｒｅｓｓ（４）になるため、現在の表示開始位置と新しい表示開始位置の間に、基準位置「ａｄｄｒｅｓｓ（２）」が存在する。この場合、制御実行部１６０は、該基準位置がスクロール後の表示開始位置になるようにスクロール量を調整する。これにより、スクロール後の表示開始位置は、スクロール指示した通りにスクロールした場合の表示開始位置の前の基準位置になる。
【００６８】
なお、現在の表示開始位置と、スクロール指示通りにスクロールした場合の表示開始位置との間に複数の基準位置が存在する場合には、制御実行部１６０は、該複数の基準位置のうちの、現在の表示開始位置に最も近い基準位置がスクロール後の表示位置になるようにスクロール量を調整する。
【００６９】
一方、例えば、現在の表示開始位置がａｄｄｒｅｓｓ（７）であり、すなわち表示部１２０がＤＡＴＡ（７）から表示をしている場合に、ａｄｄｒｅｓｓ（１０）までスクロールする指示が入力されたとする。このとき、スクロール指示通りにスクロールした場合の新しい表示開始位置がａｄｄｒｅｓｓ（１０）になるため、現在の表示開始位置と新しい表示開始位置の間に、基準位置が存在しない。この場合、制御実行部１６０は、スクロール量の調整をせずに、スクロール指示通りにスクロールするよう表示部１２０を制御する。
【００７０】
図７は、制御実行部１６０によるスクロール制御の流れを示すフローチャートである。スクロール指示が入力されると、制御実行部１６０は、まず、現在の表示開始位置、すなわち表示部１２０の画面に表示されているデータの先頭アドレスを取得する（Ｓ１５０）。
【００７１】
そして、制御実行部１６０は、スクロール指示通りにスクロールした場合の新しい表示開始位置を算出する（Ｓ１５２）。この新しい表示開始位置の算出は、例えば、現在の表示開始位置に、スクロール指示により指示されたスクロール方向に、スクロール指示により指示されたスクロール量を加算することにより行われる（Ｓ１５２）。
【００７２】
次いで、制御実行部１６０は、基準位置情報保持部１５０に保持された基準位置情報を参照して、ステップＳ１５０で取得した現在の表示開始位置と、ステップＳ１５２で算出した新しい表示開始位置との間に、基準位置が存在するか否かを確認する（Ｓ１５４）。基準位置がなければ、制御実行部１６０は、スクロール指示通りのスクロールが実行されるように表示部１２０を制御する（Ｓ１５４：Ｎｏ、Ｓ１５８）。一方、基準位置があれば、制御実行部１６０は、スクロール後の表示開始位置が該基準位置になるようにスクロール量を調整してから表示部１２０にスクロールを行わせる（Ｓ１５４：Ｙｅｓ、Ｓ１５６、Ｓ１５８）。なお、ステップＳ１５６において、ステップＳ１５０で取得した現在の表示開始位置と、ステップＳ１５２で算出した新しい表示開始位置との間に、複数の基準位置が存在する場合には、制御実行部１６０は、スクロール後の表示開始位置が、該複数の基準位置のうちの、現在の表示開始位置に最も近い基準位置になるようにスクロール量を調整する。
【００７３】
このように、本実施の形態の情報処理装置１００によれば、表示対象データをスクロールしながら表示する際に、ユーザによる微調整なしに、該データの中の目的位置（基準位置）が表示開始位置になるように制御できる。
【００７４】
＜第２の実施の形態＞
本発明の第２の実施の形態も情報処理装置である。この情報処理装置と、図１に示す第１の実施の形態の情報処理装置１００とは、表示対象データに対して設定されたシンボルと、表示対象データから基準位置情報を取得する基準位置情報取得部のみが異なる。そのため、本第２の実施の形態にかかる情報処理装置に対して、表示対象データの構成と、基準位置情報取得部についてのみ説明する。また、説明に際して、他の機能ブロックを言及する必要があるときには、情報処理装置１００における該機能ブロックを用いる。
【００７５】
図８は、本第２の実施の形態にかかる情報処理装置の記憶部１１０に格納された表示対象データの例を示す。この表示対象データのデータ本体部分は、図３に示す表示対象データのデータ本体部分と同様である。
【００７６】
図８に示すように、記憶部１１０の１つのアドレス（ａｄｄｒｅｓｓ（ｉ））に、データ組（データ本体部とシンボル部）が１つ格納されている。表示対象データは、複数のデータ組から構成される。
【００７７】
本実施の形態において、データ組のシンボル部は、空データと、空データではないシンボルとのいずれである。なお、全てのシンボルが同一であり、図８において「ａａａ」で表示されている。
【００７８】
シンボルが設定されていない、すなわちシンボル部が空データであることは、該データ組のデータ本体部が基準位置のデータではないことを示す。例えば、ａｄｄｒｅｓｓ（１）に記憶されたＤＡＴＡ（１）や、ａｄｄｒｅｓｓ（８）に記憶されたＤＡＴＡ（８）は、シンボルが設定されておらず、これらのデータは基準位置のデータではない。
【００７９】
一方、シンボルが設定されている、すなわち、シンボル部が「ａａａ」であることは、該データ組のデータ本体部が基準位置のデータであることを示す。例えば、ａｄｄｒｅｓｓ（２）、ａｄｄｒｅｓｓ（７）、ａｄｄｒｅｓｓ（１３）に格納されたデータ組のシンボル部が「ａａａ」であるため、ＤＡＴＡ（２）、ＤＡＴＡ（７）、ＤＡＴＡ（１３）は、基準位置のデータとなる。
【００８０】
図９は、本発明の第２の実施の形態の情報処理装置における基準位置情報取得部２４０を示す。図９において、第１の実施の形態の情報処理装置１００における機能ブロックと同様のものについて、情報処理装置１００の該機能ブロックに対して付与された符号と同様の符号が付与されており、これらの機能ブロックについては、説明を省略する。
【００８１】
基準位置情報取得部２４０は、データ読出部１４２、設定部１４４、判定部２４６を備える。データ読出部１４２と設定部１４４は、図４に示す基準位置情報取得部１４０の対応する機能ブロックと同様のものである。また、基準位置情報取得部２４０には、基準位置情報取得部１４０に備えられた前回シンボル保持部１４８が無い。
【００８２】
図１０は、判定部２４６と基準位置情報保持部１５０による処理の流れを示すフローチャートである。なお、最初の表示開始位置が表示対象データの先頭であるとする。
【００８３】
まず、設定部１４４は、データ読出部１４２に対して、表示対象データの先頭アドレスを最初の読出アドレスとしてデータ読出部１４２に設定して読出しを開始させる（Ｓ２００）
【００８４】
データ読出部１４２は、設定部１４４により設定された読出アドレスに格納されたデータ組（データ本体部とシンボル部のデータ）を読み出して、判定部２４６に出力する（Ｓ２０２）。なお、該読出アドレスが表示対象データの最終アドレスである場合には、データ読出部１４２は、その旨を設定部１４４に通知する。
【００８５】
判定部２４６は、データ読出部１４２から出力されたデータ組にシンボルが設定されているか否かを確認する（Ｓ２０４）。
【００８６】
今回のデータ組のシンボル部のデータが空であり、すなわちシンボルが設定されていない場合には、処理がステップＳ２１２に分岐する（Ｓ２０４：Ｎｏ、Ｓ２１２）。ステップＳ２１２において、今回のデータ組のアドレスが表示対象データの最終アドレスではなければ、設定部１４４は、次のアドレスを読出アドレスとしてデータ読出部１４２に設定する（Ｓ２１２：Ｎｏ、Ｓ２１４）。これにより、ステップＳ２０２からの処理が繰り返される（Ｓ２０２〜）。一方、今回のデータ組のアドレスが表示対象データの最終アドレスであれば（Ｓ２１２：Ｙｅｓ）、設定部１４４は、処理を終了する。
【００８７】
一方、ステップＳ２０４において、今回のデータ組にシンボルが設定されていると確認された場合に、判定部２４６は、今回のデータ組のアドレスを基準位置情報として基準位置情報保持部１５０に出力する（Ｓ２０４：Ｙｅｓ、Ｓ２０６）。基準位置情報保持部１５０は、判定部２４６から出力された基準位置情報に基準位置番号を付与して登録する（Ｓ２０８）。
【００８８】
ステップＳ２０２〜Ｓ２１４までは、表示対象データの最終アドレスのデータ組の読出し、シンボルがあるか否かの判定、判定結果に応じた処理の完了まで繰り返される。その結果、表示対象データに対して設定された全ての基準位置の情報が得られて基準位置情報保持部１５０に保持される。
【００８９】
図８に示す表示対象データの場合、基準位置情報保持部１５０には、図５に示す基準位置情報が登録されることになる。図５は、第１の実施の形態の情報処理装置１００において、図３に示す表示対象データから取得した基準位置情報である。すなわち、図３に示すような表示対象データのシンボルの設定方法と異なる手法でシンボルが設定された表示対象データであっても、本実施の形態の情報処理装置は、情報処理装置１００による取得された基準位置情報と同様の基準位置情報を取得することができる。
【００９０】
本第２の実施の形態の情報処理装置は、情報処理装置１００と同様の効果を得ることができると共に、表示対象データのシンボル部のデータが「空データ」であるか否かの差しかなく、表示対象データに対するシンボルの設定、及びシンボルに基づいた基準位置であるか否かの判定が簡単である。
【００９１】
＜第３の実施の形態＞
本発明の第３の実施の形態も情報処理装置である。この情報処理装置と、図１に示す第１の実施の形態の情報処理装置１００とは、スクロール制御を行う制御実行部のみが異なる。そのため、本第３の実施の形態にかかる情報処理装置に対して制御実行部についてのみ説明する。また、説明に際して、他の機能ブロックを言及する必要があるときには、情報処理装置１００における該機能ブロックを用いる。
【００９２】
図１１は、本発明の第３の実施の形態の情報処理装置における制御実行部の処理を示すフローチャートである。
【００９３】
スクロール指示が入力されると、制御実行部は、まず、現在の表示開始位置、すなわち表示部１２０の画面に表示されているデータの先頭アドレスを取得して保持する（Ｓ３００）。
【００９４】
そして、制御実行部は、スクロール指示通りのスクロールが実行されるように表示部１２０を制御する（Ｓ３０２）。
【００９５】
次いで、制御実行部は、ステップＳ３０２のスクロール実行後の新しい表示開始位置を取得すると共に、該表示開始位置と、ステップＳ３００で取得して保持した直前の表示開始位置との間に基準位置の有無を確認する（Ｓ３０６）。基準位置がなければ、制御実行部は処理を終了する（Ｓ３０６：Ｎｏ）。一方、基準位置があれば、制御実行部は、スクロール後の表示開始位置が該基準位置になるように表示部１２０に再度スクロールを行わせる（Ｓ３０６：Ｙｅｓ、Ｓ３０８）。なお、ステップＳ３０６において、複数の基準位置が確認されれば、制御実行部は、再度のスクロール後の表示開始位置が、該複数の基準位置のうちの、ステップＳ３００で取得した表示開始位置に最も近い基準位置になるように表示部１２０にスクロールさせる。
【００９６】
すなわち、本実施の形態の情報処理装置において、スクロール指示がなされたときに、まず、スクロール指示通りのスクロールが行われる。そして、スクロール前とスクロール後の表示開始位置の間に基準位置がなければ、今回のスクロール処理が終了する。一方、スクロール前とスクロール後の表示開始位置の間に基準位置があれば、再度のスクロールが行われ、表示開始位置が基準位置に補正される。
【００９７】
本実施の形態の情報処理装置は、第１の実施の形態の情報処理装置１００と同様の効果を得ることができる。また、スクロール指示がなされると、まずスクロール指示通りにスクロールが行われるので、現在の表示開始位置と、スクロール指示通りにスクロールした場合の新しい表示開始位置との間に基準位置が無いときに、新しい表示開始位置へのスクロールを迅速に行うことができる。
【００９８】
以上、実施の形態をもとに本発明を説明した。実施の形態は例示であり、本発明の主旨から逸脱しない限り、上述した各実施の形態に対してさまざまな変更、増減、組合せを行ってもよい。これらの変更、増減、組合せがなされ変形例も本発明の範囲にあることは当業者に理解されるところである。
【００９９】
例えば、上述した各実施の形態の情報処理装置では、表示対象データから全ての基準位置情報を取得して保持するようにしている。例えば、スクロール指示がなされた度に、現在の表示開始位置と、スクロール指示通りにスクロールした場合の新しい表示開始位置との間のデータから基準位置情報を取得するようにしてもよい。
【符号の説明】
【０１００】
１００  情報処理装置  １１０  記憶部
１２０  表示部  １２１  データ表示領域
１２２  スクロールバー  １２３  スクロールボタン
１２４  スライダー  １２５  スクロールボタン
１３０  スクロール制御部  １４０  基準位置情報取得部
１４２  データ読出部  １４４  設定部
１４６  判定部  １４８  前回シンボル保持部
１５０  基準位置情報保持部  １６０  制御実行部
１９０  入力部  ２４０  基準位置情報取得部
２４６  判定部
【図１】
2011141620.tif 000003
【図２】
2011141620.tif 000004
【図３】
2011141620.tif 000005
【図４】
2011141620.tif 000006
【図５】
2011141620.tif 000007
【図６】
2011141620.tif 000008
【図７】
2011141620.tif 000009
【図８】
2011141620.tif 000010
【図９】
2011141620.tif 000011
【図１０】
2011141620.tif 000012
【図１１】
2011141620.tif 000013
【図１２】
2011141620.tif 000014
【図１３】
2011141620.tif 000015
【図１４】
2011141620.tif 000016
【図１５】
2011141620.tif 000017
【図１６】
2011141620.tif 000018