JP5959669B2 - フォーカス移動制御装置 - Google Patents
フォーカス移動制御装置 Download PDFInfo
- Publication number
- JP5959669B2 JP5959669B2 JP2014560614A JP2014560614A JP5959669B2 JP 5959669 B2 JP5959669 B2 JP 5959669B2 JP 2014560614 A JP2014560614 A JP 2014560614A JP 2014560614 A JP2014560614 A JP 2014560614A JP 5959669 B2 JP5959669 B2 JP 5959669B2
- Authority
- JP
- Japan
- Prior art keywords
- focus
- component
- rule
- movement
- handler
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04842—Selection of displayed objects or displayed text elements
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction 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/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/08—Cursor circuits
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/14—Display of multiple viewports
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control 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/363—Graphics controllers
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control 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/39—Control of the bit-mapped memory
- G09G5/395—Arrangements specially adapted for transferring the contents of the bit-mapped memory to the screen
- G09G5/397—Arrangements specially adapted for transferring the contents of two or more bit-mapped memories to the screen simultaneously, e.g. for mixing or overlay
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2354/00—Aspects of interface with display user
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2370/00—Aspects of data communication
- G09G2370/08—Details of image data interface between the display device controller and the data line driver circuit
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Human Computer Interaction (AREA)
- Computer Graphics (AREA)
- User Interface Of Digital Computer (AREA)
- Lens Barrels (AREA)
Description
本発明は、複数の部品が表示されている画面上で、いずれかの部品にフォーカスする際のフォーカス移動制御を行うフォーカス移動制御装置に関するものである。
グラフィカルユーザインタフェース(GUI)上では、画面上に配置されたボタンなどの部品の選択が最も基本的な動作である。部品の選択には、マウスのようなポインティングデバイスを用いて部品を直接指示する方法と、方向キーやダイヤルなどの移動方向のみを指示できる入力装置で所望の部品にフォーカスを移動した後、選択する方法がある。方向キーやダイヤルなどを用いる方法では、入力装置からの入力に応じて適切にフォーカス移動制御することが重要である。
ところが、GUI上の部品数が多くなったり、部品の配置が複雑になったりするにつれ、そのようなフォーカス移動制御の設定は煩雑になっていく。そこで、フォーカス移動制御の設定を含めて、GUIの構築を効率化する手法がいくつか提案されている。例えば特許文献1では、部品の数や並び、フォーカス移動順序などを予めルール化しておき、それらを元にGUIを自動的に生成することで、GUIの構築を効率化する手法について開示している。また特許文献2では、画面上の部品にフォーカスを受け付けられるかどうかの属性をつけて、フォーカスを受け付けられない部品を飛ばしてフォーカスを移動する手法が開示されている。さらに特許文献3は、外部からのイベント通知に含まれるフォーカス移動情報によってフォーカスを移動し、使い勝手のよいGUIを提供しようというものである。
しかしながら、上記特許文献1に記載された技術では、先にフォーカス移動制御などのルールを決めてからGUIを自動生成するため、必ずしも所望のデザインのGUIが作成できるとは限らない。また、特許文献2に記載された技術は、フォーカスを受け付けられない部品を飛ばすだけで、複雑に配置された部品間のフォーカス移動を実現するものではない。さらに、特許文献3に記載された技術は、主に操作性の向上を目指したもので、フォーカス移動制御の設定の効率化については言及されていない。
この発明は、かかる問題を解決するためになされたもので、既にデザインされたGUIに対するフォーカス移動設定に関しても、効率的なフォーカス移動設定を実現することのできるフォーカス移動制御装置を得ることを目的とする。
この発明のフォーカス移動制御装置は、複数の部品が表示されたGUI画面において、いずれかの部品を操作するためのフォーカスを設定する場合、フォーカスを移動制御するフォーカス移動制御装置であって、デフォルトフォーカス位置を含み、現在フォーカスを持っている部品を示すフォーカス位置を記憶するフォーカス位置記憶部と、フォーカスを持っている部品が消失したときにGUI画面全体に対して適用するための、次にフォーカスを移動させるべき部品を決めるための部品消失ルールを記憶するルール記憶部と、フォーカスを持っている部品が消失してフォーカス移動がなされるときには、フォーカス位置記憶部に記憶されている部品が次にフォーカスを移動させるべき部品を決めるハンドラを持っているかどうかを判定し、ハンドラを持っているときは当該ハンドラに記載された処理に従ってフォーカスを移動し、ハンドラを持っていないときは、部品消失ルールに従ってフォーカスを移動できるかを判定し、移動できる場合はフォーカスを移動し、できない場合はデフォルトフォーカス位置にフォーカスを移動する移動制御部とを備えたものである。
この発明に係るフォーカス移動制御装置は、既にデザインされたGUIに対するフォーカス移動設定に関しても、効率的なフォーカス移動設定を実現することができ、フォーカスを持った部品が消失した場合にも対応することができる。
以下、この発明をより詳細に説明するために、この発明を実施するための形態について、添付の図面に従って説明する。
実施の形態1.
図1は、本実施の形態によるフォーカス移動制御装置を画面制御装置に適用した場合の構成図である。画面制御装置100は、フォーカス管理装置110、画面制御部120、部品130a,130bを備えている。また、画面制御装置100には、入力装置200と表示部300が接続されている。
実施の形態1.
図1は、本実施の形態によるフォーカス移動制御装置を画面制御装置に適用した場合の構成図である。画面制御装置100は、フォーカス管理装置110、画面制御部120、部品130a,130bを備えている。また、画面制御装置100には、入力装置200と表示部300が接続されている。
入力装置200は、矢印キーやダイヤルといった移動方向のみを指示できる装置である。例えば、矢印キーは上下左右の4方向を入力できるものが多いが、ここでの入力装置は何方向入力可能なものであってもよい。画面制御装置100は、画面上に表示するための部品130a,130bを表示部300に表示する。ここで、部品とは画面上に配置されうる全ての要素を指し、ボタンや画像、テキストフィールドなどが例として挙げられる。部品にはフォーカス可能なもの(例えばボタンやテキストフィールドなどユーザからの入力を受け付けるもの)と、フォーカス不可能なもの(例えば背景画像や装飾部品のようなユーザからの入力を受け付けないもの)に分けられるが、以降では説明を簡略化するため、フォーカス可能な部品のみが配置されているとして説明する。なお、各部品は固有のIDを持ち、一意に識別可能であるとする。図1では、二つの部品130a,130bのみが示されているが、複数個であれば部品の個数に限定はない。
フォーカス管理装置110は、入力装置200からの入力を受けてフォーカス移動制御を行うもので、フォーカス位置記憶部111、全体ルール記憶部112、移動制御部113を備えている。フォーカス位置記憶部111は、現在どの部品がフォーカスを持っているかを部品のIDによって表すフォーカス位置111aを格納する記憶部である。全体ルール記憶部112は、画面全体に一括で適用されるフォーカス移動ルールである全体ルール112aを格納する記憶部である。全体ルール112aに設定できるルールとしては、部品の絶対座標の位置関係に応じて移動する、部品の重なり順に応じて移動する、予め指定された順番に移動する、など全体に対して一括して適用できるルールが例として挙げられる。例えば、上下左右の4方向の入力がある環境で、部品の絶対座標の位置関係に応じて移動するというルールを全体ルール112aとして設定すると、フォーカス管理装置110は、フォーカス位置111aで示される部品から見て、入力装置200から入力された方向にあって最も近い部品を判別し、そこにフォーカスを与えるとともに、フォーカス位置111aにその部品のIDを保存する。
また、各部品(図1では部品130aや部品130b)には任意の処理が記述できるハンドラ131を指定でき、フォーカス移動に関するルールを設定することができる。ハンドラ131には、例えば、ある特定の部品を指定する、一番近くの部品を指定するなど、特定の部品に対してだけ適用できるようなルールを設定できるが、このルールは、ランダムにフォーカスを移動したり、全体ルールを拡張したりするものであってもよい。
フォーカス管理装置110の移動制御部113は、入力装置200からのフォーカスの移動を行うための入力を受けて、フォーカス位置111aで示されている部品が、次にフォーカスを移動させるべき部品を決めるハンドラ131を持っているかどうかを判定し、ハンドラ131を持っているときはそのハンドラ131に記載された処理に従ってフォーカスを移動し、ハンドラ131を持っていないときは、全体ルール112aに従ってフォーカスを移動できるかを判定し、移動できる場合はフォーカスを移動し、できない場合はフォーカスを移動しないよう制御する制御部である。
また、画面制御部120は、部品130a,130bを用いて、各部品が表示される画面データを生成する制御部であり、生成した表示画面データを表示部300に送出する。表示部300は、表示画面データに基づいて画面表示を行うディスプレイである。
次に、実施の形態1のフォーカス移動制御装置の動作を説明する。図2は、その動作を示すフローチャートである。
ユーザが入力装置200によりフォーカスの移動を行うための入力を行うと(ステップST101)、フォーカス管理装置110では、移動制御部113が、まず、そのときフォーカス位置111aに設定されている部品にハンドラ131が設定されているかどうかをチェックする(ステップST102)。ここで、ハンドラ131が設定されていないときには、全体ルール112aを適用するが(ステップST105)、ハンドラ131が設定されている場合には、ハンドラ131に書かれたルールによるフォーカス移動の計算を実施する(ステップST103)。その結果、フォーカス移動先が見つかった場合(ステップST104)には、そのままフォーカス移動を行うが(ステップST107)、見つからなかった場合には、全体ルール112aによるフォーカス移動計算を実施する(ステップST105)。次に、ステップST105の全体ルール112aによるフォーカス移動計算で、フォーカスが見つかった場合(ステップST106)には、フォーカスを移動する(ステップST107)。最終的にフォーカス移動先が見つからなかった場合(ステップST106)には、フォーカス移動処理を実施しない(ステップST108)。
ユーザが入力装置200によりフォーカスの移動を行うための入力を行うと(ステップST101)、フォーカス管理装置110では、移動制御部113が、まず、そのときフォーカス位置111aに設定されている部品にハンドラ131が設定されているかどうかをチェックする(ステップST102)。ここで、ハンドラ131が設定されていないときには、全体ルール112aを適用するが(ステップST105)、ハンドラ131が設定されている場合には、ハンドラ131に書かれたルールによるフォーカス移動の計算を実施する(ステップST103)。その結果、フォーカス移動先が見つかった場合(ステップST104)には、そのままフォーカス移動を行うが(ステップST107)、見つからなかった場合には、全体ルール112aによるフォーカス移動計算を実施する(ステップST105)。次に、ステップST105の全体ルール112aによるフォーカス移動計算で、フォーカスが見つかった場合(ステップST106)には、フォーカスを移動する(ステップST107)。最終的にフォーカス移動先が見つからなかった場合(ステップST106)には、フォーカス移動処理を実施しない(ステップST108)。
ここで、例えばGUI開発者が、図3のように部品が配置されているときに、矢印306,307,308、309のように上下キーでフォーカスの移動を設定しなければならない場合を考える。全体ルール112aとしては、部品の位置関係に応じてフォーカスを移動するルールを設定する。このようにすることで、例えば、部品302がフォーカスを持った状態で上キーが押されるとフォーカスは部品301に移動し、逆に下キーが押されたときにはフォーカスは部品303に移動する。ここで、デザインの都合上、部品304と部品305が重なるような状態になっており、全体ルール112aでは矢印306,307,308の移動は実現できるが、矢印309の移動は実現できない。そこで、部品304には下キーで部品305にフォーカスを移動するハンドラ310を、部品305には上キーで部品304にフォーカスを移動するハンドラ311を設定することで、所望の処理を実現できる。
このように、実施の形態1では、ハンドラ131が設定されているか否か、またハンドラ131によってフォーカス移動先を取得できたかどうかによって、全体ルール112aによるフォーカス移動とハンドラ131によるフォーカス移動を使い分けることができるため、おおまかには全体ルール112aで、細かい例外的なところはハンドラ131で設定するというように、少ない手間で所望の動作を設定することができる。また、画面デザインに変更が生じた場合でも、全体ルール112aはそのままに、変更した箇所のハンドラ131を調整するだけで対応できるなど、部品配置への対応も容易になる。さらには、プログラム作成中にフォーカス移動に関する不具合が生じた場合にでも、原因箇所の特定や修正も容易になる。
以上説明したように、実施の形態1のフォーカス移動制御装置によれば、複数の部品が表示されたGUI画面において、いずれかの部品を操作するためのフォーカスを設定する場合、フォーカスを移動制御するフォーカス移動制御装置であって、フォーカスの移動を行うための入力があったときにGUI画面全体に対して適用するための、次にフォーカスを移動させるべき部品を決める全体ルールと、現在フォーカスを持っている部品を示すフォーカス位置と、フォーカスの移動を行うための入力を受けて、フォーカス位置で示されている部品が、次にフォーカスを移動させるべき部品を決めるハンドラを持っているかどうかを判定し、ハンドラを持っているときはハンドラに記載された処理に従ってフォーカスを移動し、ハンドラを持っていないときは、全体ルールに従ってフォーカスを移動できるかを判定し、移動できる場合はフォーカスを移動し、できない場合はフォーカスを移動しないよう制御する移動制御部とを備えたので、既にデザインされたGUIに対するフォーカス移動設定に関しても、効率的なフォーカス移動設定を実現することができる。
実施の形態2.
実施の形態1は、入力装置200によってフォーカスを移動するものであるが、次に、フォーカスを持っている部品が消失するときのフォーカス移動方法の設定について、実施の形態2として説明する。なお、実施の形態2におけるフォーカス移動制御装置に関する図面上の構成は実施の形態1と同様であるため、図1を用いて説明する。
実施の形態1は、入力装置200によってフォーカスを移動するものであるが、次に、フォーカスを持っている部品が消失するときのフォーカス移動方法の設定について、実施の形態2として説明する。なお、実施の形態2におけるフォーカス移動制御装置に関する図面上の構成は実施の形態1と同様であるため、図1を用いて説明する。
フォーカスを持っている部品が消失するとは、例えばスマートフォンで通信状況が変わった、車載機器で自動車の運行状態が変わった、などユーザの直接操作以外の要因で機器内の状態が変わったとき、フォーカスを持っていた部品が状態の変わる前のみ有効な部品であったがために、フォーカス不能になったり部品そのものが画面から消失したりすることを意味する。また、特定のボタンを選択したことにより、そのボタン自身がフォーカスできなくなったり、消失したりしたときも、フォーカスを持っている部品が消失したこととする。
そこで、実施の形態2では、フォーカス管理装置110の全体ルール112aとしてフォーカスを持っている部品が消失した場合の部品消失ルールを記憶する。全体ルール112aに設定できる部品消失ルールとしては、一番近くのフォーカス可能な部品にフォーカスする、重なり順で一つ手前の部品にフォーカスする、などの全体に対して一括して設定できるルールが例として挙げられる。
さらに、各部品130a,130bにはハンドラ131として部品自身がフォーカスを持っていてかつ消失するときのフォーカス移動ルールをハンドラとして設定することができる。ハンドラ131には例えば、ある特定の部品を指定する、同じ種類の部品を指定するなど、特定の部品に対してだけ適用できるような部品消失ルールを設定でき、さらに部品消失ルールは、全体ルールを拡張するものであってもよい。
さらに、各部品130a,130bにはハンドラ131として部品自身がフォーカスを持っていてかつ消失するときのフォーカス移動ルールをハンドラとして設定することができる。ハンドラ131には例えば、ある特定の部品を指定する、同じ種類の部品を指定するなど、特定の部品に対してだけ適用できるような部品消失ルールを設定でき、さらに部品消失ルールは、全体ルールを拡張するものであってもよい。
また、フォーカス管理装置110には、予めデフォルトフォーカス位置を設定することができ、上記部品毎のハンドラでも部品消失ルールでも適切なフォーカス移動先が見つからなかった場合には、デフォルトフォーカス位置にフォーカスを設定することができる。なお、デフォルトフォーカス位置はフォーカス位置111aとしてフォーカス位置記憶部111に保持されているものとする。
次に、実施の形態2の動作について説明する。なお、フォーカスを持った部品が消失するとき以外の動作は実施の形態1と同様であるため、実施の形態1とは異なる動作について重点的に説明する。
図4に、動作のフローチャートを示す。まず、上記のいずれかの要因によりフォーカスを持っている部品が消失すると(ステップST201)、フォーカス管理装置110の移動制御部113は、そのときフォーカスが当たっている部品にハンドラ131が設定されているかどうかをチェックする(ステップST202)。ここで、ハンドラ131が設定されていないときには全体ルール112aを適用するが(ステップST205)、ハンドラ131が設定されている場合には、ハンドラ131に書かれたルールによるフォーカス移動の計算を実施する(ステップST203)。その結果、フォーカス移動先が見つかった場合(ステップST204)には、そのままフォーカス移動を行うが(ステップST207)、見つからなかった場合には、全体ルール112aによるフォーカス移動計算を実施する(ステップST205)。次に、ステップST205の全体ルール112aによるフォーカス移動計算で、フォーカスが見つかった場合(ステップST206)には、フォーカスを移動する(ステップST207)。最終的にフォーカス移動先が見つからなかった場合には、デフォルトフォーカス位置にフォーカスを移動する(ステップST208)。
図4に、動作のフローチャートを示す。まず、上記のいずれかの要因によりフォーカスを持っている部品が消失すると(ステップST201)、フォーカス管理装置110の移動制御部113は、そのときフォーカスが当たっている部品にハンドラ131が設定されているかどうかをチェックする(ステップST202)。ここで、ハンドラ131が設定されていないときには全体ルール112aを適用するが(ステップST205)、ハンドラ131が設定されている場合には、ハンドラ131に書かれたルールによるフォーカス移動の計算を実施する(ステップST203)。その結果、フォーカス移動先が見つかった場合(ステップST204)には、そのままフォーカス移動を行うが(ステップST207)、見つからなかった場合には、全体ルール112aによるフォーカス移動計算を実施する(ステップST205)。次に、ステップST205の全体ルール112aによるフォーカス移動計算で、フォーカスが見つかった場合(ステップST206)には、フォーカスを移動する(ステップST207)。最終的にフォーカス移動先が見つからなかった場合には、デフォルトフォーカス位置にフォーカスを移動する(ステップST208)。
ここで、例えば、図5のようにフォーカス可能な部品が横に4つ並んでいる状態を考える。全体ルール112aとしては、フォーカスを持っている部品が消失したときは、画面上で一つ右の部品にフォーカスを移動する部品消失ルールを設定する。また、デフォルトフォーカス位置は一番左の部品501であるため、部品502がフォーカスを持った状態で消失したときには部品503にフォーカスが移動するが、一番右の部品504がフォーカスを持った状態で消失すると、フォーカスは一番左の部品501に移動する。ここで開発者は、部品504がフォーカスを持った状態で消失したときに、一番左の部品ではなく一つ左の部品503にフォーカスを移動しなければならないとすると、ハンドラ505にフォーカスを部品503に移動する処理を指定することによって、所望のフォーカス移動を実装することができる。
このように、実施の形態2では、実施の形態1において述べた効果に加え、フォーカスを持った部品が消失した場合にも対応できる。具体的には、ハンドラ131が設定されているか否か、またハンドラ131によってフォーカス移動先を取得できたかどうかによって、全体ルール112aによるフォーカス移動とハンドラ131によるフォーカス移動を使い分けることができるため、少ない手間で所望の動作を設定することができる。また、画面デザインに変更が生じた場合でも、全体ルール112aはそのままに、変更した箇所のハンドラ131を調整するだけで対応できるなど、部品配置への対応も容易になる。さらには、プログラム作成中にフォーカス移動に関する不具合が生じた場合にでも、原因箇所の特定や修正も容易になる。
なお、実施の形態1で述べたユーザの入力に対するフォーカス移動制御の設定と、実施の形態2で述べたフォーカス部品が消失したときのフォーカス移動制御の設定は、同時に用いることができ、フォーカス移動のあらゆるケースを効率的に設定することができる。
以上説明したように、実施の形態2のフォーカス移動制御装置によれば、フォーカスを持っている部品が消失したときにGUI画面全体に対して適用するための、次にフォーカスを移動させるべき部品を決めるための部品消失ルールを有すると共に、フォーカス位置は、デフォルトフォーカス位置を含み、移動制御部は、フォーカスを持っている部品が消失してフォーカス移動がなされるときには、フォーカス位置に記憶されている部品が次にフォーカスを移動させるべき部品を決めるハンドラを持っているかどうかを判定し、ハンドラを持っているときはハンドラに記載された処理に従ってフォーカスを移動し、ハンドラを持っていないときは、消失部品ルールに従ってフォーカスを移動できるかを判定し、移動できる場合はフォーカスを移動し、できない場合はデフォルトフォーカス位置にフォーカスを移動するようにしたので、実施の形態1の効果に加えて、フォーカスを持った部品が消失した場合にも対応することができる。
実施の形態3.
実施の形態1と実施の形態2では、各部品が画面上に単に配置されている場合について説明したが、GUIではしばしば部品がグループ分けされ階層的に管理されることがある。例えば、画面上の部品を意味合いや操作のステップ毎にグループ分けし、線で囲んだり色分けしたりし、グループ内にはさらに細かいグループが設定されているといった状況がある。そこで、実施の形態3ではグループの階層毎に全体ルールを設定する形態について説明する。なお、実施の形態3においてもフォーカス移動制御装置における図面上の構成は図1と同様であるため、図1を用いて説明する。
実施の形態1と実施の形態2では、各部品が画面上に単に配置されている場合について説明したが、GUIではしばしば部品がグループ分けされ階層的に管理されることがある。例えば、画面上の部品を意味合いや操作のステップ毎にグループ分けし、線で囲んだり色分けしたりし、グループ内にはさらに細かいグループが設定されているといった状況がある。そこで、実施の形態3ではグループの階層毎に全体ルールを設定する形態について説明する。なお、実施の形態3においてもフォーカス移動制御装置における図面上の構成は図1と同様であるため、図1を用いて説明する。
実施の形態3では、GUI画面上の各部品が階層的に管理されている場合に、ユーザからの入力に対して次にフォーカスを移動させるべき部品を決めるための階層内移動ルールを全体ルール112aとして階層毎に備え、移動制御部113は、いずれかの階層内でフォーカス移動ができないときは、一つ上の階層での階層内移動ルールを用いてフォーカスを移動するよう構成されている。
次に、実施の形態3の動作について説明する。図6にそのフローチャートを示す。まず、ユーザからの入力があると(ステップST301)、フォーカス管理装置110の移動制御部113は、実施の形態1と同様の方法で、その階層内でフォーカス移動が可能かどうかを判定する(ステップST302)。フォーカス移動が可能な場合はそのままフォーカス移動を実施するが(ステップST305)、フォーカスが移動できない場合は、一つ上の階層が存在するかを判定する(ステップST303)。存在する場合は一つ上の階層内でフォーカスが移動できるかどうか判定し(ステップST306)、存在しない場合はフォーカス移動を実施しない(ステップST304)。
ここで、例えば、図7のように、ある画面701の中の内側に部品のグループ704がある状況で、画面全体には部品どうしの位置関係によるフォーカス移動ルールが設定されており、内側のグループ704内には重なり順による移動ルールが階層内移動ルールとして設定されているとする。このとき、内側のグループ704内のルールでは、左キーを押すと一つ手前の部品(例えば部品706から部品705)にフォーカスが移動し、右キーを押すと一つ奥の部品(例えば部品706から部品707)にフォーカスが移動するように設定されている。この状態で、内側のグループ704内の部品にフォーカスがある状態で、左キーを押すと一つ手前の部品にフォーカスが移動するが、一番手前の部品705にフォーカスがある状態で左キーを押すとグループ704内ではさらに移動する先がない。しかし、移動制御部113は、その場合は一つ上の階層である画面701に左キーが押されたというイベントを委譲する。その結果、画面701の全体ルール112aである部品どうしの位置関係によるフォーカス移動が適用され、内側のグループ704から見て左にある部品702にフォーカスが移動することになる。すなわち、この構成では、部品703にフォーカスがある状態から左キーを連続して押すと、部品707,部品706,部品705、部品702の順番にフォーカスが移動し、逆に、部品702にフォーカスがある状態で右キーを連続して押すと、部品705,部品706,部品707,部品703の順場にフォーカスが移動する。
このときの部品毎のハンドラ131には実施の形態1のときと同様の処理を指定できるほか、グループ内にフォーカス移動先がなかったとしても上の階層に処理を委譲しないようにする処理を入れたり、階層をまたがってフォーカスを移動する処理を入れたりすることもできる。
このように、実施の形態3では、階層毎に全体ルール112aを設定することで、全体ルール112aだけでも複雑なルールを設定することもできる。ここで、全体ルール112aは階層毎に異なっていても全て同じルールが設定されていてもよい。さらに、ハンドラ131を使うことによって階層構造を超えたフォーカス移動も指定できる。
以上のように、実施の形態3のフォーカス移動制御装置によれば、GUI画面上の各部品が階層的に管理されている場合に、フォーカスの移動を行うための入力に対して、次にフォーカスを移動させるべき部品を決めるための階層内移動ルールを階層毎に備え、移動制御部は、いずれかの階層内でフォーカス移動ができないときは、一つ上の階層での階層内移動ルールを用いてフォーカスを移動するようにしたので、部品の階層毎に階層内移動ルールを設定することによって、複雑なフォーカス移動処理であっても少ない手間で実現することができる。また、画面デザインに変更が生じた場合にも、その変更があるグループ内に閉じるものであれば、グループ内のルール設定の変更だけで対応できるため、修正が容易になる。さらには、プログラム作成中にフォーカス移動に関する不具合が生じた場合にでも、階層毎に原因を探索することで、原因箇所の特定や修正を効率的に実施できる。
実施の形態4.
実施の形態3では、ユーザの入力に対するフォーカス移動に関して部品が階層的に管理されているときの場合を説明したが、フォーカスを持っている部品が消失したときのルール設定も階層毎に設定することができる。即ち、実施の形態4は、実施の形態2の構成に対して実施の形態3で説明した階層内移動ルールを設定したものである。また、実施の形態4においてもフォーカス移動制御装置における図面上の構成は図1と同様であるため、図1を用いて説明する。
実施の形態3では、ユーザの入力に対するフォーカス移動に関して部品が階層的に管理されているときの場合を説明したが、フォーカスを持っている部品が消失したときのルール設定も階層毎に設定することができる。即ち、実施の形態4は、実施の形態2の構成に対して実施の形態3で説明した階層内移動ルールを設定したものである。また、実施の形態4においてもフォーカス移動制御装置における図面上の構成は図1と同様であるため、図1を用いて説明する。
次に、実施の形態4の動作について説明する。図8にフローチャートを示す。まず、フォーカスを持っている部品が消失すると(ステップST401)、移動制御部113は実施の形態2と同様の方法で、その階層内でフォーカス移動が可能かどうかを判定する(ステップST402)。フォーカス移動が可能な場合はそのままフォーカス移動を実施するが(ステップST405)、フォーカスが移動できない場合は、一つ上の階層が存在するかを判定する(ステップST403)。存在する場合は一つ上の階層内でフォーカスが移動できるかどうか判定し(ステップST406)、ステップST403において一つ上の階層が存在しない場合は、デフォルトフォーカス位置にフォーカス移動を実施する(ステップST404)。なお、少なくとも最上層では、デフォルトフォーカス位置は消失しない部品を予め定めておくものとする。
ここで、例えば、図9のように、ある画面901の中の内側のグループ904がある状況で、画面901の全体ルール112a(階層内移動ルール)には、フォーカスを持っている部品が消失したときには一番近くの部品にフォーカスを移動し、内側のグループ904には一つ左の部品にフォーカスを移動するという設定がなされていたとする。さらに、グループ904のデフォルトフォーカス位置は部品905で、画面901のデフォルトフォーカス位置は部品902であるとする。この状態で、内側のグループ内の部品のうち部品907がフォーカスを持った状態で消失したときには、左の部品である部品906にフォーカスを移動できるが、部品905がフォーカスを持った状態で消失したときには、部品905には左側に部品がなく、かつ部品905自身がデフォルトフォーカス位置であるため、グループ内ではフォーカスを移動する先がない。しかし、移動制御部113は、その場合は一つ上の階層である画面901に左キーが押されたというイベントを委譲する。その結果、画面901の全体ルール112a(階層内移動ルール)が適用され、内側のグループ904から見て一番近い部品903にフォーカスが移動することになる。
このときの部品毎のハンドラ131には実施の形態2のときと同様の処理を指定できるほか、階層をまたがってフォーカスを移動する処理や、グループ内にフォーカスの移動先がなかったときの委譲先を変更するような処理を入れることができる。
以上説明したように、実施の形態4のフォーカス移動制御装置によれば、GUI画面上の各部品が階層的に管理されている場合に、フォーカスの移動を行うための入力に対して次にフォーカスを移動させるべき部品を決めるための階層内移動ルールを階層毎に備え、移動制御部は、実施の形態2の制御の結果、いずれかの階層内でフォーカス移動ができないときは、一つ上の階層での階層内移動ルールを用いてフォーカスを移動するようにしたので、部品の階層毎に全体ルールを設定することによって、複雑なフォーカス移動処理であっても少ない手間で実現することができる。また、画面デザインに変更が生じた場合にも、その変更があるグループ内に閉じるものであれば、グループ内のルール設定の変更だけで対応できるため、修正が容易になる。さらには、プログラム作成中にフォーカス移動に関する不具合が生じた場合にでも、階層毎に原因を探索することで、原因箇所の特定や修正を効率的に実施できる。
なお、実施の形態3で述べたユーザの入力に対するフォーカス移動制御の設定と、実施の形態4で述べたフォーカス部品が消失したときのフォーカス移動制御の設定は、同時に用いることができ、フォーカス移動のあらゆるケースを効率的に設定することができる。
また、本願発明はその発明の範囲内において、各実施の形態の自由な組み合わせ、あるいは各実施の形態の任意の構成要素の変形、もしくは各実施の形態において任意の構成要素の省略が可能である。
以上のように、この発明に係るフォーカス移動制御装置は、複数の部品が配置されたGUI画面上でいずれかの部品に対するフォーカスを移動する際の移動制御の構成に関するものであり、GUI画面を制御する画面制御装置に用いるのに適している。
100 画面制御装置、110 フォーカス管理装置、111 フォーカス位置記憶部、111a フォーカス位置、112 全体ルール記憶部、112a 全体ルール、113 移動制御部、120 画面制御部、130a,130b 部品、131 ハンドラ、200 入力装置、300 表示部。
Claims (3)
- 複数の部品が表示されたGUI画面において、いずれかの部品を操作するためのフォーカスを設定する場合、当該フォーカスを移動制御するフォーカス移動制御装置であって、
デフォルトフォーカス位置を含み、現在フォーカスを持っている部品を示すフォーカス位置を記憶するフォーカス位置記憶部と、
フォーカスを持っている部品が消失したときにGUI画面全体に対して適用するための、次にフォーカスを移動させるべき部品を決めるための部品消失ルールを記憶するルール記憶部と、
フォーカスを持っている部品が消失してフォーカス移動がなされるときには、前記フォーカス位置記憶部に記憶されている部品が次にフォーカスを移動させるべき部品を決めるハンドラを持っているかどうかを判定し、前記ハンドラを持っているときは当該ハンドラに記載された処理に従ってフォーカスを移動し、前記ハンドラを持っていないときは、前記部品消失ルールに従ってフォーカスを移動できるかを判定し、移動できる場合はフォーカスを移動し、できない場合は前記デフォルトフォーカス位置にフォーカスを移動する移動制御部とを備えたフォーカス移動制御装置。 - 前記ルール記憶部は、フォーカスの移動を行うための入力があったときにGUI画面全体に対して適用するための、次にフォーカスを移動させるべき部品を決める全体ルールを記憶し、
前記移動制御部は、フォーカスの移動を行うための入力を受けて、前記フォーカス位置で示されている部品が、次にフォーカスを移動させるべき部品を決めるハンドラを持っているかどうかを判定し、前記ハンドラを持っているときは当該ハンドラに記載された処理に従ってフォーカスを移動し、前記ハンドラを持っていないときは、前記全体ルールに従ってフォーカスを移動できるかを判定し、移動できる場合はフォーカスを移動し、できない場合はフォーカスを移動しないよう制御することを特徴とする請求項1記載のフォーカス移動制御装置。 - 前記ルール記憶部は、GUI画面上の各部品が階層的に管理されている場合に、フォーカスの移動を行うための入力に対して、次にフォーカスを移動させるべき部品を決めるための階層内移動ルールを前記階層毎に記憶し、
前記移動制御部は、請求項1に記載の制御の結果、いずれかの階層内でフォーカス移動ができないときは、一つ上の階層での前記階層内移動ルールを用いてフォーカスを移動することを特徴とする請求項1記載のフォーカス移動制御装置。
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/JP2013/053092 WO2014122777A1 (ja) | 2013-02-08 | 2013-02-08 | フォーカス移動制御装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP5959669B2 true JP5959669B2 (ja) | 2016-08-02 |
| JPWO2014122777A1 JPWO2014122777A1 (ja) | 2017-01-26 |
Family
ID=51299389
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2014560614A Expired - Fee Related JP5959669B2 (ja) | 2013-02-08 | 2013-02-08 | フォーカス移動制御装置 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US10013155B2 (ja) |
| JP (1) | JP5959669B2 (ja) |
| CN (1) | CN104969161B (ja) |
| DE (1) | DE112013006625T5 (ja) |
| WO (1) | WO2014122777A1 (ja) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN111522491B (zh) * | 2020-04-09 | 2022-03-08 | 广州视源电子科技股份有限公司 | 焦点移动方法、装置、存储介质及处理器 |
| CN111666011B (zh) * | 2020-06-05 | 2023-07-07 | 阿波罗智联(北京)科技有限公司 | 页面焦点显示方法及装置 |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2002041198A (ja) * | 2000-07-24 | 2002-02-08 | Nippon Hoso Kyokai <Nhk> | フォーカスナビゲーションテーブル作成装置 |
| WO2003025729A1 (en) * | 2001-09-13 | 2003-03-27 | Matsushita Electric Industrial Co., Ltd. | Gui part focus movement destination setter and focus moving device |
| JP2005072945A (ja) * | 2003-08-25 | 2005-03-17 | Casio Comput Co Ltd | 通信端末装置および通信情報処理のプログラム |
| JP2005173964A (ja) * | 2003-12-11 | 2005-06-30 | Casio Comput Co Ltd | 機能呼出し装置および機能呼出し処理プログラム |
Family Cites Families (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4242986B2 (ja) | 1998-10-27 | 2009-03-25 | パナソニック株式会社 | フォーカス制御装置 |
| US6614457B1 (en) * | 1998-10-27 | 2003-09-02 | Matsushita Electric Industrial Co., Ltd. | Focus control device that moves a focus in a GUI screen |
| US6606106B1 (en) * | 2000-06-02 | 2003-08-12 | Sun Microsystems, Inc. | Hierarchical model for expressing focus traversal |
| EP1696662A4 (en) * | 2003-12-18 | 2008-11-12 | Mitsubishi Electric Corp | PICTURE CONTROL AND PICTURE DISPLAY SYSTEM |
| FR2877112B3 (fr) * | 2004-10-22 | 2007-06-08 | Nds Ltd | Procede de gestion de fenetres d'affichage |
| JP4534891B2 (ja) | 2005-07-26 | 2010-09-01 | ソニー株式会社 | 入力装置、映像コンテンツのシステム及び入力方法 |
| JP2008097266A (ja) * | 2006-10-11 | 2008-04-24 | Koyo Electronics Ind Co Ltd | 表示画面上の部品のフォーカス移動方式および表示器 |
| JP2008293410A (ja) * | 2007-05-28 | 2008-12-04 | Toshiba Corp | ブラウザ表示装置 |
| CN101334723A (zh) * | 2007-06-26 | 2008-12-31 | 上海岱嘉医学信息系统有限公司 | 提高控件移动速度的方法 |
| KR101457590B1 (ko) * | 2007-10-12 | 2014-11-03 | 엘지전자 주식회사 | 휴대 단말기 및 그 포인터 제어방법 |
| US8893039B2 (en) * | 2007-12-11 | 2014-11-18 | Panasonic Corporation | Apparatus and method for automatic focus shift |
| JP2010039967A (ja) * | 2008-08-08 | 2010-02-18 | Hitachi Ltd | Guiプログラム開発支援装置及び開発支援方法およびguiプログラム |
| US20140108981A1 (en) * | 2012-10-12 | 2014-04-17 | Microsoft Corporation | Weighted focus navigation of graphical user interface |
-
2013
- 2013-02-08 US US14/761,549 patent/US10013155B2/en active Active
- 2013-02-08 CN CN201380072434.6A patent/CN104969161B/zh not_active Expired - Fee Related
- 2013-02-08 WO PCT/JP2013/053092 patent/WO2014122777A1/ja not_active Ceased
- 2013-02-08 DE DE112013006625.4T patent/DE112013006625T5/de not_active Ceased
- 2013-02-08 JP JP2014560614A patent/JP5959669B2/ja not_active Expired - Fee Related
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2002041198A (ja) * | 2000-07-24 | 2002-02-08 | Nippon Hoso Kyokai <Nhk> | フォーカスナビゲーションテーブル作成装置 |
| WO2003025729A1 (en) * | 2001-09-13 | 2003-03-27 | Matsushita Electric Industrial Co., Ltd. | Gui part focus movement destination setter and focus moving device |
| JP2005072945A (ja) * | 2003-08-25 | 2005-03-17 | Casio Comput Co Ltd | 通信端末装置および通信情報処理のプログラム |
| JP2005173964A (ja) * | 2003-12-11 | 2005-06-30 | Casio Comput Co Ltd | 機能呼出し装置および機能呼出し処理プログラム |
Also Published As
| Publication number | Publication date |
|---|---|
| JPWO2014122777A1 (ja) | 2017-01-26 |
| US10013155B2 (en) | 2018-07-03 |
| CN104969161A (zh) | 2015-10-07 |
| WO2014122777A1 (ja) | 2014-08-14 |
| CN104969161B (zh) | 2018-01-16 |
| US20150363078A1 (en) | 2015-12-17 |
| DE112013006625T5 (de) | 2015-10-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR102549529B1 (ko) | 전자 장치에서 제 1 애플리케이션 아이콘을 이용하여 제 2 애플리케이션을 실행하기 위한 방법 | |
| US20120179988A1 (en) | Method and apparatus for selecting icon through grouping | |
| CN105453017B (zh) | 提供图形用户界面的方法和装置 | |
| US10627980B2 (en) | Organization mode support mechanisms | |
| KR102078753B1 (ko) | 화면 구성 방법 및 그 전자 장치 | |
| KR20130039586A (ko) | 터치 디바이스의 잠금 기능 제공 방법 및 장치 | |
| CN104077027A (zh) | 显示应用的执行结果的设备及方法 | |
| US9239890B2 (en) | System and method for carousel context switching | |
| US20180024711A1 (en) | System and method for pyramidal navigation | |
| KR20140036576A (ko) | 카테고리 디스플레이를 위한 방법 및 그 방법을 처리하는 전자 장치 | |
| US20120311441A1 (en) | System and method for power browsing of content | |
| JP5959669B2 (ja) | フォーカス移動制御装置 | |
| JP2014211720A (ja) | 表示装置および表示制御プログラム | |
| JP5557771B2 (ja) | プラント監視制御システム | |
| WO2014080453A1 (ja) | 情報システム、管理サーバの制御プログラム及び携帯装置の制御プログラム | |
| KR20140098276A (ko) | 템플릿을 이용한 애플리케이션 저작방법 | |
| CN103235682B (zh) | 一种展示菜单的方法及装置 | |
| US20140259150A1 (en) | Method and apparatus for recognizing pattern | |
| US10019141B2 (en) | Information processing apparatus, information display program, and information display method for controlling a cursor position in a text region and a display region | |
| US20140253595A1 (en) | Method for displaying object and electronic device thereof | |
| JP5238880B2 (ja) | カメラシンボル表示装置及びコンピュータプログラム | |
| KR102176681B1 (ko) | 객체 표시를 위한 전자 장치 및 방법 | |
| JP6428442B2 (ja) | 表示方法、表示プログラム、及び情報処理装置 | |
| KR102081389B1 (ko) | 위치 기반 서비스 제공 방법 및 그 전자 장치 | |
| JP2013041401A (ja) | データ表示装置、データ表示方法およびプログラム |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20160524 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160621 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 5959669 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| LAPS | Cancellation because of no payment of annual fees |