JP6624972B2 - 表示を制御する方法、装置、およびプログラム - Google Patents

表示を制御する方法、装置、およびプログラム Download PDF

Info

Publication number
JP6624972B2
JP6624972B2 JP2016036022A JP2016036022A JP6624972B2 JP 6624972 B2 JP6624972 B2 JP 6624972B2 JP 2016036022 A JP2016036022 A JP 2016036022A JP 2016036022 A JP2016036022 A JP 2016036022A JP 6624972 B2 JP6624972 B2 JP 6624972B2
Authority
JP
Japan
Prior art keywords
elements
list
display area
displayed
display
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016036022A
Other languages
English (en)
Other versions
JP2017151896A5 (ja
JP2017151896A (ja
Inventor
久保 裕明
裕明 久保
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2016036022A priority Critical patent/JP6624972B2/ja
Priority to US15/433,102 priority patent/US10509543B2/en
Publication of JP2017151896A publication Critical patent/JP2017151896A/ja
Publication of JP2017151896A5 publication Critical patent/JP2017151896A5/ja
Application granted granted Critical
Publication of JP6624972B2 publication Critical patent/JP6624972B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/38Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory with means for controlling the display position
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/04Changes in size, position or resolution of an image
    • G09G2340/0464Positioning
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2354/00Aspects of interface with display user

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本発明は、所定の規則に従ってソートされた提示対象の複数の要素のリストを表示するための技術に関する。
リスト型ユーザインターフェース(以下UI)とは、提示すべき要素(以下、提示対象の要素)をリスト状に並べて表示することでユーザへ提示するための手段であり、一般的には所定の規則に従ってソートされた要素をユーザに提示する際に用いられる。このようなリスト型UIにおいて、要素がリストに追加されるときに、一部の要素の表示位置を固定する技術がある。
特許文献1には、所定順序に並んだ複数のサムネイルから所定の抽出間隔で抽出されたサムネイルの一覧表示を行うことが記載されている。また抽出間隔が縮小されてサムネイルが一覧表示に追加されること、また抽出間隔が拡大されてサムネイルが一覧表示から削除されることが記載されている。さらに、一覧表示におけるサムネイルの追加・拡大において、表示されている複数のサムネイルのうちの基準となるサムネイルの表示位置を変えずに、その他のサムネイルの表示位置を変えて一覧表示が行われることが記載されている。
特開2010−15256号公報
しかしながら、特許文献1に記載の技術では、リストにおいて基準となる要素以外の全ての要素の表示位置が変更される。つまり、リストにおける要素の追加が起こる場合、その追加の位置によっては表示位置を変更する必要のない要素についても、表示位置が変更されてしまう。
そこで本発明は、リストへの要素の追加において、表示位置の変更対象の要素の表示位置が変更され、表示位置を変更する必要のない要素の表示位置が変更されていないリストを表示させる技術を提供することを目的とする。
本発明は、複数の要素が所定の規則に従ってソートされたリストを表示するためのプログラムであって、前記リストが所定の表示領域に表示されているときに前記所定の規則に従って前記リストに追加要素が追加される場合、ユーザの操作により前記所定の表示領域において特定される位置と、前記リストにおいて前記追加要素が挿入される位置とに基づき、前記複数の要素の一部であり且つ表示位置の変更対象である1または複数の第1要素を決定する決定工程と、前記追加要素の追加が行われ、且つ前記決定工程において決定された前記1または複数の第1要素の表示位置が変更され、且つ前記複数の要素の内の前記1または複数の第1要素とは異なる複数の第2要素の表示位置が変更されていない前記リストを、前記所定の表示領域に表示させる表示制御工程と、をコンピュータに実行させるプログラムである。
本発明によれば、リストへの要素の追加において、表示位置の変更対象の要素の表示位置が変更され、表示位置を変更する必要のない要素の表示位置が変更されていないリストを表示させることができる。
一般的なリスト型UIの概念図 実施例1に係るコンピュータ装置の構造を示すブロック図 実施例1に係るリストの更新態様を説明する図 実施例1に係る基準要素を導出する手法を説明する図 実施例1に係るリスト型UIで提示する要素を追加する際に実行される処理のフローチャート 実施例1に係るリスト型UIで提示する要素を削除する際に実行される処理のフローチャート 実施例2に係る基準要素を導出する手法を説明する図 実施例3に係る基準要素を導出する手法を説明する図 実施例4に係るリストの更新態様を説明する図
以下、本発明の実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また、以下で説明されている特徴の組み合わせの全てが本発明の課題の解決に必須のものとは限らない。
図1は、本実施形態を適用可能な一般的なリスト型UIの一例を示す概念図であり、リスト型UIにより8個の表示対象(提示対象ともいう)の要素101(a〜h)が提示される場合を表している。提示対象の要素101は夫々、1つ以上の情報を保持し、該保持する情報の一部または全部が、リスト型UI上に表示される。本例では、各要素が保持するアルファベット文字が表示されている。またこのとき、リスト型UIが提示する要素は、各要素が保持する情報に従ってソートされ、所定方向に並んで表示される。本例では、各要素は、アルファベット順に(昇順に)上から下に向かって並んで表示されている。また、リスト型UIを構成する表示領域102が同時に表示できる要素の数は、最大で6個である。従って、表示領域102の外にある提示対象の要素g、hをユーザは閲覧できず、該要素に対する選択などの操作も実行することができない。ただし、表示領域102の外に提示対象の要素104が有る場合、スクロール可能である事を示すスクロールバー105が表示されても良い。本例では、ユーザがスクロールバー105を下にスライドさせると、表示領域102の外にある提示対象の要素104(g、h)が、表示領域102内にスライドするので、ユーザは要素g、hを閲覧できるようになる。
下記の実施例では、図1を用いて説明したような、スライドバーと連動させること等により提示対象の要素が上下に動くことが可能であり、かつ、保持する情報に従って昇順にソートされた要素が1方向に並んで表示されるリスト型UIを用いて説明している。しかし、本発明に係るリスト更新に関する技術を適用可能なUIは、このようなUIに限定されない。表示領域上に予め定められた規則に従い複数の要素を配置することでユーザに情報を提示する任意のリスト型UIに対し、本発明を適用することが可能である。
<実施例1>
(コンピュータ装置の構成)
図2は、本実施例を実装することができるコンピュータ装置の一例を示すブロック図である。コンピュータ装置201は、CPU202と、システムメモリ203と、入力装置208と、出力装置209と、通信装置210と、から構成される。コンピュータ装置201は、サーバが提供するサービスのクライアントたるクライアント装置であって良い。コンピュータ装置201は、一般的には、少なくとも1つのCPU202と、少なくとも1つのシステムメモリ203と、を有する。ただし、コンピュータ装置201は、協働してプログラムを実行する複数のCPUを有しても良い。CPU202は、RAMをワークメモリとして、ROM、ハードディスクドライブ、汎用ドライブにマウントされた各種記録メディアなどに格納されたオペレーティングシステム(以下OS)や各種プログラムを実行することにより、各構成要素を統括的に制御する。なお、CPU202が実行するプログラムには、後述する本実施例に係る処理を実行するためのプログラムが含まれる。システムメモリ203は、揮発性(例えば、RAM)メモリと不揮発性メモリ(例えば、ROM、フラッシュメモリなど)との何れか、或いは、揮発性メモリと不揮発性メモリとの両方を組み合わせたものであって良い。システムメモリ203には、OS204と、OS204上で動作するアプリケーション205と、アプリケーション205で用いられるビューモジュール206と、が格納されている。
入力装置208は、ユーザがコンピュータ装置201に指示を与えたりデータを入力したりするための装置であり、例えばキーボード、マウス、ペン、タッチパネルなどを含む。出力装置209は、コンピュータ装置201の状態を示す情報などをユーザに提示するための装置であり、アプリケーション205の画面を表示するためのディスプレイ(例えばCRTや液晶ディスプレイなど)を含む。本実施例では、CPU202によりアプリケーション205が実行されると、アプリケーション205の画面としてリスト型UIが出力装置209に表示され、当該画面を見たユーザは、入力装置208を用いてリスト型UIを介した入力を実行する。このとき、入力装置208によって入力されたユーザの操作に応じて動作する、ポインタカーソルやユーザが画面上のどの部分に注目しているかを示す注目領域などが、出力装置209に表示されても良い。通信装置210は、ネットワークを介してコンピュータ装置201の外部の装置(例えばサーバやプリンタなど)との間でデータ通信を行う。
またコンピュータ装置201は、電話機能やメール機能を有するスマートフォンでもよい。コンピュータ装置201がスマートフォンの場合、入力装置208はタッチパネルを有し、表示領域102はタッチパネル上に設けられる。この場合、例えば図1に示した表示画面がタッチパネル上に表示され、ユーザがタッチパネル上で図1における下から上の方向にドラッグ操作またはフリック操作を行うと、要素104(g、h)がタッチパネル上に表示される。
(リストの更新態様)
図3は、本実施例に係るリストの更新態様の例を示す図である。なお、説明のために図中に示すように座標軸を設定する。図3(a)は、出力装置209に表示されているポインタカーソル301と、リスト型UIと、を表している。本例では、リスト型UIの表示領域302内において最大で8個の要素を表示可能としている。また、表示領域302内に表示される要素303は、各要素が持つ情報に基づき整列して表示されており、具体的には、アルファベット順に(昇順に)上から下に向かって並んで表示されている。このとき、更新によって要素c又は要素gが、リストで提示する対象(提示対象)に新規に追加されようとしている(追加要素304、305)。
図3(b)は、更新によって要素cが提示対象として新規に追加された結果、リスト型UIの表示領域302に要素cが挿入され、要素aが見えなくなった場合を表している。本例では、リスト型UIが提示する要素は、各要素が持つ情報に従いアルファベット順にソートされて表示されており、要素cは、要素bと要素dとの間に挿入されることから、表示領域302において要素cが挿入される位置を導出することができる。また本例では、画面上にてポインタカーソル301が指していることからユーザとの関連性が高いと推測される要素eを基準要素308とする。ここで基準要素とは、要素をどのように挿入、又は、削除するかを決定する際に考慮される基準として用いられる要素である。ユーザがポインタカーソルを合わせた要素は、ユーザが選択しようとしている要素である可能性が高いことから、画面上で無闇に動かすことは好ましくない。そこで本実施例では、ポインタカーソルが指している要素eを、位置が固定される基準要素として用いることで、ユーザビリティの低下を防止する。
基準要素308の導出後、追加対象である要素cの位置より下部となる複数の要素(基準要素308を含む。下部要素ともいう。)309(d、e、f、h、i、j)が、表示位置を変更させない要素として特定される。そして下部要素309の表示位置が表示領域302上にて固定される。そして、リスト型UI上で該下部要素よりも上部の要素(上部要素ともいう)310(a、b)が、表示位置を変更する又は表示されない要素として特定される。そして、該要素が上方向(+y方向)へ要素1個分スライドされ、空いた位置に要素cが挿入される。その際、最大で8個の要素を表示可能な表示領域302の外へ出た要素aはユーザから見えなくなる。
図3(c)は、更新によって要素gが提示対象として新規に追加された結果、リスト型UIの表示領域302に要素gが挿入され、要素jが見えなくなった場合を表している。本例では、リスト型UIが提示する要素は、各要素が持つ情報に従いアルファベット順にソートされて表示されており、要素gは、要素fと要素hとの間に挿入されることから、表示領域302において要素gが挿入される位置を導出することができる。また本例では、画面上にてポインタカーソル301が指している要素eを基準要素308とし、追加対象である要素gの位置より上部となる複数の要素(基準要素308を含む上部要素)311(a、b、d、e、f)の位置を表示領域302上にて固定する。そして、リスト型UI上で該上部要素よりも下部の要素312(h〜j)を下方向(−y方向)へ要素1個分スライドさせ、空いた位置に要素gを挿入する。その際、最大で8個の要素を表示可能な表示領域302の外へ出た要素jはユーザから見えなくなる。
なお、図3に示した例では、画面上に表示されているポインタカーソル301を用いて基準要素308を求めた。しかし、基準要素を求めるために使用できるものはポインタカーソルに限定されない。ユーザの操作によって動くポインタやその他の任意のオブジェクト等により定義可能な位置に基づき基準要素を導出して良い。入力装置208を通じて入力されるユーザからの操作により出力装置209上に位置を定義できる任意のものを、基準要素を求めるために用いて良く、これは出力装置209に表示されていなくても良い。例えば入力装置208がタッチパネルの場合、ユーザによりタッチされた要素が基準要素となってもよい。
(基準要素の導出手法)
図4は、基準要素を導出する際に基準要素の候補が複数導出されるような場合に、該複数の候補のうちの何れを基準候補として選択するかを説明するための図である。なお、説明のために図中に示すように座標軸を設定する。図示するように本例では、ポインタカーソル401の指示部分から距離が最も近い要素は、要素eと要素fとの2つである。従って、ポインタカーソル401の指示部分に最も近い要素を基準要素とすると、要素e及び要素fが、候補として導出されることとなる(基準要素候補402、403)。このような場合、表示領域404の枠線と、要素405が並んでいる方向(y軸方向)に沿った直線406とが交差する交点407を求め、交点407から最も近い基準要素の候補を選択することで、最終的に1個の基準要素を導出できる。なお、表示領域の枠線と要素が並んでいる方向に沿った直線との交点が複数存在する場合は、その中の任意の1点を用いて良い。図示するように本例でも、当該交点は2つ存在するが、2つの中の上側の交点407を用いたため、基準要素は、要素fではなく要素eとなる。
(要素追加処理)
図5は、本実施例に係るリスト型UIで提示する要素を追加する際に実行される処理の1例を示すフローチャートである。本処理は、コンピュータ装置201のCPU202がプログラムを実行することにより実現される。また本処理は、ユーザの意思とは関係無く、リストが動的に更新される際など必要に応じて所定のタイミングで開始する。
先ずステップS501(以下、ステップS501をS501と略記し、他のステップについても同様に略記する。)において、現在リスト型UIの表示領域に表示されている要素が1個以上あるか否かを判定する。該判定の結果、表示領域に表示されている要素が1個以上ある場合、S502に進む。一方、そうでない場合(表示領域に表示されている要素が0個の場合)、S508に進む。
S502において、基準要素を導出する。上述の通り基準要素とは、要素をどのように追加するかを決定する際に基準となる要素であり、要素追加処理では、基準要素の位置は、画面上すなわち表示領域において固定される。S503において、S502で導出した基準要素の位置(Pcとする)を取得する。S504において、ソート条件と新規に追加される要素が保持する情報とに基づき、追加要素が挿入される位置(Pnとする)を取得する。
S505において、S503で取得した位置PcとS504で取得した位置Pnとを比較し、基準要素が新規に追加される要素よりリスト上で上となるか(Pc>Pn)否かを判定する。なおここでは、図3及び図4で示したようにy軸を設定し、Pc及びPnは夫々1つのy値であり、y値の大きい要素はy値の小さい要素より高い位置にあるという前提で説明している。S505の判定の結果、基準要素が新規に追加される要素より上となる場合(Pc>Pnの場合)、S506に進む。一方、そうでない場合(Pc<Pnの場合)、S507に進む。
S506において、新規に追加される要素よりもリスト上で下部に表示されることとなる要素を下方向(−y方向)にスライドさせ、空いた位置に新規要素を挿入する。S507において、新規に追加される要素よりもリスト上で上部に表示されることとなる要素を上方向(+y方向)にスライドさせ、空いた位置に新規要素を挿入する。S508において、要素が何も表示されていない表示領域に、新規要素(1つ目)を追加する。以上が、要素追加処理である。
(要素削除処理)
図6は、本実施例に係るリスト型UIで提示中の要素を削除する際に実行される処理の1例を示すフローチャートである。本処理は、コンピュータ装置201のCPU202がプログラムを実行することにより実現される。また本処理は、ユーザの意思とは関係無く、リストが動的に更新される際など必要に応じて所定のタイミングで開始する。ただし本処理は、提示対象だった要素を削除する処理であることから、リスト型UIにおいて少なくとも1個の要素が表示されていることが前提となる。
先ずS601において、現在リスト型UIの表示領域に表示されている要素が2個以上あるか否かを判定する。該判定の結果、表示領域に表示されている要素が2個以上ある場合、S602に進む。一方、そうでない場合(表示領域に表示されている要素が1個の場合)、S608に進む。
S602において、基準要素を導出する。上述の通り基準要素とは、要素をどのように削除するかを決定する際に基準となる要素である。S603において、S602で導出した基準要素の位置(Pcとする)を取得する。S604において、削除対象の削除要素(以降、削除対象要素ともいう)の位置(Pnとする)を取得する。
S605において、S603で取得した位置PcとS604で取得した位置Pnとを比較し、基準要素の位置がリスト上で削除対象要素の位置と同一または削除対象要素の位置より上であるか(Pc≧Pn)否かを判定する。なおここでも上述の要素追加処理と同様、図3及び図4で示したようにy軸を設定し、Pc及びPnは夫々1つのy値であり、y値の大きい要素はy値の小さい要素より高い位置にあるという前提で説明している。S605の判定の結果、基準要素の位置が削除対象要素の位置と同一または削除対象要素の位置より上である場合(Pc≧Pnの場合)、S606に進む。一方、そうでない場合(Pc<Pnの場合)、S607に進む。
S606において、位置Pnにある削除対象要素を削除し、リスト上で位置Pnより下部に表示されていた要素を上方向(+y方向)にスライドさせる。S607において、位置Pnにある削除対象要素を削除し、リスト上で位置Pnより上部に表示されていた要素を下方向(−y方向)にスライドさせる。S608において、要素が1個だけ表示されている表示領域から、削除対象要素を削除する。以上が、要素削除処理である。
図5、図6に示す処理により、リストに含まれている複数の要素の内の表示位置の変更対象であり且つ基準要素でない要素として、リストにおけるスライドの対象となる要素とスライドの方向が決定される。
具体的には、リストにおいて基準要素から追加要素が挿入される位置または前記削除要素の位置に向かう方向がスライドの方向として決定される。またスライドの方向において追加要素が挿入される位置または削除要素の位置よりも基準要素から離れた位置に表示されている要素がスライドの対象となる要素として決定される。
一方で、スライドの方向において追加要素が挿入される位置または削除要素の位置と基準要素の位置との間に表示されている要素は、スライドの対象となる要素として決定されない。またリストにおいて、基準要素の位置を基準としたときの、追加要素が挿入される位置または削除要素の位置が存在する一方の側と反対側に配置されている要素も、スライドの対象となる要素として決定されない。
よって、例えばリストが表示される所定の表示領域の上端部または下端部の領域において要素の追加、削除が行われる場合、その端部付近の要素以外の要素については表示位置が変更されない。そのため、例えばユーザが所定の表示領域に表示中の要素に注目しているときに要素の追加または削除が行われたとしても、注目要素の表示位置が変更されることを低減することができる。
<実施例2>
実施例1では、ユーザの操作に応じて動くポインタカーソル等のオブジェクトにより定義される位置に基づき基準要素を決定した。本実施例では、要素が保持する情報に基づき基準要素を決定する。なお、以下の説明において、実施例1と共通する内容については、説明を簡略化または省略する。
図7は、本実施例に係る基準要素の導出手法を説明するための図であり、ワイヤレスネットワークを選択する際に表示されるリスト型UIの一例を示す概念図である。図示するように本例では、提示対象の要素701は夫々、ワイヤレスネットワークの名称と電波強度703との2つの情報を保持している。また、要素701は、各要素が保持する名称に従い昇順にソートされて表示領域704に表示されており、更新によって提示対象に要素WNetworkCが新規に追加されようとしている(追加要素702)。このとき、追加要素702たる要素WNetworkCは、要素WNetworkBと要素WNetworkDとの間に挿入される事となる。
上述の通り、リスト型UIにて提示される要素は夫々、電波強度703という情報を保持する。電波強度とは、どれ位の電波が届いているかを示しており、値が大きいほど電波が強い。本実施例では、電波強度703を用いて基準要素を導出する。具体的には、ユーザは、電波強度703の値が大きいワイヤレスネットワークを望むことが想定されることから、表示領域704に表示されている要素の中で最大の電波強度を有するWNetworkEを基準要素705とする。なお、実施例1と同様、要素を追加する処理では、基準要素705の位置は、表示領域704において固定される。
基準要素705導出以降の、要素WNetworkCを新規追加する態様は実施例1と同様である。即ち、要素WNetworkCより下部となる要素(基準要素705を含む)の位置を固定する。次いで、要素WNetworkCより上部となる要素706(WNetworkA、WNetworkB)を上方向へ要素1個分スライドさせる。次いで、空いた位置に要素WNetworkCを挿入する。なお、追加要素がリスト上にて基準要素705よりも下に挿入される場合は、実施例1と同様、追加要素より下部となる要素を下方向へスライドさせ、空いた位置に追加要素を挿入する。
なお上述の説明では、提示対象の各要素が2つの情報を保持する場合について説明したが、3つ以上の情報を保持しても良い。このような場合、基準要素は、各要素が保持する3つ以上の情報の中の任意の1つを用いて導出される。また、基準要素を導出する際に用いられる情報はユーザに認知可能に提示されても良いし、提示されなくても良い。
<実施例3>
実施例1では、ユーザの操作に応じて動くポインタカーソルの位置に基づき基準要素を導出し、実施例2では、要素が保持する情報に基づき基準要素を導出した。本実施例では、リスト型UIの表示領域に応じて設ける基準線に基づき基準要素を導出する。
図8は、本実施例に係る基準要素の導出手法を説明するための図である。なお、説明のために図中に示すように座標軸を設定する。本例では、リスト型UIの表示領域802において最大で8個の要素を表示可能としている。また、表示領域802内に表示される要素801は、アルファベット順に(昇順に)上から下に向かって並んで表示されている。図中に破線で示すように本例では、要素801が並んでいる方向(y軸方向)に垂直な線(以下、基準線)803を設け、基準線803を用いて基準要素804を導出する。具体的には、基準線803から最も近い要素を基準要素804とする。仮に図8に示す状態で更新が行われた場合、基準線803と最も近い要素fが基準要素804となる。
なお、基準要素を求めるために用いる基準線として、表示領域802内にて要素801が並ぶ方向に垂直な線を任意の位置に設定する事が可能である。つまり、基準線が有するy値は、任意の1値で良い。また、基準線は、出力装置209上でユーザに認知可能に提示されても良いし、提示されなくても良い。
<実施例4>
図9は、本実施例に係るリストの更新態様を説明するための図である。図9は、出力装置209の画面905上に表示されたポインタカーソル901と、リスト型UIと、を表している。本例では、リスト型UIの表示領域902において最大で8個の要素を表示可能としている。また、表示領域902内に表示される要素903は、アルファベット順に(昇順に)上から下に向かって並んで表示されている。このとき、更新によって要素aが新規に追加されようとしている(追加要素904)。
仮に基準要素として要素iが導出され、新規に追加される要素aより下部となる要素903(基準要素の要素iを含む)の表示位置が固定された場合、要素aは表示領域902に表示されないことが起こり得る。このように、リストの更新により提示対象は追加されているにもかかわらず、表示領域902で表示されている要素は変わらないため、結果的にユーザが更新に気づかない場合がある。
そこで本実施例では、画面905上に表示されているリスト型UIの表示領域902の周辺に、表示領域902を含むように任意の大きさの領域906を定義する。そして、リストが更新される際に、ユーザの操作によって画面905上を動くことが可能なポインタカーソル901が、領域906に含まれるか否かを判定する。判定の結果、ポインタカーソル901が領域906に含まれる場合、基準要素の位置を表示領域902において固定して新規要素を追加する。この場合の処理は実施例1と同様である。一方、ポインタカーソル901が領域906に含まれない場合、基準要素の位置を表示領域902において固定せずに新規要素を追加する。例えば図9に示す場合、基準要素iの位置が固定されないため、新規に追加される要素aより下部となる要素903を要素1個分下にスライドさせ、空いた位置に要素aを挿入して良い。こうすればユーザは要素aを視認できるので、リストの更新に気づくことができる。
上述したように本実施例では、リスト更新の際にポインタカーソル901が領域906に含まれるか否か判定し、該判定の結果に応じて、基準要素の挙動(表示領域902における基準要素の位置を固定するか否か)を決定する。つまり、ポインタカーソル901が、表示領域902上、或いは、表示領域902の近くにあるときは、ユーザは表示領域902に注目していると推測されるため、基準要素を含む要素903を表示領域902上で動かさない。一方、ポインタカーソル901が、表示領域902から遠く離れているときは、ユーザは表示領域902に注目していないと推測されるため、基準要素を含む要素903を表示領域上で動かす。これにより、ユーザが表示領域902に注目していなくても更新が行われたことがユーザへ伝わる。
なお、基準要素の位置を固定するか否かを判定するために用いる領域906は、出力装置209上でユーザが認知可能に提示されても良いし、提示されなくても良い。
また図9に示した例において要素aを表示させるための方法は上述の方法に限らない。例えば要素が追加されるときに、追加後の要素の数が表示可能な要素の上限数(上記例では8個)を越えるか判定される。また、仮に基準要素に基づいて要素の表示位置を固定した場合に、追加される要素が表示領域外となるか判定される。この判定は、図5に示した処理を表示結果に反映しないように実行し、処理後の追加要素の位置を判定することで実現することができる。そして、「要素追加後のリスト内の要素が上限数を越える」という条件と、「仮に要素の表示位置を固定した場合、追加要素が表示領域外となる」という条件を、要素の表示位置を固定する処理の要否判定の条件とする。例えば上記の2つの条件の両方が満たされた場合、図5に示した処理の結果に従って、リスト内の要素の少なくとも一部の表示位置を固定して、要素aを追加する。或いは、上記2つの条件のいずれかでも満たされた場合に、リスト内の要素の少なくとも一部の表示位置を固定して、要素aを追加してもよい。
なお、上記2つの条件のうち、後者の条件が用いられる場合、リスト表示に要素追加を反映させる段階で、当該条件の判定のために、図5に示す処理が既に実行されている。そのため、当該条件判定のために実行された図5に示す処理の結果を用いて、要素追加後のリスト表示を行っても良い。これにより、条件判定に加え、リスト表示のために再度図5に示す処理を実行しなくてもよい。
<その他の実施例>
上記の実施例で説明した「要素」については、種々のものを採用することができる。例えばコンピュータ装置201が不図示のネットワークインタフェースにより、LAN(Local Area Network)等のネットワーク上の周辺デバイス(プリンタ等)を検索する場合であってもよい。その際、「要素」が、検索されたデバイスを示す表示項目(プリンタの機種名等)であってもよい。この場合、例えば機種名がアルファベット順或いは数字順に並んだリスト表示が行われる。例えば、LAN上でのプリンタ検索において、コンピュータ装置201がプリンタ探索信号を発行する。そして、その信号に対して、機種名を含む応答があった場合に、該機種名がコンピュータ装置201によりリスト表示される。この場合、コンピュータ装置201が応答を受け取ると随時リスト表示されるため、既に数台のプリンタの機種名が表示されているときに、新たな機種名が追加されることが起こり得る。リスト表示において機種名がアルファベット順或いは数字順で並ぶため、図3に示したように、表示中のリストの途中に機種名を挿入することが起こり得る。そのため、以上の実施例は、上述のようなプリンタ検索処理におけるリスト表示にも応用することができる。
また、以上の実施例において、要素が上下にスライドするリスト型UIを例に挙げて説明したが、要素が左右などの任意の一方向に沿ってスライドするリスト型UIにも本発明を適用することができる。
さらに、以上の実施例において、要素の表示位置を変更する際に要素をスライドさせる表示制御を行っていたが、本実施形態における表示制御はこれに限らない。例えば要素の表示位置を変更させたリストをコンピュータ装置201がメモリ上に新たに作成し、表示中のリストに代えて、当該作成されたリストを表示させても良い。即ち、表示上で要素がスライドされなくても、要素の表示位置が変更されたリストが表示されればよい。
なお、基準要素を導出するため等に、上述の複数の実施例を組み合わせた手法を用いることも可能である。また本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。

Claims (13)

  1. 複数の要素が所定の規則に従ってソートされたリストを表示するためのプログラムであって、
    前記リストが所定の表示領域に表示されているときに前記所定の規則に従って前記リストに追加要素が追加される場合、ユーザの操作により前記所定の表示領域において特定される位置と、前記リストにおいて前記追加要素が挿入される位置とに基づき、前記複数の要素の一部であり且つ表示位置の変更対象である1または複数の第1要素を決定する決定工程と、
    前記追加要素の追加が行われ、且つ前記決定工程において決定された前記1または複数の第1要素の表示位置が変更され、且つ前記複数の要素の内の前記1または複数の第1要素とは異なる複数の第2要素の表示位置が変更されていない前記リストを、前記所定の表示領域に表示させる表示制御工程と、
    をコンピュータに実行させるプログラム。
  2. 前記決定工程では、前記1または複数の第1要素として、前記リストにおけるスライドの対象となる1または複数の要素を決定し、且つ前記リストにおけるスライドの方向を決定し、
    前記表示制御工程では、前記所定の表示領域において、前記決定工程において前記スライドの対象として決定された前記1または複数の要素を前記決定工程において決定された方向へスライドさせ、前記複数の第2要素をスライドさせないことで、前記リストを前記表示領域に表示させることを特徴とする請求項1に記載のプログラム。
  3. 前記所定の表示領域においてユーザの操作により特定される位置に応じて、前記複数の要素から基準要素を特定する特定工程を前記コンピュータに実行させ、
    前記決定工程では、前記リストにおいて前記基準要素から前記追加要素が挿入される位置に向かう方向を前記スライドの方向として決定し、前記スライドの方向において前記追加要素が挿入される位置よりも前記基準要素から離れた位置に表示されている1または複数の要素を、前記スライドの対象となる1または複数の要素として決定することを特徴とする請求項2に記載のプログラム。
  4. 前記決定工程ではさらに、前記リストにおいて、前記基準要素の位置を基準としたときの、前記追加要素が挿入される位置が存在する一方の側と反対側に配置されている要素を、前記スライドの対象となる要素として決定しないことを特徴とする請求項3に記載のプログラム。
  5. 前記追加要素が挿入される位置は、前記所定の規則と、前記追加要素が保持する情報とに基づき特定されることを特徴とする請求項1乃至4のいずれか1項に記載のプログラム。
  6. ユーザの操作により特定される前記位置は、前記ユーザの操作によって画面上を動くポインタカーソルを用いて特定される位置であることを特徴とする請求項1乃至5のいずれか1項に記載のプログラム。
  7. 前記表示制御工程では、前記ポインタカーソルが前記表示領域の周辺に該表示領域を囲むように定義される領域に含まれることを条件に、前記複数の第2要素の表示位置が変更されていない前記リストを前記所定の表示領域に表示させることを特徴とする請求項6に記載のプログラム。
  8. 前記表示制御工程では、前記追加要素の追加により当該追加要素が前記所定の表示領域に表示されることを条件に、前記複数の第2要素の表示位置が変更されていない前記リストを前記所定の表示領域に表示させることを特徴とする請求項1乃至7のいずれか1項に記載のプログラム。
  9. 前記決定工程ではさらに、前記リストが所定の表示領域に表示されているときに前記リストから削除要素の削除が行われる場合、前記所定の表示領域においてユーザの操作により特定される前記位置と、前記リストにおける前記削除要素の位置とに基づき、前記1または複数の第1要素を決定し、
    前記表示制御工程ではさらに、前記削除要素の削除が行われ、且つ前記決定工程において決定された前記1または複数の第1要素の表示位置が変更され、且つ前記複数の要素の内の前記1または複数の第1要素とは異なる複数の第2要素の表示位置が変更されていない前記リストを、前記所定の表示領域に表示させることを特徴とする請求項1乃至8のいずれか1項に記載のプログラム。
  10. ネットワーク上のデバイスを検索する検索工程を前記コンピュータにさらに実行させ、
    前記複数の要素は、前記検索工程において検索されたデバイスを示す複数の表示項目であり、
    前記複数の表示項目が並んだリストが表示されているときに、前記検索工程において新たに検索されたデバイスを示す表示項目が、前記追加要素として追加されることを特徴とする請求項1乃至9のいずれか1項に記載のプログラム。
  11. 前記検索工程は、プリンタを検索することを特徴とする請求項10に記載のプログラム。
  12. 複数の要素が所定の規則に従ってソートされたリストを表示するための装置であって、
    前記リストが所定の表示領域に表示されているときに前記所定の規則に従って前記リストに追加要素が追加される場合、ユーザの操作により前記所定の表示領域において特定される位置と、前記リストにおいて前記追加要素が挿入される位置とに基づき、前記複数の要素の一部であり且つ表示位置の変更対象である1または複数の第1要素を決定する決定手段と、
    前記追加要素の追加が行われ、且つ前記決定手段により決定された前記1または複数の第1要素の表示位置が変更され、且つ前記複数の要素の内の前記1または複数の第1要素とは異なる複数の第2要素の表示位置が変更されていない前記リストを、前記所定の表示領域に表示させる表示制御手段と、
    を有することを特徴とする装置。
  13. 複数の要素が所定の規則に従ってソートされたリストを表示するための方法であって、
    前記リストが所定の表示領域に表示されているときに前記所定の規則に従って前記リストに追加要素が追加される場合、ユーザの操作により前記所定の表示領域において特定される位置と、前記リストにおいて前記追加要素が挿入される位置とに基づき、前記複数の要素の一部であり且つ表示位置の変更対象である1または複数の第1要素を決定する決定工程と、
    前記追加要素の追加が行われ、且つ前記決定工程において決定された前記1または複数の第1要素の表示位置が変更され、且つ前記複数の要素の内の前記1または複数の第1要素とは異なる複数の第2要素の表示位置が変更されていない前記リストを、前記所定の表示領域に表示させる表示制御工程と、
    を有することを特徴とする方法。
JP2016036022A 2016-02-26 2016-02-26 表示を制御する方法、装置、およびプログラム Active JP6624972B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016036022A JP6624972B2 (ja) 2016-02-26 2016-02-26 表示を制御する方法、装置、およびプログラム
US15/433,102 US10509543B2 (en) 2016-02-26 2017-02-15 Control method for ordering of a displayed list, and control apparatus and storage medium provided therewith

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016036022A JP6624972B2 (ja) 2016-02-26 2016-02-26 表示を制御する方法、装置、およびプログラム

Publications (3)

Publication Number Publication Date
JP2017151896A JP2017151896A (ja) 2017-08-31
JP2017151896A5 JP2017151896A5 (ja) 2019-04-11
JP6624972B2 true JP6624972B2 (ja) 2019-12-25

Family

ID=59679936

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016036022A Active JP6624972B2 (ja) 2016-02-26 2016-02-26 表示を制御する方法、装置、およびプログラム

Country Status (2)

Country Link
US (1) US10509543B2 (ja)
JP (1) JP6624972B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11947770B2 (en) * 2020-08-07 2024-04-02 Nippon Telegraph And Telephone Corporation Display control device, display control method, and display control program

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5416725A (en) * 1993-08-18 1995-05-16 P.C. Sentry, Inc. Computer-based notification system having redundant sensor alarm determination and associated computer-implemented method for issuing notification of events
EP1285330B1 (en) * 2000-05-11 2006-08-30 Nes Stewart Irvine Zeroclick
US20050102638A1 (en) * 2003-11-10 2005-05-12 Jiang Zhaowei C. Navigate, click and drag images in mobile applications
JP4887918B2 (ja) * 2006-06-09 2012-02-29 富士通株式会社 メール一覧表示プログラムおよびメール管理プログラム
JP5052303B2 (ja) * 2007-02-13 2012-10-17 株式会社リコー 無線通信端末装置、無線通信端末装置の表示方法及び無線通信ネットワークシステム
WO2008137961A1 (en) * 2007-05-07 2008-11-13 Listspinner Inc. System enabling social networking through user-generated lists
CN101324944A (zh) * 2007-06-12 2008-12-17 黎家军 在线信息动态排名的方法和系统
JP5324143B2 (ja) * 2008-07-01 2013-10-23 キヤノン株式会社 表示制御装置、及び表示制御方法
JP5309758B2 (ja) * 2008-07-28 2013-10-09 株式会社ニコン データ表示装置およびデータ表示プログラム
KR20110037298A (ko) * 2009-10-06 2011-04-13 삼성전자주식회사 리스트 편집 방법 및 이를 지원하는 휴대 단말기
EP2402860B1 (en) * 2010-06-29 2020-10-07 Brother Kogyo Kabushiki Kaisha Data processing apparatus
US8687023B2 (en) * 2011-08-02 2014-04-01 Microsoft Corporation Cross-slide gesture to select and rearrange
JP5873300B2 (ja) * 2011-11-08 2016-03-01 アマノ株式会社 業務管理システムおよびコンピュータプログラム
EP2793115A1 (en) * 2013-04-18 2014-10-22 Océ-Technologies B.V. Method of animating changes in a list
US9535565B2 (en) * 2013-05-13 2017-01-03 Microsoft Technology Licensing, Llc Smart insertion of applications into layouts
JP6321959B2 (ja) * 2013-12-25 2018-05-09 キヤノン株式会社 表示制御装置、表示制御方法、及び、プログラム
JP6331466B2 (ja) * 2014-02-27 2018-05-30 日本電気株式会社 表示制御装置、表示装置、表示方法、並びにコンピュータ・プログラム
US9875499B2 (en) * 2015-02-16 2018-01-23 Synergy Blue, Llc Enhanced on-demand service functionality implemented in casino gaming networks

Also Published As

Publication number Publication date
US10509543B2 (en) 2019-12-17
JP2017151896A (ja) 2017-08-31
US20170249060A1 (en) 2017-08-31

Similar Documents

Publication Publication Date Title
CN106575196B (zh) 电子装置及用于显示其用户界面的方法
KR102061361B1 (ko) 확장형 통신 서비스를 위한 동적인 최소화된 내비게이션 바
US9442627B2 (en) Expandable two-dimensional flow for container hierarchy
KR102061363B1 (ko) 확장형 통신 서비스를 위한 동적인 내비게이션 바를 도킹 및 언도킹하는 기법
US9959358B2 (en) Navigation tool for device user interface
US20170139890A1 (en) Smart card presentation of tabular data from collaboration database
US10936568B2 (en) Moving nodes in a tree structure
JP6599127B2 (ja) 情報検索システム及び方法
US20150378529A1 (en) Interaction in orbit visualization
US20140310653A1 (en) Displaying history information for application
CN105339957B (zh) 显示实体的不同视图的方法和系统
KR20160032938A (ko) 애플리케이션 디스플레이 디바이스 및 방법
US20150106761A1 (en) Information processing apparatus, method for controlling the information processing apparatus, and storage medium
US9940014B2 (en) Context visual organizer for multi-screen display
KR20200110384A (ko) 화학 구조 그리기 애플리케이션용 상황-인식 가상 키보드
US11320983B1 (en) Methods and graphical user interfaces for positioning a selection, selecting, and editing, on a computing device running applications under a touch-based operating system
JP6624972B2 (ja) 表示を制御する方法、装置、およびプログラム
US20150356061A1 (en) Summary view suggestion based on user interaction pattern
CN107102797A (zh) 一种对选定的对象内容执行搜索操作的方法及终端
US11157142B2 (en) Document processing apparatus and non-transitory computer readable medium
US9298366B2 (en) Electronic device, method and computer readable medium
US11010046B2 (en) Method and apparatus for executing function on a plurality of items on list
US20150149894A1 (en) Electronic device, method and storage medium
JP5778558B2 (ja) 情報通信装置
US20220198123A1 (en) Information processing device and non-transitory computer readable medium

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190225

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190225

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191023

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20191029

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191126

R151 Written notification of patent or utility model registration

Ref document number: 6624972

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151