(57)【要約】【課題】入力が必要な入力フィールドを、ソフトウェアキーボードに邪魔されることなく、同一画面に表示する。【解決手段】複数の入力フィールドを有する画面を表示して前記複数の入力フィールドへの入力を受け付ける表示入力装置において、前記複数の入力フィールドのうち、前記画面へのソフトウェアキーボードの表示を必要とする入力フィールドが選択されたことを条件として、選択された前記入力フィールド及び当該入力フィールドとともに入力が必要な他の入力フィールドについて、前記ソフトウェアキーボードによって隠されることなく表示する制御手段を備える。【選択図】図９
2019164573.tif 000002
【特許請求の範囲】
【請求項１】
複数の入力フィールドを有する画面を表示して前記複数の入力フィールドへの入力を受け付ける表示入力装置において、
前記複数の入力フィールドのうち、前記画面へのソフトウェアキーボードの表示を必要とする入力フィールドが選択されたことを条件として、選択された前記入力フィールド及び当該入力フィールドとともに入力が必要な他の入力フィールドについて、前記ソフトウェアキーボードによって隠されることなく表示する制御手段を備える、
ことを特徴とする表示入力装置。
【請求項２】
共に入力が必要な複数の入力フィールドをグループ化した情報を有するデータ処理手段を更に備え、
前記制御手段は、選択された前記入力フィールドとともに入力が必要な他の入力フィールドを、前記情報に基づいて決定する、
ことを特徴とする請求項１に記載の表示入力装置。
【請求項３】
前記制御手段は、選択された前記入力フィールドとともに入力が必要な他の入力フィールドを、前記画面の表示のための言語の属性に基づいて決定する、
ことを特徴とする請求項１に記載の表示入力装置。
【請求項４】
前記制御手段は、前記入力フィールド間のマージンを制御する、
ことを特徴とする請求項１に記載の表示入力装置。
【請求項５】
前記制御手段は、前記入力フィールドの大きさを制御する、
ことを特徴とする請求項１に記載の表示入力装置。
【請求項６】
前記制御手段は、前記入力フィールドの位置を制御する、
ことを特徴とする請求項１に記載の表示入力装置。
【請求項７】
前記制御手段は、選択された前記入力フィールドに対して前記ソフトウェアキーボードによって値が入力された場合、次の入力フィールドの選択か、前記ソフトウェアキーボードを閉じるかの選択を受け付ける、
ことを特徴とする請求項１に記載の表示入力装置。
【請求項８】
請求項１ないし７のいずれか一項に記載の表示入力装置を備えることを特徴とする画像形成装置。
【請求項９】
複数の入力フィールドを有する画面を表示して前記複数の入力フィールドへの入力を受け付ける表示入力装置における画面表示方法であって、
前記複数の入力フィールドのうち、前記画面へのソフトウェアキーボードの表示を必要とする入力フィールドが選択されたことを条件として、選択された前記入力フィールド及び当該入力フィールドとともに入力が必要な他の入力フィールドについて、前記ソフトウェアキーボードによって隠されることなく表示する制御工程を含む、
ことを特徴とする画面表示方法。
【請求項１０】
複数の入力フィールドを有する画面を表示して前記複数の入力フィールドへの入力を受け付ける表示入力装置を制御するコンピュータを、
前記複数の入力フィールドのうち、前記画面へのソフトウェアキーボードの表示を必要とする入力フィールドが選択されたことを条件として、選択された前記入力フィールド及び当該入力フィールドとともに入力が必要な他の入力フィールドについて、前記ソフトウェアキーボードによって隠されることなく表示する制御手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表示入力装置、画像形成装置、画面表示方法およびプログラムに関する。
【背景技術】
【０００２】
従来、表示部（いわゆるディスプレイ）の物理的なサイズが限られている場合、表示部に表示される画面上の入力フィールドへの入力を行う際、ソフトウェアキーボードがユーザに提供される。
【０００３】
ソフトウェアキーボードで複数の入力フィールドに入力する場合、一の入力フィールドの入力を終了して他の入力フィールドを選択するためには、一旦、ソフトウェアキーボードを閉じ、そのあとで他の入力フィールドを選択し、再びソフトウェアキーボードを表示するという手間が生じていた。
【０００４】
この手間を解消するため、例えば特許文献１には、入力対象である入力フィールドを次の入力フィールドに変更するための指示を受け付けるためのキーをソフトウェアキーボードとともに表示させる技術が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に開示の技術によれば、ソフトウェアキーボード上のキー操作に従って遷移する入力フィールドの順番が決められてしまう。すなわち、特許文献１に開示の技術によれば、未入力でよい入力フィールドであっても表示してしまう、という問題がある。
【０００６】
本発明は、上記に鑑みてなされたものであって、入力が必要な入力フィールドを、ソフトウェアキーボードに邪魔されることなく、同一画面に表示することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明は、複数の入力フィールドを有する画面を表示して前記複数の入力フィールドへの入力を受け付ける表示入力装置において、前記複数の入力フィールドのうち、前記画面へのソフトウェアキーボードの表示を必要とする入力フィールドが選択されたことを条件として、選択された前記入力フィールド及び当該入力フィールドとともに入力が必要な他の入力フィールドについて、前記ソフトウェアキーボードによって隠されることなく表示する制御手段を備える、ことを特徴とする。
【発明の効果】
【０００８】
本発明によれば、入力が必要な入力フィールドを、ソフトウェアキーボードに邪魔されることなく、同一画面に表示することができる、という効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】図１は、第１の実施の形態にかかるＭＦＰのハードウェア構成図である。
【図２】図２は、ＭＦＰのソフトウェア構成の一例を示す図である。
【図３】図３は、ＭＦＰに設けられているソフトウェアの一例を示す図である。
【図４】図４は、ホームアプリの機能ブロック図である。
【図５】図５は、テーブルの一例を示す図である。
【図６】図６は、登録画面を表示する際の各部の動作の流れを示すシーケンス図である。
【図７】図７は、登録画面の一例を示す図である。
【図８】図８は、表示方法の決定手法の一例を示す図である。
【図９】図９は、登録画面の一例を示す図である。
【図１０】図１０は、登録画面の一例を示す図である。
【図１１】図１１は、第２の実施の形態にかかる登録画面の一例を示す図である。
【図１２】図１２は、図１１に示すような入力フィールドのＨＴＭＬ記載例を示す図である。
【図１３】図１３は、登録画面の一例を示す図である。
【発明を実施するための形態】
【００１０】
以下に添付図面を参照して、表示入力装置、画像形成装置、画面表示方法およびプログラムの実施の形態を詳細に説明する。
【００１１】
（第１の実施の形態）
図１は、第１の実施の形態にかかる複合機（ＭＦＰ：Multifunction  Peripheral）１のハードウェア構成図である。ＭＦＰ１は、画像形成装置の一例である。ＭＦＰ１は、図１に示すように例えばコピー機能、スキャナ機能、ファクシミリ機能、プリンタ機能等の各種の画像処理機能を備えた画像処理部である本体１０と、ユーザの操作に応じた入力を受け付ける表示入力装置である操作部２０とを備える。
【００１２】
本体１０と操作部２０は、専用の通信路３０を介して相互に通信可能に接続されている。通信路３０は、例えばＵＳＢ（Universal  Serial  Bus）規格のものを用いることができる。また、通信路３０は、有線又は無線を問わず任意の規格のものでもよい。また、本体１０は、コピー機能、スキャナ機能、ファクシミリ機能、プリンタ機能等の画像形成機能のうち、一つの機能を有していてもよいし、複数の機能を有していてもよい。
【００１３】
操作部２０としては、単独で完結した情報処理を実行可能な電子機器を用いることができる。一例として、操作部２０としては、スマートフォン又はタブレット型端末等の情報処理端末を用いることができる。この場合、操作部２０として用いられる情報処理端末は、ＭＦＰ１の操作部として機能する。
【００１４】
より詳しくは、従来、ＭＦＰ１には、操作部として専用の操作パネルが固定され設置されていた。これに対して、第１の実施の形態のＭＦＰ１の操作部２０として用いられる情報処理端末は、ＭＦＰ１の本体１０に装着及び取り外し可能となっている。すなわち、操作部２０として用いられる情報処理端末は、例えばＭＦＰ１の操作パネルが配置される位置等の所定の位置から取り外し可能（分離可能）ながらも、ＭＦＰ１と一体的に設置することも可能となっている。このため、操作部２０として用いられる情報処理端末及びＭＦＰ１は、一台の装置として把握されるものである。操作部２０として用いられる情報処理端末は、ＭＦＰ１から取り外されると、ＭＦＰ１との間で、例えばＢｌｕｅｔｏｏｔｈ（登録商標）又は赤外線通信等の無線通信を行い、ＭＦＰ１の操作部として機能する。
【００１５】
本体１０は、操作部２０で受け付けた入力に応じた動作を行う。また、本体１０は、クライアントＰＣ（パーソナルコンピュータ）等の外部装置とも通信可能であり、外部装置から受信した指示に応じた動作も行う。
【００１６】
（本体のハードウェア構成）
次に、本体１０のハードウェア構成について説明する。図１に示すように、本体１０は、ＣＰＵ（Central  Processing  Unit）１１と、ＲＯＭ（Read  Only  Memory）１２と、ＲＡＭ（Random  Access  Memory）１３と、ＨＤＤ（Hard  Disk  Drive）１４とを備える。また、本体１０は、通信Ｉ／Ｆ（Interface）１５と、接続Ｉ／Ｆ１６と、エンジン１７と、ファクシミリモデム（ＦＡＸモデム）１９とを備える。各部１１〜１７及びＦＡＸモデム１９は、システムバス１８を介して相互に接続されている。
【００１７】
ＣＰＵ１１は、本体１０の動作を統括的に制御する。ＣＰＵ１１は、ＲＡＭ１３をワークエリア（作業領域）としてＲＯＭ１２又はＨＤＤ１４等に格納されたプログラムを実行することで、本体１０全体の動作を制御し、上述したコピー機能、スキャナ機能、ファクシミリ機能、プリンタ機能などの各種の画像形成機能を実現する。なお、この本体１０のＨＤＤ１４は、フラッシュメモリを用いても、同様に実現可能である。
【００１８】
通信Ｉ／Ｆ１５は、ネットワーク４０上のクライアントＰＣ（Personal  Computer）、Ｗｅｂサーバ装置又は認証サーバ装置等の外部装置と通信するためのインタフェースである。接続Ｉ／Ｆ１６は、通信路３０を介して操作部２０と通信するためのインタフェースである。なお、図１及び以下に説明する図２において、通信路３０は、有線的に図示しているが、上述のように操作部２０は、ＭＦＰ１の本体１０に対して装着及び取り外しが可能となっている。このため、操作部２０をＭＦＰ１に装着しているときには、通信路３０は有線通信路として機能し、操作部２０をＭＦＰ１から取り外したときには、通信路３０は無線通信路として機能するものと理解されたい。
【００１９】
エンジン１７は、コピー機能、スキャナ機能、ファクシミリ機能及びプリンタ機能等を実現させるための、汎用的な情報処理及び通信以外の処理を行うハードウェアである。エンジン１７は、例えば原稿の画像をスキャンして読み取るスキャナ、用紙等のシート材への印刷を行うプロッタ、ファクシミリ通信を行うファクシミリ通信部等を備えている。さらに、印刷済みシート材を仕分けるフィニッシャ及び原稿を自動給送するＡＤＦ（Auto  Document  Feeder：自動原稿給送装置）のような特定のオプションを設けてもよい。
【００２０】
（操作部のハードウェア構成）
次に、操作部２０のハードウェア構成について説明する。図１に示すように、操作部２０は、ＣＰＵ２１と、ＲＯＭ２２と、ＲＡＭ２３と、フラッシュメモリ２４と、通信Ｉ／Ｆ２５と、接続Ｉ／Ｆ２６と、操作パネル２７と、ＩＣカードＩ／Ｆ２９とを備え、これらがシステムバス２８を介して相互に接続されている。なお、この操作部２０のフラッシュメモリ２４は、ＨＤＤを用いても同様に実現可能である。
【００２１】
ＣＰＵ２１は、操作部２０の動作を統括的に制御する。ＣＰＵ２１は、ＲＡＭ２３をワークエリア（作業領域）としてＲＯＭ２２等に格納されたプログラムを実行することで操作部２０全体の動作を制御する。また、ＣＰＵ２１は、ＲＯＭ２２等に格納されたユーザ認証プログラムを実行することでユーザ認証処理を行う。通信Ｉ／Ｆ２５は、例えばネットワーク４０上のサーバ装置６０と通信するためのインタフェースである。接続Ｉ／Ｆ２６は、通信路３０を介して本体１０と通信するためのインタフェースである。
【００２２】
ＩＣカードＩ／Ｆ２９は、例えばＵＳＢケーブル等を介してカードリーダ６に接続されている。カードリーダ６は、ＭＦＰ１に対するログイン操作のときに、ユーザにより近接操作（非接触操作）されたＩＣカード５との間で非接触無線通信を行い、ＩＣカード５に記憶されているカードＩＤ、ユーザ情報等の認証情報の読み取りを行う。なお、非接触操作のほか、接触操作でＩＣカード５から認証情報を読み取ってもよい。
【００２３】
また、一例として、カードリーダ６と操作部２０は、物理的に異なる装置同士が、ＵＳＢケーブル等を介して接続されていることとしたが、操作部２０にカードリーダ６が内蔵されていてもよい。すなわち、操作部２０とカードリーダ６が一体的に形成されていてもよい（一つの装置として形成されていてもよい）。
【００２４】
また、ＩＣカード又はＩＤカード等の呼称の違いがあっても、記憶媒体であれば、どのような記憶媒体でも本発明を適用可能であり、ＩＣカード又はＩＤカード等のみに本発明の適用範囲が限定されることはない。また、カードリーダ装置も同様であり、このような記憶媒体からユーザ情報を読み取れる装置であればいずれも用いることができる。
【００２５】
操作パネル２７は、タッチセンサを備えた液晶表示装置（ＬＣＤ：Liquid  Crystal  Display）で構成される。操作パネル２７は、ユーザの操作に応じた各種の入力を受け付けると共に、例えば受け付けた入力に応じた情報、ＭＦＰ１の動作状況を示す情報、設定状態を示す情報等の各種の情報を表示する。なお、操作パネル２７は、タッチセンサを備えた有機ＥＬ（Organic  Light-Emitting  Diode：OLED）表示装置で構成してもよい。さらに、これに加えて又はこれに代えて、ハードウェアキー等の操作部又は発光部等の表示部を設けてもよい。
【００２６】
（ＭＦＰのソフトウェア構成）
図２は、ＭＦＰ１のソフトウェア構成の一例を示す図である。この図２に示すように、本体１０は、アプリ層１０１と、サービス層１０２と、ＯＳ（Operating  System）層１０３とを有する。アプリ層１０１、サービス層１０２及びＯＳ層１０３の実体は、ＲＯＭ１２又はＨＤＤ１４等に格納されている各種ソフトウェアである。ＣＰＵ１１が、これらのソフトウェアを実行することにより、各種の機能が提供される。
【００２７】
アプリ層１０１のソフトウェアは、ハードウェア資源を動作させて所定の機能を提供するための制御アプリケーション（以下の説明では、単に「アプリ」と称する場合がある）である。例えばアプリとしては、コピー機能を提供するためのコピーアプリ、スキャナ機能を提供するためのスキャナアプリ、ファクシミリ機能を提供するためのＦＡＸアプリ、プリンタ機能を提供するためのプリンタアプリ等が挙げられる。
【００２８】
サービス層１０２のソフトウェアは、アプリ層１０１とＯＳ層１０３との間に介在し、アプリに対し、本体１０が備えるハードウェア資源を利用するためのインタフェースを提供するソフトウェアである。具体的には、ハードウェア資源に対する動作要求の受け付け、動作要求の調停を行う機能を提供するためのソフトウェアである。サービス層１０２が受け付ける動作要求は、例えばスキャナによる読み取り又はプロッタによる印刷等の要求である。
【００２９】
なお、サービス層１０２によるインタフェースの機能は、本体１０のアプリ層１０１だけではなく、操作部２０のアプリ層２０１に対しても提供される。すなわち、操作部２０のアプリ層２０１（アプリ）も、サービス層１０２のインタフェース機能を介して、本体１０のハードウェア資源（例えばエンジン１７）を利用した機能を実現することができる。
【００３０】
ＯＳ層１０３のソフトウェアは、本体１０が備えるハードウェアを制御する基本機能を提供するための基本ソフトウェア（オペレーティングシステム）である。サービス層１０２のソフトウェアは、各種アプリからのハードウェア資源の利用要求を、ＯＳ層１０３が解釈可能なコマンドに変換してＯＳ層１０３に渡す。そして、ＯＳ層１０３のソフトウェアによりコマンドが実行されることで、ハードウェア資源は、アプリの要求に従った動作を行う。
【００３１】
同様に、操作部２０は、アプリ層２０１と、ＯＳ層２０３とを有する。操作部２０が備えるアプリ層２０１及びＯＳ層２０３も、階層構造については本体１０側と同様である。ただし、アプリ層２０１のアプリにより提供される機能が受け付け可能な動作要求の種類は、本体１０側とは異なる。アプリ層２０１のアプリは、操作部２０が備えるハードウェア資源を動作させて所定の機能を提供するためのソフトウェアである。例えば、本体１０が備える機能（コピー機能、スキャナ機能、ファクシミリ機能、プリンタ機能）に関する操作及び表示を行うためのＵＩ（ユーザインタフェース）の機能を提供するためのソフトウェアである。
【００３２】
また、この第１の実施の形態のＭＦＰ１の場合、機能の独立性を保つために、本体１０側のＯＳ層１０３のソフトウェアと操作部２０側のＯＳ層２０３のソフトウェアが互いに異なる。一例ではあるが、本体１０側のＯＳ層１０３のソフトウェアとしてＬｉｎｕｘ（登録商標）がインストールされ、操作部２０側のＯＳ層２０３のソフトウェアとしてＡｎｄｒｏｉｄ（登録商標）がインストールされている。これにより、本体１０と操作部２０は、別々のオペレーティングシステムで互いに独立して動作するようになっている。
【００３３】
本体１０及び操作部２０を、別々のオペレーティングシステムで動作させることで、本体１０と操作部２０との間の通信は、共通の装置内のプロセス間通信ではなく、異なる装置間の通信として行われる。操作部２０が受け付けた入力（ユーザからの指示内容）を本体１０へ伝達する動作（コマンド通信）及び本体１０が操作部２０へイベントを通知する動作等がこれに該当する。ここでは、操作部２０が本体１０へコマンド通信を行うことにより、本体１０の機能を使用することができる。また、本体１０から操作部２０に通知するイベントには、本体１０における動作の実行状況、本体１０側で設定された内容等が挙げられる。
【００３４】
また、第１の実施の形態の例では、操作部２０に対する電力供給は、本体１０から通信路３０を経由して行われているので、操作部２０の電源制御を、本体１０の電源制御とは別に（独立して）行うことができる。
【００３５】
なお、この例では、本体１０と操作部２０は、通信路３０を介して電気的かつ物理的に接続されているが、上述のように本体１０から操作部２０を取り外すこともできる。この場合、本体１０及び操作部２０に、例えば赤外線通信部、ＲＦ通信部、Ｂｌｕｅｔｏｏｔｈ（登録商標）通信部等の近距離無線通信部を設ける。ＲＦは、「Radio  Frequency」の略記である。または、本体１０及び操作部２０に、Ｗｉ−Ｆｉ（登録商標）等の無線ＬＡＮ通信機能を設け、図２に示すように無線ＬＡＮアクセスポイント（無線ＬＡＮＡＰ）４１及びネットワーク４０を介して相互に通信可能としてもよい。ＬＡＮは、「Local  Area  Network」の略記である。本体１０から操作部２０を取り外し可能である場合、操作部２０は、通信路３０を介して本体１０から供給された電力を二次電池に蓄電しておき、本体１０から取り外されたときに、二次電池に蓄電された電力で動作して本体１０と通信を行う。
【００３６】
（ＭＦＰに設けられているソフトウェア）
図３は、ＭＦＰ１に設けられているソフトウェアの一例を示す図である。上述のように、本体１０は、アプリ層１０１、サービス層１０２及びＯＳ層１０３に分かれている。このうち、アプリ層１０１には、図１に示すエンジン１７を制御して、原稿の読み取り制御又は印刷制御等を行うアプリが記憶されている。具体的には、アプリ層１０１には、コピーアプリ１１１、スキャナアプリ１１２、プリンタアプリ１１３及びＦＡＸアプリ１１４が記憶されている。コピーアプリ１１１〜ＦＡＸアプリ１１４は、標準搭載のジョブ実行機能アプリであり、制御アプリケーションの一例である。
【００３７】
また、サービス層１０２には、省エネルギー管理プログラム（省エネ管理プログラム）１２１、メモリ管理プログラム１２２及びコントローラ制御プログラム１２３等の、各アプリが共通で行う処理に対応する各種プログラムが記憶されている。サービス層１０２は、省エネルギー管理及びメモリ管理等、各アプリが共通で行う処理を行っている。
【００３８】
これに対して、操作部２０は、アプリ層２０１及びＯＳ層２０３に分かれている。本体アプリと操作部アプリの違いは、本体アプリではコントローラ制御プログラム１２３によるエンジン制御等を行うことで、例えば読み取り及び印刷等の画像形成装置の機能を制御するのに対し、操作部アプリではＵＩ制御を行っている。つまり、操作部アプリで画面表示を行うことでユーザの操作を受け付け、そのユーザ操作に基づいたエンジン制御を本体アプリ（コントローラ制御プログラム１２３）が行っている。
【００３９】
操作部アプリには、スキャナアプリ１３３等に対して開発ベンダーが開発するベンダーアプリ１３７が存在する。
【００４０】
また、操作部アプリには、ベンダーアプリ１３７の開発を簡単にするために、操作部２０のコピーアプリ１３１〜ＦＡＸアプリ１３５と同等の機能をベンダー等に提供する機能提供アプリ１３６が設けられている。
【００４１】
すなわち、操作部２０のアプリ層２０１には、ユーザインタフェースを介してユーザ操作を受け付けるアプリが記憶されている。具体的には、アプリ層２０１には、ホームアプリ１３０、コピーアプリ１３１、スキャナアプリ１３３、プリンタアプリ１３４、ＦＡＸアプリ１３５、機能提供アプリ１３６、ベンダーアプリ１３７、エラー管理アプリ１４０が記憶されている。
【００４２】
ホームアプリ１３０は、所望の操作を指定するためのアイコン等が並べられたメイン画面（初期画面）を表示する。そして、ユーザによりアイコン操作を介して指定されたアプリを起動する。コピーアプリ１３１は、操作ボタン及び設定ボタンを介して、ユーザのコピー操作を受け付けるアプリである。スキャナアプリ１３３は、操作ボタン及び設定ボタン等を介して、ユーザのスキャナ操作を受け付けるアプリである。プリンタアプリ１３４は、操作ボタン及び設定ボタン等を介して、ユーザのプリンタ操作を受け付けるアプリである。ＦＡＸアプリ１３５は、操作ボタン及び設定ボタン等を介して、ユーザのファクシミリ送受信操作を受け付けるアプリである。
【００４３】
機能提供アプリ１３６は、画像処理プログラムの一例である。また、機能提供アプリ１３６は、一例として操作部２０のＲＯＭ２２、ＲＡＭ２３又はフラッシュメモリ２４等の記憶部に記憶される。
【００４４】
機能提供アプリ１３６は、上述のようにベンダーアプリ１３７の開発を容易化するために、操作部２０のコピーアプリ１３１〜ＦＡＸアプリ１３５と同等の機能を開発ベンダー等に提供する。
【００４５】
ベンダーアプリ１３７は、要求アプリケーションの一例である。ベンダーアプリ１３７は、例えばプリントの設定や実行を行う際に、例えばプリンタアプリ１３４にかかる機能提供アプリ１３６を呼び出す。
【００４６】
すなわち、機能提供アプリ１３６が例えばスキャナアプリ１３３に対応するアプリの場合、機能提供アプリ１３６は、通常の操作メニュー及び設定メニュー等のユーザインタフェースを表示する機能を開発ベンダーに提供する。また、機能提供アプリ１３６が例えばプリンタアプリ１３４に対応するアプリの場合、機能提供アプリ１３６は、通常の操作メニュー及び設定メニュー等のユーザインタフェースを表示する機能を開発ベンダーに提供する。
【００４７】
このようにＭＦＰ１の操作部２０には、コピーアプリ１３１〜ＦＡＸアプリ１３５と同等の機能をベンダー等に提供するための機能提供アプリ１３６が設けられている。ベンダーアプリ１３７の開発ベンダーに対しては、機能提供アプリ１３６の機能を実現するＡＰＩ（Application  Programming  Interface）が公開されている。
【００４８】
ホームアプリ１３０は、例えば、初期状態において各種のユーザ情報の登録を受け付ける登録画面を表示する。
【００４９】
（ホームアプリ１３０の機能）
図４は、ホームアプリ１３０の機能ブロック図である。操作部２０のＣＰＵ２１は、例えばＲＯＭ２２、ＲＡＭ２３又はフラッシュメモリ２４等の記憶部に記憶されているホームアプリ１３０を実行することで、図４に示す、制御手段１５０、通信手段１５１、データ処理手段１５２、データ保管手段１５３を実現する。
【００５０】
制御手段１５０は、操作パネル２７に対する表示および操作パネル２７からの入力を制御する。また、制御手段１５０は、ユーザからの入力をデータ処理手段１５２に伝える。
【００５１】
通信手段１５１は、本体１０のコントローラ制御プログラム１２３と通信し、データのやり取りを行う。
【００５２】
データ処理手段１５２は、制御手段１５０を介して入力されたユーザ操作を解釈し、ユーザ操作に応じたデータを生成処理する。
【００５３】
データ処理手段１５２は、テーブルＴ（図５参照）を有している。図５は、テーブルＴの一例を示す図である。図５に示す入力フィールドは、後述する登録画面Ａ１（図７参照）における画面定義情報（ユーザ名、アドレス、パスワード、メモ）に対応した入力フィールドＦ１〜Ｆ４である。図５に示すテーブルＴは、入力フィールドＦ１〜Ｆ４について、関連のある入力フィールド（共に入力が必要な入力フィールド）をグループとして管理する。図５に示す例では、ユーザ名、アドレス、パスワードが同一グループとして管理されている。
【００５４】
データ保管手段１５３は、データ処理手段１５２で処理されたデータをＲＡＭ２３又はフラッシュメモリ２４等の記憶部に保管する。
【００５５】
なお、この例では、制御手段１５０、通信手段１５１、データ処理手段１５２、データ保管手段１５３をソフトウェアで実現することとしたが、制御手段１５０、通信手段１５１、データ処理手段１５２、データ保管手段１５３のうち、一部又は全部を、ＩＣ（Integrated  Circuit）等のハードウェアで実現してもよい。
【００５６】
また、ホームアプリ１３０は、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）等のコンピュータ装置で読み取り可能な記録媒体に記録して提供してもよい。また、ＣＤ−Ｒ、ＤＶＤ（Digital  Versatile  Disk）、ブルーレイディスク（登録商標）、半導体メモリ等のコンピュータ装置で読み取り可能な記録媒体に記録して提供してもよい。また、ホームアプリ１３０は、インターネット等のネットワーク経由でインストールする形で提供してもよい。また、ホームアプリ１３０は、機器内のＲＯＭ等に予め組み込んで提供してもよい。
【００５７】
（ホームアプリのユーザ登録画面の表示動作）
次に、ホームアプリ１３０の登録画面の表示動作を説明する。図６は、登録画面を表示する際の各部の動作の流れを示すシーケンス図である。
【００５８】
図６に示すように、データ処理手段１５２は、登録が必要となったタイミングで、制御手段１５０に対して登録画面の画面表示要求を通知する（ステップＳ１）。ここで、制御手段１５０は、登録画面の画面表示要求として画面定義情報（ユーザ名、アドレス、パスワード、メモ）を取得する。
【００５９】
次いで、制御手段１５０は、取得した画面定義情報（ユーザ名、アドレス、パスワード、メモ）に基づいて登録画面を表示する（ステップＳ２）。
【００６０】
ここで、図７は登録画面Ａ１の一例を示す図である。図７に示すように、登録画面Ａ１は、画面定義情報（ユーザ名、アドレス、パスワード、メモ）に対応した入力フィールドＦ１〜Ｆ４が設けられる。
【００６１】
ここで、ユーザがユーザ名の入力フィールドＦ１を選択したものとする（ステップＳ３）。ここで、入力フィールドＦ１は、後述するソフトウェアキーボードＫ（図９参照）の表示を必要とする。
【００６２】
ユーザがユーザ名の入力フィールドＦ１を選択した場合、制御手段１５０は、データ処理手段１５２に対してユーザ名の入力フィールドＦ１が選択された旨を通知する（ステップＳ４）。
【００６３】
データ処理手段１５２は、ユーザ名の入力フィールドＦ１の選択の通知を受けると、テーブルＴを参照する（ステップＳ５）。
【００６４】
そして、データ処理手段１５２は、テーブルＴを参照して得られた同一グループの画面定義情報（ユーザ名、アドレス、パスワード）の入力フィールドについて制御手段１５０に対する表示要求を行う（ステップＳ６）。
【００６５】
次いで、制御手段１５０は、画面定義情報（ユーザ名、アドレス、パスワード）の入力フィールドの表示方法を決定する（ステップＳ７）。例えば、制御手段１５０は、画面の表示領域と表示内容のサイズから表示領域に合わせて表示内容（ユーザー名、アドレス、パスワード）のサイズを縮小する、表示内容の間の余白を表示領域に合わせて縮小するなど表示方法を決める。
【００６６】
ここで、表示方法の決定手法について例を挙げて説明する。図８は、表示方法の決定手法の一例を示す図である。図８に示す例は、入力フィールド間の隙間ｄを調整するものである。制御手段１５０は、下記に示す式（１）に従って入力フィールド間の隙間ｄを算出する。
ｄ＝（ａ−ｂ−（ｃ×ｎ））／（ｎ＋１）・・・（１）
ｄ：入力フィールド間の隙間
ａ：表示領域の奥行
ｂ：ソフトウェアキーボードの奥行
ｃ：入力フィールドの奥行
ｎ：入力フィールドの数
【００６７】
上記式（１）に従って入力フィールド間の隙間ｄを算出することにより、画面の表示領域と表示内容のサイズから表示領域に合わせて表示内容（ユーザー名、アドレス、パスワード）の入力フィールド間の余白（入力フィールド間の隙間）を表示領域に合わせて縮小することができる。
【００６８】
また、画面の表示領域と表示内容のサイズから表示領域に合わせて表示内容（ユーザー名、アドレス、パスワード）の入力フィールドの奥行サイズを縮小する場合、制御手段１５０は、下記に示す式（２）に従って入力フィールドの奥行ｃを算出する。
ｃ＝（ａ−ｂ−ｄ（ｎ＋１））／ｎ
ｃ：入力フィールドの奥行
ａ：表示領域の奥行
ｂ：ソフトウェアキーボードの奥行
ｄ：入力フィールド間の隙間
ｎ：入力フィールドの数
【００６９】
上記式（２）に従って入力フィールドの奥行ｃを算出することにより、画面の表示領域と表示内容のサイズから表示領域に合わせて表示内容（ユーザー名、アドレス、パスワード）の入力フィールドの奥行サイズを縮小することができる。
【００７０】
その後、制御手段１５０は、ステップＳ７で決定された表示方法に従い、画面定義情報（ユーザ名、アドレス、パスワード）に対応する入力フィールドを表示するとともに（ステップＳ８）、ソフトウェアキーボードを表示する（ステップＳ９）。
【００７１】
ここで、図９は登録画面Ａ２の一例を示す図である。図９に示すように、登録画面Ａ２は、画面定義情報（ユーザ名、アドレス、パスワード）に対応した入力フィールドＦ１〜Ｆ３が設けられるとともに、ソフトウェアキーボードＫが表示されている。登録画面Ａ２によれば、入力フィールドＦ１を入力対象としている場合、入力対象に関連する入力フィールドＦ２、入力フィールドＦ３の入力フィールドの大きさ、位置、入力フィールド間のマージンを制御し、関連する入力フィールドの一覧（Ｆ１、Ｆ２、Ｆ３）をソフトウェアキーボードＫとともに表示する。
【００７２】
図９に示すように、登録画面Ａ２によれば、入力フィールドＦ１の入力時に関連する入力フィールドＦ２、入力フィールドＦ３がソフトウェアキーボードＫで隠れず、ユーザはどの入力フィールドＦ１、Ｆ２、Ｆ３に対しても直接入力することができる。
【００７３】
ユーザは、入力フィールドＦ１の入力の終了後、関連する入力フィールドＦ２または入力フィールドＦ３を選択し、ソフトウェアキーボードＫを表示したまま関連する他の入力フィールドＦ２、入力フィールドＦ３の入力を開始する（ステップＳ１０）。
【００７４】
このように本実施の形態によれば、ソフトウェアキーボードＫの表示を必要とするユーザが選択した入力フィールドととともに入力が必要な入力フィールドを、ソフトウェアキーボードＫに邪魔されることなく、同一画面に表示することができる。
【００７５】
なお、図６に示すシーケンス図におけるステップＳ１０において、ソフトウェアキーボードＫの表示を必要とする入力フィールドに対してソフトウェアキーボードＫによって値が入力された場合、次の入力フィールドの選択か、ソフトウェアキーボードＫを閉じるかの選択を受け付けるようにしてもよい。
【００７６】
また、ソフトウェアキーボードＫの表示を必要とするユーザが選択した入力フィールドと関連のある入力フィールドの数が多い場合、入力フィールドの幅を短縮して並列に並べるようにしてもよい。ここで、図１０は登録画面Ａ３の一例を示す図である。図１０に示すように、登録画面Ａ３は、入力フィールドＦ１〜Ｆ６が２列で設けられるとともに、ソフトウェアキーボードＫが表示されている。登録画面Ａ２によれば、入力フィールドＦ１を入力対象としている場合、入力対象に関連する入力フィールドの一覧（Ｆ１〜Ｆ６）をソフトウェアキーボードＫとともに表示する。
【００７７】
（第２の実施の形態）
次に、第２の実施の形態について説明する。
【００７８】
第２の実施の形態は、ソフトウェアキーボードＫの表示の際に、ＨＴＭＬの属性に基づいて表示対象となる項目の入力フィールドを決定する点が、第１の実施の形態と異なる。以下、第２の実施の形態の説明では、第１の実施の形態と同一部分の説明については省略し、第１の実施の形態と異なる箇所について説明する。
【００７９】
ここで、図１１は第２の実施の形態にかかる登録画面Ａ４の一例を示す図である。図１１に示すように、登録画面Ａ４は、画面定義情報（ユーザ名、アドレス、パスワード、メモ）に対応した入力フィールドＦ１〜Ｆ４が設けられる。また、図１１に示すように、入力フィールドＦ１〜Ｆ３には、入力必須項目であることを示す「※入力必須」が表示されている。
【００８０】
図１２は、図１１に示すような入力フィールドＦ１〜Ｆ４のＨＴＭＬ記載例を示す図である。図１２に示すように、ＨＴＭＬの属性として「ｒｅｑｕｉｒｅｄ」が記載された項目は入力必須項目である。
【００８１】
本実施の形態においては、制御手段１５０は、データ処理手段１５２によるテーブルＴの参照を不要とし、入力フィールドＦ１〜Ｆ４に「ｒｅｑｕｉｒｅｄ」の属性が設定されているか否かを判断し、この属性が設定されている入力フィールドを関連のある入力フィールドとして決定する。すなわち、図１１に示す例においては、入力フィールドＦ１〜Ｆ３を関連のある入力フィールドとする。
【００８２】
ここで、図１３は登録画面Ａ５の一例を示す図である。図１３に示すように、登録画面Ａ５は、「※入力必須」が表示されている画面定義情報（ユーザ名、アドレス、パスワード）に対応した入力フィールドＦ１〜Ｆ３が設けられるとともに、ソフトウェアキーボードＫが表示されている。登録画面Ａ５によれば、「※入力必須」が表示されている入力フィールドＦ１〜Ｆ３の入力フィールドの大きさ、位置、入力フィールド間のマージンを制御し、「※入力必須」が表示されている入力フィールドの一覧（Ｆ１、Ｆ２、Ｆ３）をソフトウェアキーボードＫとともに表示する。
【００８３】
このように本実施の形態によれば、ソフトウェアキーボードＫの表示を必要とするユーザが選択した入力フィールドととともに入力が必要な入力フィールドを、ソフトウェアキーボードＫに邪魔されることなく、同一画面に表示することができる。
【００８４】
なお、上記各実施の形態では、本発明の画像形成装置を、コピー機能、プリンタ機能、スキャナ機能およびファクシミリ機能のうち少なくとも２つの機能を有する複合機に適用した例を挙げて説明するが、複写機、プリンタ、スキャナ装置、ファクシミリ装置等の画像形成装置であればいずれにも適用することができる。
【００８５】
また、本発明は、画像形成装置以外に、ソフトウェアキーボードを用いて入力フィールドに入力するスマートフォン、タブレットＰＣ、タッチパネル機能を有するノートＰＣやテレビなどの家電製品にも適用することができる。
【符号の説明】
【００８６】
１        画像形成装置
２０      表示入力装置
１５０    制御手段
１５２    データ処理手段
【先行技術文献】
【特許文献】
【００８７】
【特許文献１】特開２０１６‐１７７８１６号公報
【図１】
2019164573.tif 000003
【図２】
2019164573.tif 000004
【図３】
2019164573.tif 000005
【図４】
2019164573.tif 000006
【図５】
2019164573.tif 000007
【図６】
2019164573.tif 000008
【図７】
2019164573.tif 000009
【図８】
2019164573.tif 000010
【図９】
2019164573.tif 000011
【図１０】
2019164573.tif 000012
【図１１】
2019164573.tif 000013
【図１２】
2019164573.tif 000014
【図１３】
2019164573.tif 000015