JP6766779B2 - ユーザインタフェース開発支援装置、ユーザインタフェース開発支援方法、および、ユーザインタフェース開発支援プログラム - Google Patents

ユーザインタフェース開発支援装置、ユーザインタフェース開発支援方法、および、ユーザインタフェース開発支援プログラム Download PDF

Info

Publication number
JP6766779B2
JP6766779B2 JP2017161708A JP2017161708A JP6766779B2 JP 6766779 B2 JP6766779 B2 JP 6766779B2 JP 2017161708 A JP2017161708 A JP 2017161708A JP 2017161708 A JP2017161708 A JP 2017161708A JP 6766779 B2 JP6766779 B2 JP 6766779B2
Authority
JP
Japan
Prior art keywords
user interface
list
operation input
objects
edit screen
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
JP2017161708A
Other languages
English (en)
Other versions
JP2019040380A (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.)
Omron Corp
Original Assignee
Omron Corp
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 Omron Corp filed Critical Omron Corp
Priority to JP2017161708A priority Critical patent/JP6766779B2/ja
Priority to US16/639,559 priority patent/US11709584B2/en
Priority to PCT/JP2018/028378 priority patent/WO2019039197A1/ja
Priority to CN201880053518.8A priority patent/CN111052070B/zh
Priority to EP18848052.9A priority patent/EP3674887B1/en
Publication of JP2019040380A publication Critical patent/JP2019040380A/ja
Application granted granted Critical
Publication of JP6766779B2 publication Critical patent/JP6766779B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/0484Interaction 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
    • 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
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/453Help systems

Description

この発明は、プログラマによるユーザインタフェースの開発を支援する技術に関する。
現在、ファクトリーオートメーション(FA)のシステムにおいては、一般的に、ユーザインタフェース(UI)を備えた表示器が用いられている。表示器は、FAシステム内の各装置の状態を表示する機能、各装置に対する設定データや命令データ等の操作入力を受け付ける機能を有する。
このため、表示画像には、例えば、特許文献1に示すような、操作入力を受け付けるボタン、装置の状態を示すランプ、および、計測値等を表示する表示枠等のUIオブジェクトのうち、必要なものが表示されている。
これらのUIオブジェクトは、UI画面上での配置位置、大きさ、色等のプロパティが設定されている。
そして、このようなUIの開発では、プログラマは、UI編集画面上にUIオブジェクトを配置し、当該UIオブジェクトに対してプロパティを設定する。
特開2015−153073号公報
UI編集画面によっては、複数のUIオブジェクトが重なる場合がある。例えば、複数のUIオブジェクトの重なりは、次の場合に生じる。
同じ工程を有する複数の製造ラインに対するUIを作成する場合、製造ライン毎にUIを作成するよりも、複数の製造ラインに対するUIを同時に作成する方が、作業が容易になる。また、同じ工程の製造ラインであれば、UIは類似するものである方が使い勝手がよい。したがって、プログラマは、UI編集画面において製造ライン毎のUIオブジェクトを重ねて編集することになる。
そして、この場合、UI編集画面において、重なっている複数のUIオブジェクトの内、1つのUIオブジェクトによって、他のUIオブジェクトが隠れてしまう。このため、プログラマは、他のUIオブジェクトを容易に視認できない。
一方で、製造ライン毎のUIオブジェクトの色が異なっていたり、それぞれに設定する制御が異なる等、製造ラインのUIオブジェクト毎に、プロパティが異なることがある。
ここで、上述のように、隠れているUIオブジェクトが存在すると、隠れているUIオブジェクトのプロパティを編集し忘れる等の編集ミスが生じ、所望とするUIを作成できないことがある。
したがって、本発明の目的は、重なっている複数のUIオブジェクトに対する編集ミスを抑制するUI開発支援技術を提供することにある。
このユーザインタフェース開発支援装置は、ユーザインタフェース編集部、表示部、および、操作入力部を備える。ユーザインタフェース編集部は、ユーザインタフェースの編集処理を実行し、生成した編集画面を表示器に表示させる。操作入力部は、ユーザインタフェースの編集に対する操作を受け付ける。ユーザインタフェース編集部は、編集画面において重なっている複数のユーザインタフェースオブジェクトがあると、操作入力部による一覧表示用の操作に応じて、重なっている複数のユーザインタフェースオブジェクトの一覧を編集画面内に表示させる。
この構成では、複数のユーザインタフェースオブジェクトが画面上に重なり、最表層のユーザインタフェースオブジェクトしか視認できない場合であっても、重なっている複数のユーザインタフェースオブジェクトが並べて表示される。
また、このユーザインタフェース開発支援装置では、操作入力部は、編集画面内で位置を指示するポインタの操作を受け付ける。ユーザインタフェース編集部は、ポインタの位置が最表層のユーザインタフェースオブジェクトに重なっていれば、一覧を表示させる。
この構成では、ユーザインタフェースオブジェクトにポインタを重ねるだけで、重なっている複数のユーザインタフェースオブジェクトが並べて表示される。
また、このユーザインタフェース開発支援装置では、ユーザインタフェース編集部は、一覧内の複数のユーザインタフェースオブジェクトの1つを選択する操作入力を操作入力部から受け付けると、選択されたユーザインタフェースオブジェクトを、編集対象となる最表層のユーザインタフェースオブジェクトとして表示させる。
この構成では、最表層ではないユーザインタフェースオブジェクトが最表層に表示され、編集可能になる。
また、このユーザインタフェース開発支援装置では、ユーザインタフェース編集部は、一覧内の複数のユーザインタフェースオブジェクトに対して位置または形状の統一化の操作入力を操作入力部から受け付けると、一覧内の複数のユーザインタフェースオブジェクトの位置または形状を統一する。
この構成では、重なっている複数のユーザインタフェースオブジェクトの位置または形状の統一化が容易な操作で行われる。
また、このユーザインタフェース開発支援装置では、ユーザインタフェース編集部は、一覧内の複数のユーザインタフェースオブジェクトに対して属性の統一化の操作入力を操作入力部から受け付けると、一覧内の複数のユーザインタフェースオブジェクトの属性を統一する。
この構成では、重なっている複数のユーザインタフェースオブジェクトの属性の統一化が容易な操作で行われる。
また、このユーザインタフェース開発支援装置では、ユーザインタフェース編集部は、一覧内の複数のユーザインタフェースオブジェクトの位置関係を変化させる操作入力を操作入力部から受け付けると、一覧内での複数のユーザインタフェースオブジェクトの位置関係を変化させるとともに、編集画面において重なっている複数のユーザインタフェースオブジェクトにおける最表層のユーザインタフェースオブジェクトをこの変化に応じて設定する。
この構成では、重なっている複数のユーザインタフェースオブジェクトの順番が容易に変更され、且つ、最表層のユーザインタフェースオブジェクトにもこの順番の変化が反映される。
この発明によれば、複数のUIオブジェクトが重なっていても、編集ミスを抑制できる。
本発明の実施形態に係るユーザインタフェース開発支援装置の機能ブロック図である。 本発明の実施形態に係るUI編集画面の一例を示す図である。 複数のUIオブジェクトの一覧の生成方法を示すフローチャートである。 複数のUIオブジェクトの一覧の第1表示態様を示す図である。 複数のUIオブジェクトの一覧の第2表示態様を示す図である。 複数のUIオブジェクトの一覧表示の解除方法を示すフローチャートである。 複数のUIオブジェクトの一覧表示の解除時のUI編集画面の状態を示す図である。 本編集対象のUIオブジェクトの切り替え方法を示すフローチャートである。 編集対象のUIオブジェクトの切り替えの作業時のUI編集画面の状態を示す図である。 重なっている複数のUIオブジェクトの属性の統一化の方法を示すフローチャートである。 重なっている複数のUIオブジェクトの属性の統一化の作業時のUI編集画面の状態を示す図である。 重なっている複数のUIオブジェクトの順番の変更の方法を示すフローチャートである。 重なっている複数のUIオブジェクトの順番の変更の作業時のUI編集画面の状態を示す図である。 重なっている複数のUIオブジェクトの順番の変更後のUI編集画面の状態を示す図である。
本発明の実施形態に係るユーザインタフェース開発支援技術について、図を参照して説明する。図1は、本発明の実施形態に係るユーザインタフェース開発支援装置の機能ブロック図である。
図1に示すように、UI(ユーザインタフェース)開発支援装置10は、UI(ユーザインタフェース)編集部11、操作入力部12、通信制御部13、および、表示部14を備える。UI開発支援装置10は、パーソナルコンピュータ等の情報処理装置によって実現される。
UI編集部11は、演算部111と記憶部112とを備える。演算部111は、CPU等によって実現され、記憶部112は、ハードディスク等の記憶媒体、半導体メモリ等によって実現されている。記憶部112は、UI(ユーザインタフェース)編集プログラム210を記憶している。UI編集プログラム210は、操作入力部12からの操作入力に応じてUI(ユーザインタフェース)オブジェクトの作成、画面内での配置、属性の設定等を行うことで、UI画面を生成、編集するプログラムである。演算部111は、UI編集プログラム210を読み出して実行することによって、UI画面の生成、編集を実行する。UI編集部11は、編集中のUI画面すなわちUI編集画面140を、表示部14に表示させる。
操作入力部12は、例えば、マウスやキーボードからなり、プログラマ等のUI開発支援装置10の操作者から操作入力を受け付ける。操作入力部12は、受け付けた操作内容を、演算部111に出力する。
通信制御部13は、PLC(プログラマブルロジックコントローラ)等の制御装置との通信制御を実行する。
表示部14は、例えば、液晶ディスプレイ等であり、UI編集部11で編集されたUI編集画面140を表示する。
図2は、UI編集画面の一例を示す図である。図2に示すように、UI編集画面140は、メインウィンドウ141と属性表示ウィンドウ142とポインタ41とを含む。メインウィンドウ141と属性表示ウィンドウ142とは並んで表示されている。
メインウィンドウ141は、画面編集領域1411とツールバー1412とを有する。画面編集領域1411は、メインウィンドウ141の中央の略全域を占めている。
画面編集領域1411には、UIオブジェクト51、52等の作成したUIオブジェクトが配置されている。UIオブジェクトとは、ボタン、ランプ等を表す図形、数値を表示するための枠等である。
ツールバー1412は、これらUIオブジェクトの作成に用いるツールが配置されており、例えば、プログラマは、ツールバー1412のツールを選択して、画面編集領域1411に所定の処理を実行することで、UIオブジェクトの作成を実現する。
属性表示ウィンドウ142には、画面編集領域1411において、その時点で選択されているUIオブジェクトの各種の属性が配置されている。属性とは、UIオブジェクトの名称、種類、UIオブジェクトに設定された変数、図形の形、色、大きさ、配置位置等を含む。
(一覧表示)
図3は、複数のUIオブジェクトの一覧の生成方法を示すフローチャートである。図4は、複数のUIオブジェクトの一覧の第1表示態様を示す図である。図5は、複数のUIオブジェクトの一覧の第2表示態様を示す図である。
UI編集部11は、図3に示す処理を実行することによって、UI編集画面140の画面編集領域1411内に複数のUIオブジェクトが重なっている場合に、図4または図5に示すような複数のUIオブジェクトの一覧を生成し、UI編集画面140内に配置する。
まず、UI編集部11は、UI編集画面140におけるポインタ41の位置(座標)を検出する(S101)。
UI編集部11は、画面編集領域1411におけるポインタ41の位置がUIオブジェクトに重なっているか否かを検出する(S102)。これは、例えば、画面編集領域1411におけるUIオブジェクトの領域は、二次元の座標で記憶されている。UI編集部11は、ポインタ41の位置座標が当該二次元の座標で定義されるUIオブジェクトの領域内にあれば、ポインタとUIオブジェクトとが重なっていると判定する。このポインタ41をUIオブジェクトに重ねる操作が、一覧表示用の操作に対応する。
UI編集部11は、ポインタ41がUIオブジェクトに重なっていなければ(S102:NO)、次のポインタ41への操作入力まで待機する。
図4に示すように、UI編集部11は、ポインタ41がUIオブジェクトに重なっていれば(S102:YES)、当該UIオブジェクトに対して、他のUIオブジェクトが重なっているか否かを検出する(S103)。例えば、UI編集部11は、新たなUIオブジェクトの編集、登録時に、既にあるUIオブジェクトとの重なりを検出する。そして、UI編集部11は、重なっている複数のUIオブジェクトを、そのZ方向の位置関係とともに記憶しておく。これにより、その後の編集では、UI編集部11は、UIオブジェクトの重なり、Z方向の位置関係、すなわち、最表層のUIオブジェクトから裏側に順次並ぶUIオブジェクトの位置関係を検出できる。
UI編集部11は、画面編集領域1411においてポインタ41が重なるUIオブジェクトに対して、複数のUIオブジェクトが重なっていれば(S103:YES)、重なっているUIオブジェクトの一覧500を生成し(S104)、図4に示すように、UI編集画面140内に配置する。
一覧500には、ポインタ41が重なるUIオブジェクト51と、このUIオブジェクト51に重なるUIオブジェクト52およびUIオブジェクト53とが含まれている。また、一覧500では、UIオブジェクト51、UIオブジェクト52、UIオブジェクト53は、UI編集プログラム210によって設定されている表層側から順に合わせて、配置される。
このような処理によって、プログラマは、UI編集画面140においてUIオブジェクトにポインタを重ねるだけで、このUIオブジェクトによってUI編集画面140では隠れている他のUIオブジェクトを、容易に視認できる。これにより、プログラマは、隠れているUIオブジェクトの編集のし忘れ等の編集ミスを抑制できる。また、プログラマは、表層からの複数のUIオブジェクトの並び順を把握できる。
この際、図4に示すように、UI編集部11は、UIオブジェクト52を、より表層側のUIオブジェクト51に部分的に重ね、UIオブジェクト52の一部を敢えて視認できないように配置する。同様に、UI編集部11は、UIオブジェクト53を、より表層側のUIオブジェクト52に部分的に重ね、UIオブジェクト53の一部を敢えて視認できないように配置する。これにより、プログラマは、UIオブジェクト51、52、53の表層からの順を、より分かり易く視認できる。
さらに、図4に示すように、UI編集部11は、表層側から裏側に向けて、UIオブジェクトを徐々に小さく表示するように設定する。これにより、プログラマは、UIオブジェクト51、52、53の表層からの順を、より直感的に理解し易い。
また、UI編集部11は、ポインタ41が重ねられたUIオブジェクト51に近接させて一覧500を配置する。これにより、プログラムは、UI編集画面140内のどのUIオブジェクトに他のUIオブジェクトが隠れているかを視認し易い。
なお、UI編集部11は、図5に示すような一覧の設定を行うこともできる。図5は、複数のUIオブジェクトの一覧の第2表示態様を示す図である。
図5に示す表示態様では、UI編集部11は、UIオブジェクト51、52、53をUI編集画面140の縦方向に順に並べる一覧500を生成して、UI編集画面140内に配置する。この設定であっても、図4と同様に、UIオブジェクトによってUI編集画面140では隠れている他のUIオブジェクトを、容易に視認できる。また、プログラマは、表層からの複数のUIオブジェクトの並び順を把握できる。さらに、図5の表示態様では、重なる複数のUIオブジェクトの大きさを変更することなく、表層側からの並びを分かり易く表示できる。
なお、上述の説明では、ポインタ41がUIオブジェクト51に重なったことを検出して、一覧500を配置する態様を示した。しかしながら、操作入力部12としてキーボード等を備えており、当該キーボードにおいて所定のキー入力等が行われた時に、一覧500を配置することも可能である。この場合、所定のキー入力等が一覧表示用の操作となる。
(一覧表示の解除)
UI編集部11は、一覧500の表示解除を次のように行う。
図6は、複数のUIオブジェクトの一覧表示の解除方法を示すフローチャートである。図7は、複数のUIオブジェクトの一覧表示の解除時のUI編集画面の状態を示す図である。
UI編集部11は、上述の状態においてUIオブジェクトの一覧500を表示させる(S201)。この間、UI編集部11は、ポインタ41の位置を検出している(S202)。UI編集部11は、ポインタ41がUIオブジェクト51に重なっているか否かを検出する(S203)。これは、上述の図3に示すフローチャートの方法によって実現できる。
UI編集部11は、ポインタ41とUIオブジェクト51とが重なっていれば(S203:NO)、一覧500の配置を継続させる(S201)。
UI編集部11は、ポインタ41とUIオブジェクト51とが重なっていなければ(S203:YES)、ポインタ41が解除用領域にあるか否かを検出する(S204)。
解除用領域とは、例えば、図7に示すように、UIオブジェクト51の領域に対して所定距離で広げた領域ZCよりも外側の領域である。
UI編集部11は、ポインタ41が解除用領域になければ(S204:NO)、一覧500の配置を継続させる(S201)。
UI編集部11は、ポインタ41が解除用領域にあれば(S204:YES)、UI編集画面140から一覧500を削除し、一覧表示を解除する(S205)。
このような処理によって、プログラマは、ポインタ41の移動だけで、一覧500の表示を解除でき、通常のUI編集画面140による編集復帰できる。
なお、上述の説明では、ポインタ41が解除用領域に入ることを条件として、一覧500の表示を解除したが、さらに、一覧500の表示の解除に遅延時間を設けてもよい。具体的には、UI編集部11は、ポインタ41が解除用領域内に入ることを検出し、遅延時間分に相当する時間に亘ってポインタ41が解除用領域から外れない場合に、一覧500の表示を解除する。
(編集対象のUIオブジェクトの変更)
UI編集部11は、編集対象のUIオブジェクトを次のように切り替える
図8は、本編集対象のUIオブジェクトの切り替え方法を示すフローチャートである。図9は、編集対象のUIオブジェクトの切り替えの作業時のUI編集画面の状態を示す図である。
UI編集部11は、上述の状態においてUIオブジェクトの一覧500を表示させる(S301)。この間、UI編集部11は、ポインタ41の位置を検出している(S302)。
UI編集部11は、ポインタ41が一覧500内のUIオブジェクトと重なっているか否かを検出する(S303)。UI編集部11は、ポインタ41が一覧500内のUIオブジェクトと重なっていなければ(S303:NO)、UIオブジェクトの一覧500の表示を継続する。
UI編集部11は、ポインタ41が一覧500内のUIオブジェクトと重なっていれば(S303:YES)、ポインタ41が重なるUIオブジェクトに応じて、UI編集画面140の更新を行う(S304)。
具体的には、UI編集部11は、ポインタ41が重なるUIオブジェクトを、UI編集画面140における最表層のUIオブジェクトに切り替える。これに伴い、属性表示ウィンドウ142の表示も、切り替え後の最表層のUIオブジェクトに対応する内容に切り替える。例えば、図9の例であれば、UI編集部11は、ポインタ41が一覧500内のUIオブジェクト52に重なっていれば、UI編集画面140の最表層に表示されているUIオブジェクト51をUIオブジェクト52に切り替える。これに伴い、UI編集部11は、属性表示ウィンドウ142の表示を、UIオブジェクト51に対応する内容から、UIオブジェクト52に対応する内容に切り替える。そして、UI編集部11は、UIオブジェクト51に換えて、UIオブジェクト52の編集を可能にする。
このような処理によって、プログラマは、重なっている複数のUIオブジェクトにおける編集対象のUIオブジェクトを容易に切り替えることができる。
(編集対象のUIオブジェクトの変更)
UI編集部11は、重なっている複数のUIオブジェクトの属性の統一化を次のように実行する。
図10は、重なっている複数のUIオブジェクトの属性の統一化の方法を示すフローチャートである。図11は、重なっている複数のUIオブジェクトの属性の統一化の作業時のUI編集画面の状態を示す図である。
UI編集部11は、上述の状態においてUIオブジェクトの一覧500を表示させる(S401)。この間、UI編集部11は、ポインタ41の位置を検出している(S402)。
UI編集部11は、ポインタ41が一覧500内のUIオブジェクトと重なっているか否かを検出する(S403)。UI編集部11は、ポインタ41が一覧500内のUIオブジェクトと重なっていなければ(S403:NO)、UIオブジェクトの一覧500の表示を継続する。
UI編集部11は、ポインタ41が一覧500内のUIオブジェクトと重なっていれば(S403:YES)、操作入力部12から統一化の操作を受け付けているか否かを検出する(S404)。UI編集部11は、統一化の操作を受け付けていなければ(S404:NO)、UIオブジェクトの一覧500の表示を継続する。
UI編集部11は、統一化の操作を受け付けると(S404:YES)、操作内容に応じて、一覧500に含まれる複数のUIオブジェクト、すなわち、UI編集画面140において重なっている複数のUIオブジェクトの属性の統一化を行う(S405)。そして、UI編集部11は、統一内容に応じて、UI編集画面140の構成を更新する(S406)。
例えば、図11の例であれば、一覧500に含まれるUIオブジェクト51、UIオブジェクト52、および、UIオブジェクト53は、サイズと中心位置が異なる。
UI編集部11は、ポインタ41が一覧500内のUIオブジェクト51に重なっており、統一化の操作(例えば、操作入力部12であるマウスの右クリック等)に応じて、統一化の項目が記載されたコンテキストメニューを配置する。UI編集部11は、さらに、コンテキストメニューにおいて、サイズと位置の統一の項目を選択する操作を受け付けると、UIオブジェクト51とともに一覧500に含まれる複数のUIオブジェクト52、53のサイズと位置を、UIオブジェクト51のサイズと位置に統一する。これにより、UIオブジェクト51、UIオブジェクト52、および、UIオブジェクト53のサイズと中心位置は、UIオブジェクト51のサイズと中心位置に統一される。
なお、図11に示す例において、属性の統一が選択されれば、UI編集部11は、UIオブジェクト51、UIオブジェクト52、および、UIオブジェクト53における変更可能な属性を統一する。
また、この統一化の処理に応じて、UI編集部11は、メインウィンドウ141のみでなく、属性表示ウィンドウ142の内容も変更する。
これにより、プログラマは、重なっている複数のUIオブジェクトの属性の統一化を容易に行うことができる。
(UIオブジェクトの順番の変更)
UI編集部11は、重なっている複数のUIオブジェクトの順番の変更を次のように実行する。
図12は、重なっている複数のUIオブジェクトの順番の変更の方法を示すフローチャートである。図13は、重なっている複数のUIオブジェクトの順番の変更の作業時のUI編集画面の状態を示す図である。図14は、重なっている複数のUIオブジェクトの順番の変更後のUI編集画面の状態を示す図である。
UI編集部11は、上述の状態においてUIオブジェクトの一覧500を表示させる(S501)。この間、UI編集部11は、ポインタ41の位置を検出している(S502)。
UI編集部11は、ポインタ41が一覧500内のUIオブジェクトと重なっているか否かを検出する(S503)。UI編集部11は、ポインタ41が一覧500内のUIオブジェクトと重なっていなければ(S503:NO)、UIオブジェクトの一覧500の表示を継続する。
UI編集部11は、ポインタ41が一覧500内のUIオブジェクトと重なっていれば(S503:YES)、操作入力部12からUIオブジェクトの順番変更の操作を受け付けているか否かを検出する(S504)。UI編集部11は、順番変更の操作を受け付けていなければ(S504:NO)、UIオブジェクトの一覧500の表示を継続する。
UI編集部11は、順番変更の操作を受け付けると(S504:YES)、操作内容に応じて、一覧500に含まれる複数のUIオブジェクト、すなわち、UI編集画面140において重なっている複数のUIオブジェクトの表示順番を変更する(S505)。そして、UI編集部11は、変更内容に応じて、UI編集画面140の構成を更新する(S506)。
例えば、図13の例であれば、一覧500では、UIオブジェクト51、UIオブジェクト52、および、UIオブジェクト53は、この順で並んでいる。
UI編集部11は、ポインタ41が一覧500内のUIオブジェクト52に重なっており、図13に示すように、UIオブジェクト52をUIオブジェクト51よりも表層側に移動させる順番変更の操作(例えば、操作入力部12であるマウスのドラッグ&ドロップ等)を受け付ける。この順番変更の操作の受付によって、UI編集部11は、図14に示すように、一覧500にて、表層側からUIオブジェクト52、UIオブジェクト51、UIオブジェクト53の順に並ぶように、UIオブジェクトの順番を変更する。さらに、UI編集部11は、画面編集領域1411において、図13に示すUIオブジェクト51を配置する構成から、図14に示すUIオブジェクト52を配置する構成に変更する。これと同時に、UI編集部11は、メインウィンドウ141のみでなく、属性表示ウィンドウ142の内容も、UIオブジェクト51の内容からUIオブジェクト52の内容に変更する。
これにより、プログラマは、重なっている複数のUIオブジェクトの順番の変更を容易に行うことができる。
なお、上述の説明では、重なっている複数のUIオブジェクトがグループ化されていない態様を示したが、重なっている複数のUIオブジェクトがグループ化されていても、上述の処理を適用することができる。すなわち、グループ化されている複数のUIオブジェクトが少なくとも部分的に互いに重なっている時に、上述の処理と同様に、一覧表示、一覧表示の解除、編集対象の変更等を行うことができる。
また、UIオブジェクトは、操作入力の受け付けを行うものに限らず、単に表示されるものも含まれる。
また、上述の複数の処理は、個別に実行されるものでなくてもよく、上述の複数の処理は、組み合わせて実行されてもよい。
10:UI開発支援装置
11:UI編集部
12:操作入力部
13:通信制御部
14:表示部
41:ポインタ
51、52、53:UIオブジェクト
111:演算部
112:記憶部
140:UI編集画面
141:メインウィンドウ
142:属性表示ウィンドウ
210:UI編集プログラム
500:一覧
1411:画面編集領域
1412:ツールバー

Claims (7)

  1. ユーザインタフェースの編集処理を実行し、生成した編集画面を表示器に表示させるユーザインタフェース編集部と、
    前記ユーザインタフェースの編集に対する操作を受け付ける操作入力部と、
    を備え、
    前記操作入力部は、前記編集画面内で位置を指示するポインタの操作を受け付け、
    前記ユーザインタフェース編集部は、
    前記編集画面において、前記ポインタの位置が複数のユーザインタフェースオブジェクトが重なっている最表層のユーザインタフェースオブジェクト上に移動された場合に、この最表層のユーザインタフェースオブジェクトに重なっている複数のユーザインタフェースオブジェクトの一覧を前記編集画面内に表示させ、
    前記一覧を前記編集画面内に表示させた後、前記ポインタの位置が前記最表層のユーザインタフェースオブジェクトよりも大きく、この最表層のユーザインタフェースオブジェクト全体を囲むように設定した領域の外側である解除用領域に移動された場合に、前記編集画面における前記一覧の表示を削除させる、
    ユーザインタフェース開発支援装置。
  2. 前記ユーザインタフェース編集部は、
    前記一覧内の複数のユーザインタフェースオブジェクトの1つを選択する操作入力を前記操作入力部から受け付けると、選択されたユーザインタフェースオブジェクトを、編集対象となる前記最表層のユーザインタフェースオブジェクトとして表示させる、
    請求項1に記載のユーザインタフェース開発支援装置。
  3. 前記ユーザインタフェース編集部は、
    前記一覧内の複数のユーザインタフェースオブジェクトに対して位置または形状の統一化の操作入力を前記操作入力部から受け付けると、前記一覧内の複数のユーザインタフェースオブジェクトの位置または形状を統一する、
    請求項1、または2に記載のユーザインタフェース開発支援装置。
  4. 前記ユーザインタフェース編集部は、
    前記一覧内の複数のユーザインタフェースオブジェクトに対して属性の統一化の操作入力を前記操作入力部から受け付けると、前記一覧内の複数のユーザインタフェースオブジェクトの属性を統一する、
    請求項1乃至請求項のいずれかに記載のユーザインタフェース開発支援装置。
  5. 前記ユーザインタフェース編集部は、
    前記一覧内の複数のユーザインタフェースオブジェクトの位置関係を変化させる操作入力を前記操作入力部から受け付けると、前記一覧内での複数のユーザインタフェースオブジェクトの位置関係を変化させるとともに、前記編集画面において重なっている複数のユーザインタフェースオブジェクトにおける前記最表層のユーザインタフェースオブジェクトをこの変化に応じて設定する、
    請求項1乃至請求項のいずれかに記載のユーザインタフェース開発支援装置。
  6. ユーザインタフェースの編集処理を実行し、編集画面を生成するユーザインタフェース編集処理と、
    前記編集画面を表示する表示処理と、
    操作入力部で前記ユーザインタフェースの編集に対する操作を受け付ける操作入力処理と、
    情報処理装置が実行するユーザインタフェース開発支援方法であって、
    前記操作入力処理は、前記操作入力部で前記編集画面内で位置を指示するポインタの操作を受け付ける処理を含み、
    前記ユーザインタフェース編集処理は、
    前記編集画面において、前記ポインタの位置が複数のユーザインタフェースオブジェクトが重なっている最表層のユーザインタフェースオブジェクト上に移動された場合に、この最表層のユーザインタフェースオブジェクトに重なっている複数のユーザインタフェースオブジェクトの一覧を前記編集画面内に表示させる第1処理と、
    前記一覧を前記編集画面内に表示させた後、前記ポインタの位置が前記最表層のユーザインタフェースオブジェクトよりも大きく、この最表層のユーザインタフェースオブジェクト全体を囲むように設定した領域の外側である解除用領域に移動された場合に、前記編集画面における前記一覧の表示を削除させる第2処理と、を含む、
    ユーザインタフェース開発支援方法。
  7. ユーザインタフェースの編集処理を実行し、編集画面を生成するユーザインタフェース編集処理と、
    前記編集画面を表示する表示処理と、
    操作入力部で前記ユーザインタフェースの編集に対する操作を受け付ける操作入力処理と、
    を、情報処理装置に実行させるユーザインタフェース開発支援プログラムであって、
    前記操作入力処理は、前記操作入力部で前記編集画面内で位置を指示するポインタの操作を受け付ける処理を含み、
    前記ユーザインタフェース編集処理は、
    前記編集画面において、前記ポインタの位置が複数のユーザインタフェースオブジェクトが重なっている最表層のユーザインタフェースオブジェクト上に移動された場合に、この最表層のユーザインタフェースオブジェクトに重なっている複数のユーザインタフェースオブジェクトの一覧を前記編集画面内に表示させる第1処理と、
    前記一覧を前記編集画面内に表示させた後、前記ポインタの位置が前記最表層のユーザインタフェースオブジェクトよりも大きく、この最表層のユーザインタフェースオブジェクト全体を囲むように設定した領域の外側である解除用領域に移動された場合に、前記編集画面における前記一覧の表示を削除させる第2処理と、を含む、
    ユーザインタフェース開発支援プログラム。
JP2017161708A 2017-08-25 2017-08-25 ユーザインタフェース開発支援装置、ユーザインタフェース開発支援方法、および、ユーザインタフェース開発支援プログラム Active JP6766779B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2017161708A JP6766779B2 (ja) 2017-08-25 2017-08-25 ユーザインタフェース開発支援装置、ユーザインタフェース開発支援方法、および、ユーザインタフェース開発支援プログラム
US16/639,559 US11709584B2 (en) 2017-08-25 2018-07-30 User interface development assistance device, user interface development assistance method, and non-transitory computer-readable recording medium
PCT/JP2018/028378 WO2019039197A1 (ja) 2017-08-25 2018-07-30 ユーザインタフェース開発支援装置、ユーザインタフェース開発支援方法、および、ユーザインタフェース開発支援プログラム
CN201880053518.8A CN111052070B (zh) 2017-08-25 2018-07-30 用户接口开发支持装置与方法以及计算机可读记录介质
EP18848052.9A EP3674887B1 (en) 2017-08-25 2018-07-30 User interface development assistance device, user interface development assistance method, and user interface development assistance program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017161708A JP6766779B2 (ja) 2017-08-25 2017-08-25 ユーザインタフェース開発支援装置、ユーザインタフェース開発支援方法、および、ユーザインタフェース開発支援プログラム

Publications (2)

Publication Number Publication Date
JP2019040380A JP2019040380A (ja) 2019-03-14
JP6766779B2 true JP6766779B2 (ja) 2020-10-14

Family

ID=65438765

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017161708A Active JP6766779B2 (ja) 2017-08-25 2017-08-25 ユーザインタフェース開発支援装置、ユーザインタフェース開発支援方法、および、ユーザインタフェース開発支援プログラム

Country Status (5)

Country Link
US (1) US11709584B2 (ja)
EP (1) EP3674887B1 (ja)
JP (1) JP6766779B2 (ja)
CN (1) CN111052070B (ja)
WO (1) WO2019039197A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022018896A (ja) * 2020-07-16 2022-01-27 富士フイルムビジネスイノベーション株式会社 情報処理装置およびプログラム

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5339392A (en) * 1989-07-27 1994-08-16 Risberg Jeffrey S Apparatus and method for creation of a user definable video displayed document showing changes in real time data
US5845299A (en) * 1996-07-29 1998-12-01 Rae Technology Llc Draw-based editor for web pages
JPH11259278A (ja) 1998-03-09 1999-09-24 Sony Corp データ生成方法および記録媒体
US6915489B2 (en) * 2001-03-28 2005-07-05 Hewlett-Packard Development Company, L.P. Image browsing using cursor positioning
US20130104062A1 (en) * 2011-09-27 2013-04-25 Z124 Unified desktop input segregation in an application manager
US20040004632A1 (en) * 2002-06-28 2004-01-08 International Business Machines Corporation Tooltip hyperlinks
US7644373B2 (en) * 2006-01-23 2010-01-05 Microsoft Corporation User interface for viewing clusters of images
US8745141B2 (en) * 2006-08-07 2014-06-03 Yahoo! Inc. Calendar event, notification and alert bar embedded within mail
US8078979B2 (en) 2007-11-27 2011-12-13 Microsoft Corporation Web page editor with element selection mechanism
JP5500855B2 (ja) * 2008-07-11 2014-05-21 キヤノン株式会社 情報処理装置及びその制御方法
JP2012014560A (ja) 2010-07-02 2012-01-19 Fujitsu Ltd 図形編集プログラム,図形編集方法及び図形編集装置
US8773468B1 (en) * 2010-08-27 2014-07-08 Disney Enterprises, Inc. System and method for intuitive manipulation of the layering order of graphics objects
US9658732B2 (en) * 2010-10-19 2017-05-23 Apple Inc. Changing a virtual workspace based on user interaction with an application window in a user interface
AU2012101185B4 (en) * 2011-08-19 2013-05-02 Apple Inc. Creating and viewing digital note cards
KR102006470B1 (ko) * 2011-12-28 2019-08-02 삼성전자 주식회사 사용자 디바이스에서 멀티태스킹 운용 방법 및 장치
JPWO2014061093A1 (ja) 2012-10-16 2016-09-05 三菱電機株式会社 画面作成装置および画面作成方法
US9158834B2 (en) * 2013-01-21 2015-10-13 Snap-On Incorporated Methods and systems for mapping repair orders within a database
US10345989B2 (en) * 2013-02-14 2019-07-09 Autodesk, Inc. Collaborative, multi-user system for viewing, rendering, and editing 3D assets
WO2015057804A1 (en) * 2013-10-16 2015-04-23 3M Innovative Properties Company Organizing digital notes on a user interface
JP6343953B2 (ja) 2014-02-13 2018-06-20 オムロン株式会社 プログラマブル表示器、携帯端末装置、データ処理方法、およびプログラム
CN106648338B (zh) 2015-10-30 2020-10-09 北京国双科技有限公司 编辑数据的方法和装置
CN107045447A (zh) 2016-02-05 2017-08-15 阿里巴巴集团控股有限公司 一种数据对象的标签显示方法和装置
CN106422329A (zh) * 2016-11-01 2017-02-22 网易(杭州)网络有限公司 游戏操控方法和装置

Also Published As

Publication number Publication date
EP3674887B1 (en) 2023-04-26
US20210132755A1 (en) 2021-05-06
EP3674887A4 (en) 2021-04-28
US11709584B2 (en) 2023-07-25
JP2019040380A (ja) 2019-03-14
WO2019039197A1 (ja) 2019-02-28
CN111052070A (zh) 2020-04-21
CN111052070B (zh) 2023-09-15
EP3674887A1 (en) 2020-07-01

Similar Documents

Publication Publication Date Title
US11243676B2 (en) Numerical control system for machine tool
JP5527521B2 (ja) 階層構造表示装置、階層構造表示方法および階層構造表示制御プログラム
JP6469162B2 (ja) ロボットのオフライン教示装置
US20210219150A1 (en) Signal distribution interface
CN110506243B (zh) 人机接口开发支持装置、方法以及计算机可读记录介质
JP6514630B2 (ja) スケジュール作成支援装置および方法
CN110737244A (zh) 数值控制装置和数据编辑方法
JP6766779B2 (ja) ユーザインタフェース開発支援装置、ユーザインタフェース開発支援方法、および、ユーザインタフェース開発支援プログラム
WO2021125192A1 (ja) オフラインプログラミング装置及びオフラインプログラミング方法
TWI570530B (zh) Numerical control system and numerical control data generation method
TWI569118B (zh) 畫面作成軟體
JP2008009831A (ja) ウインドウ制御方法及び情報処理装置
JP2012088791A (ja) 情報処理装置、情報処理方法、およびプログラム
JP2012083883A (ja) 画面データ作成装置
WO2015181986A1 (ja) プログラマブル表示器およびプログラマブル表示器の表示方法
JP4143529B2 (ja) 情報入力装置、情報入力方法、コンピュータプログラム及びコンピュータ読み取り可能な記憶媒体
WO2024028977A1 (ja) 教示装置
JP2020106959A (ja) レイアウト処理装置
JP7220531B2 (ja) 画面作成装置
JP2008293124A (ja) エディタ装置、エディタプログラムおよびそれを記録した記録媒体
JP2009104434A (ja) モニタ画面上へのラダー図表示方式
JP2009251852A (ja) ラダー図モニタ装置
JP2017102857A (ja) タッチパネル入力装置
JP2015207134A (ja) 工作機械、プログラム編集方法、及び制御プログラム
JP2020106960A (ja) レイアウト処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200602

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200730

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: 20200818

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200831

R150 Certificate of patent or registration of utility model

Ref document number: 6766779

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150