(57)【要約】【課題】複数のオブジェクト画像が配列（リスト）表示された表示領域内で押下操作およびドラッグ操作を受け付け可能なＵＩにおいて、ユーザの操作性を悪化させることなく、ユーザが容易に自身の意図した操作結果を得ることができるようにする。【解決手段】複数のオブジェクト画像４１等が配列されてなるメニューリスト画像３１の一部が表示領域３０に表示される。表示領域３０には押下領域５１とスクロール領域５２が設定されている。各領域５１，５２は、一方が他方に完全に包含されず互いに隣接するよう、且つ各領域５１，５２の双方に各オブジェクト画像４１等がそれぞれ含まれるように設定される。指示体が押下領域５１を押下（接触）すると、その接触位置に表示されているオブジェクト画像に対応した所定の処理が実行され、スクロール領域５２内で上下方向にドラッグ操作すると、メニューリスト画像３１がスクロールされる。【選択図】図２
2014056395.tif 000002
【特許請求の範囲】
【請求項１】
所定の配列方向に配列された複数のオブジェクト画像の一部を表示部の表示領域内に表示させるオブジェクト画像表示制御手段と、
前記表示領域へ外部から指示体が接触した場合にその接触したことおよびその接触位置を検出する接触検出手段と、
前記表示領域内に、第１の操作領域および第２の操作領域を、一方が他方に完全に包含されることなく互いに前記配列方向と直交する方向に隣接するよう、且つ、前記各操作領域の双方に、前記表示領域に表示される各オブジェクト画像それぞれの一部分が含まれるように設定する操作領域設定手段と、
前記接触検出手段により前記第１の操作領域内での前記指示体の接触が検出された場合に、その接触位置に表示されている前記オブジェクト画像に対して予め決められた処理を実行するオブジェクト画像対応処理実行手段と、
前記接触検出手段により前記第２の操作領域内での前記指示体の接触が検出され、その接触が維持されたまま前記接触位置が前記配列方向に移動した場合に、前記表示領域に表示させる前記オブジェクト画像を前記配列方向へスクロールさせるスクロール手段と、
を備えることを特徴とする画像表示制御装置。
【請求項２】
請求項１に記載の画像表示制御装置であって、
前記各操作領域の少なくとも一方は、前記指示体の接触によってその操作領域を前記配列方向と直交する方向に拡張または縮小することが可能な範囲可変操作領域であり、
前記操作領域設定手段は、前記接触検出手段により前記範囲可変操作領域への前記指示体の接触が検出された場合に、その接触状態が維持されたまま前記接触位置が前記直交する方向に移動したならば、前記各オブジェクト画像それぞれにおけるその接触した範囲可変操作領域に含まれる部分の面積がその移動量に応じて増加または減少するようにその範囲可変操作領域を前記直交する方向に拡張または縮小する
ことを特徴とする画像表示制御装置。
【請求項３】
請求項２に記載の画像表示制御装置であって、
前記操作領域設定手段は、前記指示体が接触した前記範囲可変操作領域を前記直交する方向に拡張する場合は、前記移動量に応じて他方の前記操作領域を前記直交する方向へ縮小し、前記指示体が接触した前記範囲可変操作領域を前記直交する方向に縮小する場合は、前記移動量に応じて他方の前記操作領域を前記直交する方向へ拡張する
ことを特徴とする画像表示制御装置。
【請求項４】
請求項２又は請求項３に記載の画像表示制御装置であって、
前記各操作領域のうち少なくとも前記範囲可変操作領域には、他方の操作領域と重複せず且つ前記オブジェクト画像を含まない独立領域が含まれており、
前記操作領域設定手段は、前記範囲可変操作領域における前記独立領域に対する前記指示体の接触操作によってその範囲可変操作領域を拡張または変更する場合は、その範囲可変操作領域のみ拡張または変更する
ことを特徴とする画像表示制御装置。
【請求項５】
請求項１〜請求項４の何れか１項に記載の画像表示制御装置であって、
前記接触検出手段による検出結果に基づいて、前記表示領域に対する前記指示体の接触状態が所定の領域入替条件を満たしたか否かを判断する領域入替条件判断手段を備え、
前記操作領域設定手段は、前記領域入替条件判断手段により前記領域入替条件を満たしたと判断された場合、第１の操作領域と前記第２の操作領域を互いに入れ替える
ことを特徴とする画像表示制御装置。
【請求項６】
請求項１〜請求項５の何れか１項に記載の画像表示制御装置であって、
前記各オブジェクト画像にはそれぞれ、前記直交する方向における一端から他端側に向けて配列されたテキスト画像が含まれており、
前記第１の操作領域は、前記第２の操作領域より前記一端側に位置し、且つ前記各テキスト画像それぞれの最も前記一端側のテキストを少なくとも含むよう設定されており、
前記操作領域設定手段は、少なくともその動作開始直後の初期状態においては、前記各操作領域をそれぞれ、前記配列方向の境界線を境にして隣接するよう、且つ前記第１の操作領域における前記直交する方向の幅が前記各テキスト画像の前記直交する方向における最大テキスト数に応じた幅となるように設定する
ことを特徴とする画像表示制御装置。
【請求項７】
請求項１〜請求項６の何れか１項に記載の画像表示制御装置であって、
前記第１の操作領域と前記第２の操作領域を外部から視覚的に区別できるようにするための所定の操作領域判別表示を行う操作領域判別手段を備える
ことを特徴とする画像表示制御装置。
【請求項８】
所定の配列方向に配列された複数のオブジェクト画像の一部を表示部の表示領域内に表示させ、
前記表示領域内に、第１の操作領域および第２の操作領域を、一方が他方に完全に包含されることなく互いに前記配列方向と直交する方向に隣接するよう、且つ、各操作領域の双方に、前記表示領域に表示される各オブジェクト画像それぞれの一部分が含まれるように設定し、
前記表示領域へ外部から指示体が接触した場合に、その接触位置が前記第１の操作領域内ならば、その接触位置に表示されている前記オブジェクト画像に対して予め設定されている処理を実行し、前記接触位置が前記第２の操作領域内であってその接触が維持されたまま前記接触位置が前記配列方向に移動したならば、前記表示領域に表示させる前記オブジェクト画像を前記配列方向へスクロールさせる
を備えることを特徴とする画像表示制御方法。
【請求項９】
コンピュータを、
所定の配列方向に配列された複数のオブジェクト画像の一部を表示部の表示領域内に表示させるオブジェクト画像表示制御手段と、
前記表示領域へ外部から指示体が接触した場合にその接触したことおよびその接触位置を検出する接触検出手段と、
前記表示領域内に、第１の操作領域および第２の操作領域を、一方が他方に完全に包含されることなく互いに前記配列方向と直交する方向に隣接するよう、且つ、前記各操作領域の双方に、前記表示領域に表示される各オブジェクト画像それぞれの一部分が含まれるように設定する操作領域設定手段と、
前記接触検出手段により前記第１の操作領域内での前記指示体の接触が検出された場合に、その接触位置に表示されている前記オブジェクト画像に対して予め決められた処理を実行するオブジェクト画像対応処理実行手段と、
前記接触検出手段により前記第２の操作領域内での前記指示体の接触が検出され、その接触が維持されたまま前記接触位置が前記配列方向に移動したならば、前記表示領域に表示させる前記オブジェクト画像を前記配列方向へスクロールさせるスクロール手段と、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定方向に配列された複数のオブジェクト画像を表示させる画像表示制御装置、この画像表示制御装置で用いられる画像表示制御方法およびプログラムに関する。
【背景技術】
【０００２】
複合機や携帯情報端末などの各種情報処理装置における、複数の機能や設定項目等をユーザに視認させたり選択させたりするためのユーザインタフェース（以下「ＵＩ」という）として、タッチパネルを備えた表示部を用いることが普及しつつある。このようなＵＩの最も一般的な例の１つとして、各種設定項目等を示す複数のオブジェクト画像がリスト表示された表示部に対し、ユーザによる、特定のオブジェクト画像を選択する押下操作およびリストをスクロールさせるスクロール操作を共に受け付け可能に構成されたものがある（例えば、特許文献１参照。）。
【０００３】
このようなＵＩでは、ユーザが表示部における所望の箇所を指やタッチペン等の指示体で押下（接触）すると、その押下した箇所に表示されているオブジェクト画像が選択されてそのオブジェクト画像に対応した各種処理が行われる。一方、その箇所を指等で押下したまま（即ち表示部に接触したまま）指等をリストの配列方向に移動（ドラッグ）すると、表示部に表示されているオブジェクト画像のリストがその移動方向にスクロールされる。つまり、同じオブジェクト画像に対して押下操作およびドラッグ操作の双方を受け付け可能となっている。なお、押下操作とドラッグ操作の判別は、表示部における指等の接触点の移動量が所定の閾値以上であるか否かによって行われるのが一般的である。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−７３７７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、押下操作による選択もでき且つドラッグ操作によるリストのスクロールもできるようなＵＩでは、ユーザの操作状態によっては、ユーザの意図しない処理が行われてしまうという問題が生じる。即ち、例えばユーザが特定のオブジェクト画像を選択すべく、そのオブジェクト画像を押下したつもりが、その押下時に指が表示部に接触したまま移動してしまって、リストがスクロールしてしまうという問題が生じる。
【０００６】
このような、押下操作が誤ってドラッグ操作と判断されることを防ぐためには、ドラッグ操作と判断される判断基準である接触点の移動量の閾値を長めに設定すればよい。しかし、閾値を長くすればするほど、逆にスクロールさせたい場合の操作性が悪くなり、ユーザとしてはスクロールさせるべくドラッグ操作したつもりでも、移動量が足りずに押下と判断されてしまうという問題が生じる。
【０００７】
本発明は上記課題に鑑みなされたものであり、複数のオブジェクト画像が配列（リスト）表示された表示領域内で特定のオブジェクト画像を選択するための押下操作およびリストをスクロールさせるためのドラッグ操作を受け付け可能なＵＩにおいて、ユーザの操作性を悪化させることなく、ユーザが容易に自身の意図した操作結果を得ることができるようにすることを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するためになされた本発明の画像表示制御装置は、オブジェクト画像表示制御手段と、接触検出手段と、操作領域設定手段と、オブジェクト画像対応処理実行手段と、スクロール手段と、を備えることを特徴とするものである。
【０００９】
オブジェクト画像表示制御手段は、所定の配列方向に配列された複数のオブジェクト画像の一部を表示部の表示領域内に表示させる。接触検出手段は、表示領域へ外部から指示体が接触した場合にその接触したことおよびその接触位置を検出する。操作領域設定手段は、表示領域内に、第１の操作領域および第２の操作領域を、一方が他方に完全に包含されることなく互いに上記配列方向と直交する方向に隣接するよう、且つ、各操作領域の双方に、表示領域に表示される各オブジェクト画像それぞれの一部分が含まれるように設定する。オブジェクト画像対応処理実行手段は、接触検出手段により第１の操作領域内での指示体の接触が検出された場合に、その接触位置に表示されているオブジェクト画像に対して予め決められた処理を実行する。スクロール手段は、接触検出手段により第２の操作領域内での指示体の接触が検出され、その接触が維持されたまま接触位置が配列方向に移動した場合に、表示領域に表示させるオブジェクト画像を上記配列方向へスクロールさせる。
【００１０】
このように構成された画像表示制御装置では、各オブジェクト画像が表示される表示領域内に、指示体が接触（押下）した場合にその接触位置に表示されているオブジェクト画像に対して予め決められた処理が実行される第１の操作領域と、指示体が接触したまま配列方向に移動した場合にオブジェクト画像をスクロールさせる第２の操作領域がそれぞれ個別に（ただし一部重複可）設定されている。また、各オブジェクト画像はいずれも各領域の双方に含まれている。
【００１１】
そのため、ユーザは、特定のオブジェクト画像を選択して対応する処理を実行させたい場合は、そのオブジェクト画像全体のうち第１の操作領域内に表示されている部分を押下（接触）することで確実に対応する処理を実行させることができる。一方、各オブジェクト画像をスクロールさせたい場合は、第２の操作領域内で指示体を接触させたまま移動させることで確実にスクロールさせることができる。従って、従来のようにユーザの操作性を悪化させることなく、ユーザが容易に自身の意図した操作結果を得ることができる。
【００１２】
なお、オブジェクト画像対応処理実行手段は、第１の操作領域内での指示体接触が検出された場合に、その検出された時点ですぐに予め決められた処理を実行してもよいし、検出されてから指示体が離れるまでの間の所定のタイミング（例えば指示体が離れたタイミング）で予め決められた処理を実行してもよく、予め決められた処理を実行する具体的タイミングは特に限定されるものではない。
【００１３】
上述した本発明の画像表示制御装置が備える各手段は、コンピュータをそれら各手段として機能させるためのプログラムとして実現することができる。
【図面の簡単な説明】
【００１４】
【図１】実施形態の複合機の概略構成を表す構成図である。
【図２】液晶ディスプレイの画面例を表す説明図であり、（ａ）は初期画面例、（ｂ）は指示体で押下領域を押下したときの画面例、（ｃ）は指示体でスクロール領域をスクロール方向にドラッグしたときの画面例を示す。
【図３】液晶ディスプレイの画面例を表す説明図であり、（ａ）は各領域の幅が変更される例、（ｂ）は各領域が入れ替わる例、（ｃ）は初期画面例であって押下領域とスクロール領域の一部重複が許容される例を示す。
【図４】複合機のＣＰＵが実行するタッチ状態検出処理のフローチャートである。
【図５】複合機のＣＰＵが実行するメイン処理のフローチャートである。
【図６】図５のＳ１３５のタッチ開始処理の詳細を表すフローチャートである。
【図７】図５のＳ１４５のドラッグ処理の詳細を表すフローチャートである。
【図８】図７のＳ３５０の縦方向処理の詳細を表すフローチャートである。
【図９】図７のＳ３５５の横方向処理の詳細を表すフローチャートである。
【図１０】図５のＳ１５５のリリース処理の詳細を表すフローチャートである。
【図１１】各リスト項目画像の文字数に応じて押下領域及びスクロール領域の幅（境界）を初期設定する方法を説明するための説明図である。
【図１２】文字数に応じて各領域の幅（境界）を初期設定する方法を実現するために複合機のＣＰＵが実行する自動領域決定処理のフローチャートである。
【図１３】液晶ディスプレイの画面例の他の例を表す説明図である。
【発明を実施するための形態】
【００１５】
以下に、本発明の好適な実施形態について、具体的な例を挙げて説明する。
本実施形態の複合機１は、図１（ａ）に示すように、ＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３、画像読取部１４、画像形成部１５、操作パネル部１６、ネットワーク通信部１７、及び電話通信部１８などを備えている。
【００１６】
ＣＰＵ１１は、ＲＯＭ１２に記憶されている各種制御プログラムに従って複合機１内の各部の制御および各種演算を実行する。ＲＡＭ１３は、ＣＰＵ１１から直接アクセスされるメインメモリ等として利用される。このＲＡＭ１３は、後述する各種処理の実行時に設定される各種座標や各種処理状態、各種処理方向、発行される各種イベントなどの一時記憶領域としても利用される。
【００１７】
画像読取部１４は、原稿の画像をイメージセンサで読み取ってその画像を表す画像データを生成することができる。画像形成部１５は、シート状の被記録媒体（例えば記録用紙）に対して画像を記録することができる。ネットワーク通信部１７は、ネットワークインターフェースカード等によって構成される。電話通信部１８は、モデム等によって構成され、電話回線（図示略）を介して電話やファクシミリ通信を行う際に利用される。
【００１８】
操作パネル部１６は、液晶ディスプレイ２１、タッチパネル２２、及び内照式表示部２３によって構成され、これら三者が図１（ｂ）に示すように配置されている。
液晶ディスプレイ２１は、任意の画像をフルカラーで表示可能なＬＣＤモジュールによって構成されている。この液晶ディスプレイ２１には、複合機１の各種機能や動作状態等の各種情報が表示されるが、その１つとして、図２や図３に例示するような、複数のリスト項目画像４１，４２，・・・からなるメニューリスト画像３１がある。各リスト項目画像４１，４２，・・・はそれぞれ、特定の設定項目や機能などを示すものである。このメニューリスト画像３１が表示されている状態では、ユーザは、所定の押下操作を行うことで何れか１つのリスト項目画像４１を選択することができ、リスト配列方向への所定のドラッグ操作を行うことで、メニューリスト画像３１をスクロールさせることもできる。
【００１９】
タッチパネル２２は、図１（ｂ）に示すように、例えば静電容量方式などの周知の方式で指やタッチペンなどの指示体による接触（押下）操作を検出可能な透明なフィルム状の入力デバイスである。このタッチパネル２２は、液晶ディスプレイ２１及び内照式表示２３の表示面に重ねて（一体的に）配置されている。内照式表示部２３は、図１（ｂ）に示すように、テンキーやその他の操作用ボタンを示す画像が表示される部分である。
【００２０】
本実施形態においては、タッチパネル２２によって指示体の接触が検出された際、その接触位置の座標を示す接触検出信号がタッチパネル２２からＣＰＵ１１に出力される。ＣＰＵ１１は、その接触検出信号に基づいて、後述する各種の処理を行う。
【００２１】
次に、液晶ディスプレイ２１に上述したメニューリスト画像３１が表示される際の表示内容及びユーザ操作の受け付け内容等について、図２および図３の各画面例を用いて具体的に説明する。
【００２２】
本実施形態の複合機１では、例えば、機能を選択する際や、画像読取部１４による画像読み取りの際の各種設定項目を設定する際などの様々なシーンで、図２（ａ）に示すような、複数のリスト項目画像４１，４２，４３，４４，４５，・・・からなるメニューリスト画像３１の初期画面が、液晶ディスプレイ２１の表示領域３０に表示される。
【００２３】
具体的には、メニューリスト画像３１は、複数のリスト項目画像４１等が所定の配列方向（図２（ａ）の例では図面縦方向。以下「スクロール方向」ともいう。）に配列されてなるものである。本実施形態では、６つ以上のリスト項目画像が配列されている。そして、その複数のリスト項目画像のうち所定数（本例では５つ）が表示領域３０に表示される。現在表示されている５つのリスト項目画像がメニューリスト画像３１全体のどこに位置しているかについては、表示領域３０の右端に表示されるスクロール位置表示バー３２により確認することができる。
【００２４】
各リスト項目画像４１等はそれぞれ、当該リスト項目画像に対応した設定内容や機能等を示す文字列（テキスト画像）を含んでいる。これら文字列は、画面左右方向（リストの配列方向と直交する方向）において、最左端を起点として右端に向けて配列されている。ユーザは、この文字列を見ることで、どのリスト項目画像を押下するとどういう機能が実現されるのかを認識することができる。また、表示領域３０には、ｘ−ｙ座標が設定されている。即ち、画面左右方向にｘ軸、画面上下方向（スクロール方向）にｙ座標が設定されている。なお、座標の原点をどこに設定するかについては適宜決めることができる。
【００２５】
このような初期画面が表示されている状態で、ユーザは、所望のリスト項目画像を指等の指示体で押下（接触）することで、そのリスト項目画像に対応した機能を実現させることができる。また、ユーザは、表示領域３０内で指示体を上記配列方向にドラッグさせることで、そのドラッグさせた方向へとメニューリスト画像３１をスクロールさせることもできる。なお、指示体による押下操作やドラッグ操作等の各種接触操作は、詳しくは、タッチパネル２２への接触を介して実現されるものである。そのため、以下の説明で、単に「押下（操作）」、「ドラッグ（操作）」、「フリック（操作）」というときは、実際にはタッチパネル２２に対する操作であることを意味する。
【００２６】
ところで、本実施形態では、リスト項目画像に対してどの部分を押下してもその押下が受け付けられる（即ち対応する機能が実現される）わけではなく、また、表示領域３０内のどこをドラッグしてもメニューリスト画像３１をスクロールさせることができるわけでもない。本実施形態では、表示領域３０内において、押下操作が受け付けられる領域と、ドラッグ操作が受け付けられる領域とが、それぞれ個別に設定されている。
【００２７】
即ち、表示領域３０内におけるメニューリスト画像３１全体が、左右に領域分割されており、左側が押下領域５１、右側がスクロール領域５２となっている。各リスト項目画像４１等からみれば、各リスト項目画像４１等のうち左側は押下領域５１内に存在し、右側はスクロール領域５２内に存在していることになる。なお、これら各領域５１，５２は、メニューリスト画像３１内に設定されるものであって、メニューリスト画像３１からはみ出てはおらず、また両者間に空き幅はないのだが、図２の例では、領域の分割状態を分かりやすく示すために、各領域５１，５２を示す破線を、メニューリスト画像３１よりもはみ出させて図示し、また両者間が若干離れるように図示している。ただし、各領域５１，５２をメニューリスト画像３１内に収まるようにしたり両者を隙間無く隣接させたりすることは必須ではない。
【００２８】
また、押下領域５１とスクロール領域５２の境界を視覚的に区別できるよう、本実施形態では、所定の操作状態においてこれら各領域５１，５２が異なる色で表示される。どのようなときに各領域５１，５２が色分け表示されるのかについては後で説明する。なお、各領域５１，５２の色分け表示は、操作状況等にかかわらずメニューリスト画像３１が表示されている間は常時行われるようにしてもよいし、逆に、そのような色分け表示はしないようにしてもよい。
【００２９】
初期画面において各領域５１，５２の幅をどのように設定するかについては種々考えられ、例えば、予め決められたデフォルト値にしてもよいし、前回メニューリスト画像３１が表示された際の最後の状態を再現するようにしてもよい。
【００３０】
図２及び後述する図３（ａ）、（ｂ）の画面例では、各領域５１，５２は重複せず互いが左右に（スクロール方向と直交する方向に）ぴったり隣接しているが、図３（ｃ）に例示するように押下領域とスクロール領域が一部重複してもよい。図３（ｃ）の例では、押下操作とドラッグ操作を共に受け付け可能な領域として共通領域６３が設定されている。
【００３１】
図２（ａ）に例示した表示領域３０の画面例において、ユーザが、指等の指示体を押下領域５１内の所望の位置に押下（接触）させた場合は、押下操作がなされたものと判断され、その押下された位置に表示されているリスト項目画像に対して予め決められている処理（以下「対応処理」ともいう）が実行される。なお、実際に対応処理が実行されるタイミングは、本実施形態では、押下された時点ではなく、押下された後に指示体がタッチパネル２２から離れたときである。但し、そのように指示体が離れたタイミングで対応処理が実行されるようにするのは必須ではなく、例えば指示体が接触したタイミングでもよいし、指示体が接触してから離れるまでの間の所定のタイミングでもよい。
【００３２】
図２（ｂ）は、指示体が、押下領域５１内における、上から４番目のリスト項目画像４４が表示されている領域を押下した例を示している。この場合、複合機１のＣＰＵ１１は、指示体の押下位置の座標を示す接触検出信号に基づいて、そのリスト項目画像４４が押下されたことを検出し、そのリスト項目画像４４の対応処理を実行する。なお、押下領域５１内で指示体が押下された場合、その押下された位置に表示されているリスト項目画像を、他のリスト項目画像と異なる色で表示するなどの所定の方法で強調表示させるようにしてもよい。
【００３３】
図２（ａ）に例示した表示領域３０の画面例において、ユーザが、指等の指示体をスクロール領域５２内の任意の位置に押下（接触）させ、その接触状態を維持したまま指示体をスクロール方向に移動させた場合（即ち接触位置をスクロール方向に移動させた場合）は、ドラッグ操作がなされたものと判断される。この場合、スクロール方向への指示体の移動量（詳しくはｙ軸方向の移動距離）に応じた量だけメニューリスト画像３１がスクロールされる。
【００３４】
図２（ｃ）は、指示体がスクロール領域５２内でドラッグ操作したことにより、メニューリスト画像３１が、リスト項目画像２つ分だけ上方向へスクロールされた例を示している。この場合、複合機１のＣＰＵ１１は、指示体の押下位置の座標変化に基づいて、ドラッグ操作がなされたことを検出する。そして、そのドラッグ操作の方向（図２（ｃ）では上下のスクロール方向のうち上方向）へ、ドラッグ操作量（指示体のｙ軸方向移動距離）に応じた量だけ、メニューリスト画像３１をスクロールさせる。
【００３５】
図２（ａ）に示した初期画面例に対し、ユーザは、各領域５１，５２の幅（スクロール方向と直交する方向の幅）を拡張または縮小することができる。具体的には、各領域５１，５２の何れかにおいて、ユーザが、その幅方向に指示体をドラッグ操作させると、そのドラッグ操作させた領域の幅が、そのドラッグ操作させた方向へ変動する。例えばスクロール領域５２内で指示体を左方向へドラッグさせた場合は、図３（ａ）に例示するように、スクロール領域５２の幅が左方向へ拡張される。この場合、スクロール領域５２が拡張された分だけ、押下領域５１は左方向に縮小される。各領域５１，５２が拡張、縮小される量は、ドラッグ操作の際の指示体の移動量（詳しくはｘ軸方向の移動距離）に応じた量となる。例えば、ｘ軸方向の移動距離と同じ長さだけ各領域５１，５２の幅を変化させるようにすることが考えられる。
【００３６】
図３（ａ）の例とは逆に、スクロール領域５２内で指示体を右方向にドラッグ操作させた場合は、スクロール領域５２の幅は右方向に縮小され、その分、押下領域５１の幅は右方向に拡張されることになる。
【００３７】
指示体を押下領域５１でドラッグ操作させることによっても、同じように各領域５１，５２の幅を拡張又は縮小させることができる。例えば、押下領域５１内で指示体を右方向にドラッグ操作させると、押下領域５１の幅が右方向に拡張され、その分、スクロール領域５２の幅が左方向に縮小される。
【００３８】
また、図２（ａ）に示した初期画面例に対し、ユーザは、各領域５１，５２の位置を入れ替えることができる。具体的には、各領域５１，５２の何れか一方において、ユーザが、その領域から他方の領域に向けてフリック操作すると、各領域５１，５２が入れ替わる。図３（ｂ）の画面例は、図２（ａ）に例示した初期画面に対し、ユーザがスクロール領域５２内で指示体を左方向（押下領域５１の方向）へフリック操作したことにより、スクロール領域５２が左側へ、押下領域５１が右側へとそれぞれ移動して、両者の位置が入れ替わった例を示している。
【００３９】
何をもってフリック操作がなされたと判断するかについては種々考えられるが、本実施形態では、一例として、指示体が押下（接触）した状態のまま、その接触位置が所定時間（後述するタッチ状態検出周期）内に３０ｄｏｔ分の距離を超えて移動した場合に（即ち速い速度で移動した場合に）、フリック操作がなされたと判断するようにしている。なお、３０ｄｏｔ（ドット）は、液晶ディスプレイ２１の表示能力（解像度）に対応している。
【００４０】
図２および図３（ａ），（ｂ）に示した画面例は、いずれも、押下領域５１とスクロール領域５２が重複せずにぴったり隣接している例であったが、各領域５１，５２は一部重複してもよい。
【００４１】
図３（ｃ）は、押下操作およびスクロール方向のドラッグ操作の双方を受け付け可能な共通領域６３が設定された画面例である。より具体的には、図３（ｃ）の画面例は、表示領域３０内に、押下専用領域６１と、スクロール専用領域６２と、共通領域６３と、押下領域サイズ変更領域６４と、スクロール領域サイズ変更領域６５とが設定されている。
【００４２】
押下専用領域６１は、押下操作は受け付けるもののスクロール方向のドラッグ操作は受け付けない領域である。スクロール専用領域６２は、スクロール方向のドラッグ操作は受け付けるものの押下操作は受け付けない領域である。共通領域６３は、スクロール方向のドラッグ操作と押下操作を共に受け付け可能な領域である。これら押下専用領域６１、スクロール専用領域６２、および共通領域６３は、いずれもメニューリスト画像３１内に設定されている。換言すれば、メニューリスト画像３１全体がこれら３つの領域６１，６２，６３に三分割されているともいえる。
【００４３】
押下専用領域６１と共通領域６３は、何れも押下操作を受け付け可能であるため、全体として、図２に例示した画面例における押下領域５１と等価である。そのため、以下の説明では、図３（ｃ）の画面例については、押下専用領域６１と共通領域６３をまとめて押下領域とも称する。同様に、スクロール専用領域６２と共通領域６３は、何れもスクロール方向のドラッグ操作を受け付け可能であるため、全体として、図２に例示した画面例におけるスクロール領域５２と等価である。そのため、以下の説明では、図３（ｃ）の画面例については、スクロール専用領域６２と共通領域６３をまとめてスクロール領域とも称する。
【００４４】
押下領域サイズ変更領域６４およびスクロール領域サイズ変更領域６５は、いずれも、表示領域３０内においてメニューリスト画像３１の領域とは異なる領域にそれぞれ独立して設定されている。
【００４５】
押下領域サイズ変更領域６４は、メニューリスト画像３１の左下において、押下領域の下側に隣接するように設定されている。この押下領域サイズ変更領域６４は、押下領域のみ幅を拡張または縮小させるためのドラッグ操作を受け付ける領域である。ユーザが、この押下領域サイズ変更領域６４内で例えば右方向にドラッグ操作すると、押下領域の幅が右方向に拡張される。但しこの場合、スクロール領域の幅は不変であるため、実質的には、押下専用領域６１の幅は変わらず、共通領域６３の幅が右方向に拡張されることになる。その分、スクロール専用領域６２の幅は右方向に縮小されることになる。
【００４６】
スクロール領域サイズ変更領域６５は、メニューリスト画像３１の右上において、スクロール領域の上側に隣接するように設定されている。このスクロール領域サイズ変更領域６５は、スクロール領域のみ幅を拡張または縮小させるためのドラッグ操作を受け付ける領域である。ユーザが、このスクロール領域サイズ変更領域６５内で例えば左方向にドラッグ操作すると、スクロール領域の幅が左方向に拡張される。但しこの場合、押下領域の幅は不変であるため、実質的には、スクロール専用領域６２の幅は変わらず、共通領域６３の幅が左方向に拡張されることになる。その分、押下専用領域６１の幅は左方向に縮小されることになる。
【００４７】
なお、共通領域６３内で左右方向にドラッグ操作した場合は、押下領域およびスクロール領域の双方の幅が、そのドラッグ操作した方向へと変化する。即ち、例えば共通領域６３内で左方向にドラッグ操作した場合は、押下領域は左方向に縮小し、スクロール領域は左方向に拡張する。両者の変化幅は同じである。そのため、結果として、共通領域６３がその幅は不変のまま左方向に移動し、その分、スクロール専用領域６２は左方向に拡張され、押下専用領域６１は左方向に縮小されることになる。
【００４８】
また、図３（ｃ）の画面例の場合も、横方向へのフリック操作によって押下領域とスクロール領域を入れ替えることができる。例えば、スクロール専用領域６２又は共通領域６３内で左方向にフリック操作すると、押下領域とスクロール領域が入れ替わる。その際、押下領域サイズ変更領域６４についても、押下領域の右側への移動に伴って右側へ移動し、スクロール領域サイズ変更領域６５についても、スクロール領域の左側への移動に伴って左側へ移動する。
【００４９】
次に、メニューリスト画像３１が表示される際にＣＰＵ１１が実行する各種制御処理について、図４〜図１０を用いて説明する。なお、図４〜図１０の各処理は、一例として、図３（ｃ）に例示したような、表示領域３０内において共通領域６３を含む５種類の領域６１〜６５が設定される場合に対応した処理を示している。
【００５０】
複合機１の動作開始後、ユーザが各種操作等を行う過程で、図３（ｃ）に例示したメニューリスト画像３１の初期画面を表示させるべき所定の操作がなされると、ＣＰＵ１１は、図４のタッチ状態検出処理と図５のメイン処理を並行して実行する。
【００５１】
まず、図４のタッチ状態検出処理について説明する。ＣＰＵ１１は、このタッチ状態検出処理を、所定の時間間隔（タッチ状態検出周期）で繰り返し実行する。ＣＰＵ１１は、このタッチ状態検出処理を開始すると、まずＳ５で、タッチパネル２２からの接触検出信号の有無を確認する。このとき、タッチパネル２２から接触検出信号が入力されていれば、その接触検出信号が示す接触位置の座標を指示座標（ｘ１，ｙ１）として取得する。
【００５２】
Ｓ５の処理結果に基づき、Ｓ１０で、指示体のタッチ（接触）開始を検出したか否か判断する。具体的には、前回のタッチ状態検出処理実行時にはＳ５で接触検出信号が入力されておらず（即ち指示体が接触しておらず）、今回のＳ５の処理で接触検出信号が入力された場合は、指示体のタッチ開始と判断して、Ｓ１５に進む。
【００５３】
Ｓ１５では、Ｓ５で検出した指示座標（ｘ１，ｙ１）を、前回指示座標（ｘ０，ｙ０）としてＲＡＭ１３に記憶する。更に、Ｓ２０で、指示座標（ｘ１，ｙ１）をイベント座標（ｘｅ，ｙｅ）としてＲＡＭ１３に記憶し、Ｓ２５で、イベント種別を「タッチ」としてＲＡＭ１３に記憶することでイベントを発行し、このタッチ状態検出処理を終了する。「タッチ」のイベントが発行されたということは、指示体がタッチパネル２２にタッチを開始した状態にあることを示している。
【００５４】
Ｓ１０の判断処理において、前回のタッチ状態検出処理実行時にもＳ５で接触検出信号が入力され（即ち指示体が既に接触しており）、今回のＳ５の処理でも接触検出信号が入力された場合は、指示体がタッチパネル２２に接触しているもののそれは今回タッチ開始されたものではなく前回から接触状態が継続しているということであるため、Ｓ３０に進む。また、Ｓ５の処理で接触検出信号が入力されていない場合、即ち指示体がタッチパネル２２に接触していない場合も、Ｓ１０からＳ３０に進む。
【００５５】
Ｓ３０では、Ｓ５において検出された指示座標（ｘ１，ｙ１）が前回指示座標（ｘ０，ｙ０）と異なるか否かを判断する。そして、前回指示座標（ｘ０，ｙ０）と異なる指示座標（ｘ１，ｙ１）が検出されている場合は、Ｓ３５で指示座標（ｘ１，ｙ１）をイベント座標（ｘｅ，ｙｅ）としてＲＡＭ１３に記憶し、Ｓ４０で指示座標（ｘ１，ｙ１）を、前回指示座標（ｘ０，ｙ０）としてＲＡＭ１３に記憶する。そしてＳ４５、でイベント種別を「ドラッグ」としてＲＡＭ１３に記憶することでイベントを発行し、このタッチ状態検出処理を終了する。「ドラッグ」のイベントが発行されたということは、指示体がタッチパネル２２でドラッグ操作をしていること、換言すれば接触位置が移動したことを示している。
【００５６】
なお、Ｓ４５による「ドラッグ」のイベント発行がタッチ開始後最初に行われた場合、即ち前回のタッチ状態検出処理でタッチ開始が検出されて「タッチ」のイベントが発行され、今回のタッチ状態検出処理で接触位置の座標の移動が検出されてＳ４５で「ドラッグ」のイベントが発行された場合は、タッチ開始後初めてのドラッグ操作である旨の情報も記憶する。この情報は、後述する図７のＳ３２０の処理で用いられる。
【００５７】
Ｓ３０で、指示座標（ｘ１，ｙ１）が前回指示座標（ｘ０，ｙ０）と異なる場合は、Ｓ５０に進む。なお、Ｓ５で接触検出信号が入力されなかった場合も、Ｓ３０からＳ５０に進む。Ｓ５０では、タッチパネル２２から指示体が離れたか否かを判断する。Ｓ５で接触検出信号が入力されている場合は、タッチパネル２２にはまだ指示体が接触しているということであるため、このタッチ状態検出処理を終了する。一方、前回のタッチ状態検出処理実行時にはＳ５で接触検出信号が入力されたものの（即ち指示体が接触していたものの）、今回のＳ５の処理では接触検出信号が入力されなかった場合は、タッチパネル２２から指示体が離れたものと判断して、Ｓ５５に進む。
【００５８】
Ｓ５５では、前回指示座標（ｘ０，ｙ０）をイベント座標（ｘｅ，ｙｅ）としてＲＡＭ１３に記憶する。そしてＳ６０で、イベント種別を「リリース」としてＲＡＭ１３に記憶することでイベントを発行し、このタッチ状態検出処理を終了する。「リリース」のイベントが発行されたということは、指示体がタッチパネル２２から離れたことを示している。
【００５９】
このようなタッチ状態検出処理がタッチ状態検出周期で繰り返し実行されることで、その実行毎に、指示体がタッチパネル２２にタッチ開始されたか、接触状態が同じ位置で続いているか、ドラッグ操作がなされているか、指示体がリリースされたか、または指示体がタッチパネルに接触していない状態が続いているか、の何れかが判断される。
【００６０】
次に、図５のメイン処理について説明する。ＣＰＵ１１は、このメイン処理を開始すると、まずＳ１１０で、リスト表示処理を行う。具体的には、図３（ｃ）に例示したメニューリスト画像３１を初期画面として液晶ディスプレイ２１の表示領域３０に表示させる。その際、各領域６１〜６５についても、図３（ｃ）に例示したように初期設定する。
【００６１】
Ｓ１１５では、イベント待ちを行う。即ち、所定時間（例えば５ｍｓｅｃ）待機して、その間、イベント発行を待ち、イベントが発行されたらそれを取得する。Ｓ１２０では、イベントを取得したか否か判断し、取得しなかった場合はＳ１１５に戻るが、取得した場合はＳ１２５に進む。Ｓ１２５では、ＲＡＭ１３に記憶されているイベント座標（ｘｅ，ｙｅ）を指示座標（ＸＮ，ＹＮ）としてＲＡＭ１３に記憶する。
【００６２】
Ｓ１３０で、イベント種別が「タッチ」か否か判断し、「タッチ」ならばＳ１３５のタッチ開始処理に進む。イベント種別が「タッチ」でない場合は、Ｓ１４０で、イベント種別が「ドラッグ」か否か判断し、「ドラッグ」ならばＳ１４５のドラッグ処理に進む。イベント種別が「ドラッグ」でない場合は、Ｓ１５０で、イベント種別が「リリース」か否か判断し、「リリース」でなければＳ１１５に戻るが、「リリース」ならばＳ１５５のリリース処理に進む。以下、Ｓ１３５のタッチ開始処理、Ｓ１４５のドラッグ処理、およびＳ１５５のリリース処理について、順に説明する。
【００６３】
まず、Ｓ１３５のタッチ開始処理について、図６を用いて説明する。ＣＰＵ１１は、図６のタッチ開始処理を開始すると、Ｓ２１０で、処理状態として「初期状態」を保持（例えばＲＡＭ１３に設定・記憶）する。Ｓ２１５では、押下・スクロール領域表示を行う設定になっているか否か判断する。押下・スクロール領域表示とは、要するに、押下領域とスクロール領域を視覚的に区別できるようにするための色分け表示のことであり、ユーザは、この色分け表示をさせるかどうかを予め設定しておくことができる。なお、図３（ｃ）の画面例の場合、押下専用領域６１と押下領域サイズ変更領域６４が同じ色で他の領域とは異なる色となり、スクロール専用領域６２とスクロール領域サイズ変更領域６５が同じ色で他の領域とは異なる色となり、共通領域６３が他の各領域６１，６２，６４，６５とは異なる色となる。つまり、三色に色分けされることになる。
【００６４】
Ｓ２１５で、押下・スクロール領域表示を行う設定になっていない場合はＳ２２５に進むが、押下・スクロール領域表示を行う設定になっている場合は、Ｓ２２０で、領域表示を実行する。つまり、上記のように各領域６１〜６５を色分け表示する。
【００６５】
Ｓ２２５では、タッチ開始位置座標（ＸＮ，ＹＮ）（即ちタッチ開始検出時の指示座標）が押下専用領域６１内であるか否か判断する。押下専用領域６１内である場合は、Ｓ２３０で、押下対象のリスト項目画像をＲＡＭ１３に記憶し、Ｓ２３５で、処理状態として「押下状態」を保持して、Ｓ２８０に進む。Ｓ２８０では、タッチ開始位置座標（ＸＮ，ＹＮ）を前回指示座標（Ｘ０，Ｙ０）としてＲＡＭ１３に記憶する。
【００６６】
Ｓ２２５でタッチ開始位置座標（ＸＮ，ＹＮ）が押下専用領域６１内ではないと判断した場合は、Ｓ２４０で、タッチ開始位置座標（ＸＮ，ＹＮ）がスクロール専用領域６２内であるか否か判断する。スクロール専用領域６２内である場合は、Ｓ２４５で、処理状態として「方向決定待ち状態」を保持して、Ｓ２８０に進む。
【００６７】
Ｓ２４０でタッチ開始位置座標（ＸＮ，ＹＮ）がスクロール専用領域６２内ではないと判断した場合は、Ｓ２５０で、タッチ開始位置座標（ＸＮ，ＹＮ）が共通領域６３内であるか否か判断する。共通領域６３内である場合は、Ｓ２５５で、処理状態として「押下または方向決定待ち状態」を保持して、Ｓ２８０に進む。
【００６８】
Ｓ２５０でタッチ開始位置座標（ＸＮ，ＹＮ）が共通領域６３内ではないと判断した場合は、Ｓ２６０で、タッチ開始位置座標（ＸＮ，ＹＮ）が押下領域サイズ変更領域６４内であるか否か判断する。押下領域サイズ変更領域６４内である場合は、Ｓ２６５で、処理状態として「押下領域変更待ち状態」を保持して、Ｓ２８０に進む。
【００６９】
Ｓ２６０でタッチ開始位置座標（ＸＮ，ＹＮ）が押下領域サイズ変更領域６４内ではないと判断した場合は、Ｓ２７０で、タッチ開始位置座標（ＸＮ，ＹＮ）がスクロール領域サイズ変更領域６５内であるか否か判断する。スクロール領域サイズ変更領域６５内でなければＳ２８０に進むが、スクロール領域サイズ変更領域６５内である場合は、Ｓ２７５で、処理状態として「スクロール領域変更待ち状態」を保持して、Ｓ２８０に進む。
【００７０】
次に、Ｓ１４５のドラッグ処理について、図７を用いて説明する。ＣＰＵ１１は、図７のドラッグ処理を開始すると、Ｓ３１０で、前回指示座標（Ｘ０，Ｙ０）と移動先の指示座標（ＸＮ，ＹＮ）（即ち図５のＳ１２５で記憶した指示座標（ＸＮ，ＹＮ））から、指示体の接触位置の移動方向と移動距離を算出する。
【００７１】
具体的には、実際に移動した方向をｘ軸成分とｙ軸成分に分解し、各成分の長さを比較して、長い方を移動方向に決定する。そのため、ｘ軸成分の方が長ければ、移動方向は横方向（左右方向）となり、ｙ軸成分の方が長ければ、移動方向は縦方向（上下方向・スクロール方向）となる。移動距離は、実際に移動した距離のｘ軸成分の長さおよびｙ軸成分の長さのうち、移動方向として決定された成分の長さとなる。
【００７２】
Ｓ３１５では、処理状態が「初期状態」ではないか否か判断し、初期状態ならばそのままこのドラッグ処理を終了するが、初期状態ならば、Ｓ３２０で、タッチ開始後初めてのドラッグ操作であるか否か判断する。既述の通り、タッチ開始後に初めてドラッグ操作がなされた場合は、その旨がＲＡＭ１３に記憶されている。タッチ開始後初めてのドラッグ操作ではない場合は、Ｓ３４０に進むが、タッチ開始後初めてのドラッグ操作である場合は、Ｓ３２５で、移動方向が縦方向であるか否か判断する。移動方向が縦方向の場合は、Ｓ３３０で、処理方向として「縦方向」をＲＡＭ１３に保持して、Ｓ３４０に進む。移動方向が横方向の場合は、Ｓ３３５で、処理方向として「横方向」をＲＡＭ１３に保持して、Ｓ３４０に進む。
【００７３】
Ｓ３４０では、処理状態が「押下状態」か否か判断し、押下状態ならばＳ３６０に進み、押下状態でなければ、Ｓ３４５で、処理方向が「縦方向」であるか否か判断する。処理方向が縦方向の場合は、Ｓ３５０の横方向処理を行った上でＳ３６０に進み、処理方向が縦方向ではない場合（即ち横方向である場合）は、Ｓ３５５で横方向処理を行った上でＳ３６０に進む。Ｓ３６０では、移動先の指示座標（ＸＮ，ＹＮ）を前回指示座標（Ｘ０，Ｙ０）としてＲＡＭ１３に記憶する。Ｓ３５０の縦方向処理は、具体的には図８に示す通りであり、Ｓ３５５の横方向処理は、具体的には図９に示す通りである。
【００７４】
ＣＰＵ１１は、図８の縦方向処理を開始すると、Ｓ４１０で、今回の移動方向（即ち図７のＳ３１０で算出された移動方向）が縦方向であるか否か判断する。今回の移動方向が縦方向でない場合は、Ｓ４６０に進み、処理状態として「初期状態」を保持するが、今回の移動方向が縦方向である場合は、Ｓ４１５で、処理状態が「方向決定待ち状態」または「押下または方向決定待ち状態」であるか否か判断する。
【００７５】
処理状態が「方向決定待ち状態」または「押下または方向決定待ち状態」である場合は、Ｓ４２０で、移動先の指示座標（ＸＮ，ＹＮ）がスクロール可能領域（即ちスクロールさせることが可能なスクロール専用領域６２または共通領域６３）内であるか否か判断する。移動先の指示座標（ＸＮ，ＹＮ）がスクロール可能領域内でない場合は、Ｓ４３０で処理状態を「初期状態」に保持してＳ４４０に進むが、スクロール可能領域内である場合は、Ｓ４２５で、処理状態として「スクロール状態」を保持する。そして、Ｓ４３５で、移動距離および移動方向に従い、画像スクロールを描画して、Ｓ４４０に進む。即ち、メニューリスト画像３１を、移動方向へ、移動距離に応じた長さだけスクロールさせる。Ｓ４４０では、移動先の指示座標（ＸＮ，ＹＮ）を前回指示座標（Ｘ０，Ｙ０）としてＲＡＭ１３に記憶する。
【００７６】
Ｓ４１５で、処理状態が「方向決定待ち状態」または「押下または方向決定待ち状態」ではないと判断した場合は、Ｓ４４５で、処理状態が「スクロール状態」であるか否か判断する。ここでスクロール状態でない場合はＳ４６０に進むが、スクロール状態である場合は、Ｓ４５０で、Ｓ４２０と同様、移動先の指示座標（ＸＮ，ＹＮ）がスクロール可能領域内であるか否か判断する。そして、スクロール可能領域内でなければＳ４３０に進むが、スクロール可能領域である場合は、Ｓ４５５で、Ｓ４３５と同様、移動距離および移動方向に従い、画像スクロールを描画して、Ｓ４４０に進む。
【００７７】
一方、ＣＰＵ１１は、図９の横方向処理を開始すると、Ｓ５１０で、今回の移動方向が横方向であるか否か判断する。今回の移動方向が横方向でない場合は、Ｓ５９０に進み、処理状態として「初期状態」を保持するが、今回の移動方向が横方向である場合は、Ｓ５１５で、処理状態が「方向決定待ち状態」または「押下または方向決定待ち状態」であるか否か判断する。
【００７８】
処理状態が「方向決定待ち状態」または「押下または方向決定待ち状態」である場合は、Ｓ５２０で、移動先の指示座標（ＸＮ，ＹＮ）がリスト領域内であるか否か判断する。リスト領域とは、メニューリスト画像３１が表示されている領域全体を意味する。移動先の指示座標（ＸＮ，ＹＮ）がリスト領域内でない場合は、Ｓ５５０で処理状態を「初期状態」に保持してＳ５４０に進むが、リスト領域内である場合は、Ｓ５２５で、移動距離が３０ｄｏｔ以内であるか否か判断する。
【００７９】
移動距離が３０ｄｏｔ以内であれば、Ｓ５３０で、処理状態として「領域変更状態」をＲＡＭ１３に保持する。そしてＳ５３５で、前回指示座標（Ｘ０，Ｙ０）と移動距離と移動方向に従い、各領域の幅を変更して、Ｓ５４０に進む。Ｓ５３５の幅変更はより具体的には、例えば前回指示座標（Ｘ０，Ｙ０）がスクロール専用領域６２内又は共通領域６３内（即ちスクロール領域内）であって移動方向が左方向の場合は、スクロール領域全体およびスクロール領域サイズ変更領域６５を、移動距離に応じた長さだけ左側に拡張する。同時に、押下領域全体および押下領域サイズ変更領域６４を、スクロール領域の拡張幅と同じ幅だけ左側に縮小する。
【００８０】
Ｓ５２５で移動距離が３０ｄｏｔを超えていた場合は、Ｓ５４５で、フリック操作がなされたと判断して、押下領域とスクロール領域を入れ替えて、Ｓ５５０に進む。つまり、左右の位置関係を逆にする。
【００８１】
Ｓ５１５で、処理状態が「方向決定待ち状態」または「押下または方向決定待ち状態」ではないと判断した場合は、Ｓ５５５で、処理状態が「領域変更状態」であるか否か判断する。処理状態が領域変更状態である場合は、Ｓ５６０で、移動先の指示座標（ＸＮ，ＹＮ）がリスト領域内にあるか否か判断し、リスト領域内になければＳ５５０に進むが、リスト領域内にあれば、Ｓ５３５に進み、上述したように各領域の幅を変更する。
【００８２】
Ｓ５５５で、処理状態が「領域変更状態」でないと判断した場合は、Ｓ５６５で、処理状態が「押下領域変更待ち状態」であるか否か判断する。処理状態が押下領域変更待ち状態である場合は、Ｓ５７０で、移動先の指示座標（Ｘ０，Ｙ０）が押下領域サイズ変更領域６４内にあるか否か判断し、押下領域サイズ変更領域６４内になければＳ５５０に進むが、押下領域サイズ変更領域６４内にあれば、Ｓ５８５に進む。Ｓ５８５では、前回指示座標（Ｘ０，Ｙ０）と移動距離と移動方向に従い、指示体が接触している領域の幅のみを変更する。Ｓ５７０で肯定判定されてＳ５８５に進んできた場合は、指示体は押下領域サイズ変更領域６４内に接触している。そのため、この場合は押下領域と押下領域サイズ変更領域６４を、移動距離に応じた長さだけ移動方向へと拡張または縮小する。移動方向が右方向ならば拡張、左方向ならば縮小となる。Ｓ５８５の処理の後はＳ５４０に進む。
【００８３】
Ｓ５６５で、処理状態が「押下領域変更待ち状態」でないと判断した場合は、Ｓ５７５で、処理状態が「スクロール領域変更待ち状態」であるか否か判断する。処理状態がスクロール領域変更待ち状態でなければＳ５５０に進む。処理状態がスクロール領域変更待ち状態である場合は、Ｓ５８０で、移動先の指示座標（Ｘ０，Ｙ０）がスクロール領域サイズ変更領域６５内にあるか否か判断し、スクロール領域サイズ変更領域６５内になければＳ５５０に進むが、スクロール領域サイズ変更領域６５内にあれば、Ｓ５８５に進む。Ｓ５８０で肯定判定されてＳ５８５に進んできた場合は、指示体はスクロール領域サイズ変更領域６５内に接触している。そのため、この場合はスクロール領域とスクロール領域サイズ変更領域６５を、移動距離に応じた長さだけ移動方向へと拡張または縮小する。移動方向が左方向ならば拡張、右方向ならば縮小となる。Ｓ５８５の処理の後はＳ５４０に進む。Ｓ５４０では、移動先の指示座標（ＸＮ，ＹＮ）を前回指示座標（Ｘ０，Ｙ０）としてＲＡＭ１３に記憶する。
【００８４】
次に、図５のＳ１５５のリリース処理について、図１０を用いて説明する。ＣＰＵ１１は、図１０のリリース処理を開始すると、Ｓ６１０で、処理状態が「初期状態」ではないか否か判断する。初期状態の場合はＳ６３５に進むが、初期状態でない場合はＳ６１５に進み、処理状態が「押下状態」であるか否か判断する。処理状態が押下状態でない場合はＳ６３０に進むが、処理状態が押下状態である場合はＳ６２０に進み、リリース時の指示座標（ＸＮ，ＹＮ）はタッチ開始時の押下対象のリスト項目画像内にあるか否か判断する。つまり、タッチ開始からリリースまで同じリスト項目画像に指示体が触れていたか否かを判断する。
【００８５】
タッチ開始時とリリース時とで押下対象のリスト項目画像が異なる場合はＳ６３０に進むが、タッチ開始時とリリース時とで押下対象のリスト項目画像が同じである場合は、Ｓ６２５で、押下対象のリスト項目画像に割り当てられた処理（対応処理）を実行する。
【００８６】
Ｓ６３０では、処理状態として「初期状態」をＲＡＭ１３に保持する。Ｓ６３５では、図６のＳ２１５と同じように押下・スクロール領域表示を行う設定になっているか否か判断する。そして、押下・スクロール領域表示を行う設定になっていない場合はリリース処理を終了するが、押下・スクロール領域表示を行う設定になっている場合は、Ｓ６４０で、領域表示（即ち色分け表示）を消去する。
【００８７】
ここまで、図３（ｃ）の画面例に対応した各処理について図４〜図１０を用いて説明したが、図４〜図１０の各処理は、図２や図３（ａ），（ｂ）に例示したような、共通領域のない画面例にも対応できる。即ち、図２等の画面例における押下領域５１を図３（ｃ）の押下専用領域６１として扱い、スクロール領域５２を図３（ｃ）のスクロール専用領域６２として扱えば、図４〜図１０の各処理は図２等の画面例にも対応できる。
【００８８】
以上説明した本実施形態の複合機１は、メニューリスト画像３１が表示されている領域を含む表示領域３０が押下領域とスクロール領域に分けられ、押下領域では指示体の押下操作を受け付け、スクロール領域では指示体の縦方向のドラッグ操作を受け付けるようにしている。そのため、ユーザは、特定のリスト項目画像を選択したい場合は、そのリスト項目画像のうち押下領域内に表示されている部分を押下（接触）することで、確実に対応処理を実行させることができる。一方、メニューリスト画像３１をスクロールさせたい場合は、スクロール領域内で指示体をドラッグ操作させることで、確実にスクロールさせることができる。従って、従来のようにユーザの操作性を悪化させることなく、ユーザが容易に自身の意図した操作結果を得ることができる。
【００８９】
また、横方向のドラッグ操作によって各領域を拡張または縮小させることができる。その際、押下領域およびスクロール領域のうち一方の領域の幅のみ変更させることができるのはもちろん、一方の領域の幅変更に連動して他方の領域の幅も変更させる（一方が拡張されれば他方は縮小させる）こともできる。更に、横方向のフリック操作によって、押下領域とスクロール領域を入れ替えることもできる。そのため、ユーザの操作性・使い勝手をより向上させることができる。
【００９０】
［変形例］
本発明の実施の形態は、上記実施形態に何ら限定されるものではなく、本発明の技術的範囲に属する限り種々の形態を採り得ることはいうまでもない。
【００９１】
例えば、図２（ａ）に例示した初期画面において、各領域５１，５２の幅（境界）をどのように初期設定するかについては種々考えられるが、メニューリスト画像３１を構成する全てのリスト項目画像４１等の各文字列のうち最大文字数に基づいて設定するようにしてもよい。各リスト項目画像４１等の各文字列は左詰めで並んでいる。そこで、最大文字数の文字列の最右端を各領域５１，５２の境界とするのである。
【００９２】
図１１（ａ）は、全てのリスト項目画像の中で、現在表示されている５つのうち上から４番目に表示されているリスト項目画像４４の文字列「Ｄ…」の文字数（９文字）が最も多く、よって、その９文字目の右側が境界に設定されている例を示している。また、図１１（ｂ）は、全てのリスト項目画像の中で、現在表示されている５つのうち上から２番目に表示されているリスト項目画像４２の文字列「Ｂ…」の文字数（５文字）が最も多く、よって、その５文字目の右側が境界に設定されている例を示している。
【００９３】
図１１（ｃ）は、全てのリスト項目画像の中で、現在表示されている５つのうち下から１番目に表示されているリスト項目画像４５の文字列「Ｅ…」の文字数（１５文字）が最も多い。そのため、その１５文字目の右側を境界に設定するようにしてもよい。しかし、文字数が多くなればなるほど、スクロール領域５２の幅が小さくなり、スクロールさせる際のドラッグ操作に影響が出るおそれがある。そこで、そのようなおそれをなくすために、最大文字数の上限（領域確保用文字数。例えば１２文字。）を設定しておき、最大文字数を超えてさらに押下領域５１が広がらないように設定するとよい。図１１（ｃ）は、最大文字数が１５文字と、上限の１２文字を超えている。そのため、上限の１２文字目の右側が境界に設定されている。つまり、押下領域５１の幅は最大でも１２文字分の幅に制限される。
【００９４】
このように文字数に応じて各領域５１，５２の境界を初期設定する機能を実現するために複合機１のＣＰＵ１１が実行する自動領域決定処理を、図１２を用いて説明する。ＣＰＵ１１は、初期画面を表示させる際にこの自動領域決定処理を開始すると、まずＳ７１０で、今回リスト表示する各リスト項目画像の文字数のうち最大文字数を取得する。Ｓ７１５で、その取得した最大文字数が領域確保用文字数を超えるか否か判断し、超えている場合は、Ｓ７２０で、押下領域５１の終端（即ち境界となる右端）決定の基準を、領域確保用文字数に設定し、超えていない場合は、Ｓ７２５で、押下領域５１の終端決定の基準を最大文字数に設定する。そして、Ｓ７３０で、設定した終端決定基準に従って、スクロール領域５２と押下領域５１の境界を設定する。
【００９５】
このように、文字数に応じて各領域５１，５２の境界を初期設定することで、初期画面において、押下領域５１を文字数に応じた必要十分な大きさに設定することができ、その分、スクロール領域５２をより大きく設定することができる。そのため、ユーザの操作性をより向上させることができる。
【００９６】
また、上記実施形態では、押下領域とスクロール領域を視覚的に区別する方法として、両者を色分けする方法を示したが、色分けする方法はあくまでも一例であって、他の方法を採用してもよい。例えば、図１３（ａ）に示すように、「押下」の文字および範囲を示す矢印からなる押下領域指定画像７１と、「スクロール」の文字および範囲を示す矢印からなるスクロール領域指定画像７２を表示させることで、各領域の境界を視覚的に区別できるようにしてもよい。
【００９７】
また、上記実施形態では、上下方向に配列されたメニューリスト画像３１をその上下方向にスクロールさせることが可能な例を示したが、本発明は、図１３（ｂ）に例示したような、横方向にリスト項目画像８１，８２，８３，８４・・・を配列して横方向にスクロールさせるよう構成されたメニューリスト画像８６に対しても適用することができる。図１３（ｂ）の例では、メニューリスト画像８６全体のうちおおよそ下半分が押下領域９１に設定され、上半分がスクロール領域９２に設定されている。
【００９８】
また、本発明の適用は、複合機のＵＩに限らず、複数のオブジェクト画像が配列されてなるリスト画像をそのリスト画像上で押下又はスクロールさせることが可能に構成されたあらゆるＵＩに対して適用することができる。
【符号の説明】
【００９９】
１…複合機、１１…ＣＰＵ、１２…ＲＯＭ、１３…ＲＡＭ、１４…画像読取部、１５…画像形成部、１６…操作パネル部、１７…ネットワーク通信部、２１…液晶ディスプレイ、２２…タッチパネル、２３…内照式表示部、３０…表示領域、３１，８６…メニューリスト画像、３２…スクロール位置表示バー、４１〜４５，８１〜８４…リスト項目画像、５１，９１…押下領域、５２，９２…スクロール領域、６１…押下専用領域、６２…スクロール専用領域、６３…共通領域、６４…押下領域サイズ変更領域、６５…スクロール領域サイズ変更領域、７１…押下領域指定画像、７２…スクロール領域指定画像
【図１】
2014056395.tif 000003
【図４】
2014056395.tif 000004
【図５】
2014056395.tif 000005
【図６】
2014056395.tif 000006
【図７】
2014056395.tif 000007
【図８】
2014056395.tif 000008
【図９】
2014056395.tif 000009
【図１０】
2014056395.tif 000010
【図１２】
2014056395.tif 000011
【図２】
2014056395.tif 000012
【図３】
2014056395.tif 000013
【図１１】
2014056395.tif 000014
【図１３】
2014056395.tif 000015