(57)【要約】【課題】入力フォームにおいて表示される入力候補を容易に選択可能な仕組みを提供すること。【解決手段】入力フォーム上で第１の方向または第２の方向に対してスライド操作がなされると、入力フォームに表示する入力候補データを構成する文字列で区切られるブロックごとに入力候補データの選択を受け付ける。第１の方向にスライド操作がなされると、第１ブロックの文字列が選択でき、第２の方向にスライド操作がなされると、第２ブロックの文字列が選択できる。【選択図】図７
2014063486.tif 000002
【特許請求の範囲】
【請求項１】
所定の文字列から成るブロックに区切ることの可能な複数の入力候補データを記憶する記憶手段と通信可能に接続される情報処理装置であって、
前記入力候補データを表示する入力フォームにおいて、ユーザからのスライド操作を受け付けるスライド操作受付手段と、
前記スライド操作受付手段で受け付けたスライド操作のスライド方向を検知するスライド方向検知手段と、
前記スライド方向検知手段で検知したスライド方向に応じて、前記文字列を選択可能に表示するブロックを切り替える切替手段と、
前記切替手段で切り替えられたブロックの文字列を前記記憶手段に記憶された入力候補データから抽出する抽出手段と、
前記抽出手段で抽出された文字列の選択を受け付ける選択受付手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記スライド方向検知手段で検知したスライド方向が第１の方向である場合に前記切替手段で切り替えられるブロックと、前記スライド方向検知手段で検知したスライド方向が第２の方向である場合に前記切替手段で切り替えられるブロックとが異なるブロックであることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記切替手段は、前記スライド操作された指の数に応じた複数のブロックを切り替えることを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記選択受付手段は、前記スライド方向検知手段で検知したスライド方向が第１の方向であった場合に、前記抽出手段で抽出された文字列の選択を受け付け、
前記切替手段は、前記スライド方向検知手段で検知したスライド方向が第２の方向であった場合に、前記文字列を選択可能に表示するブロックを切り替えることを特徴とする請求項１に記載の情報処理装置。
【請求項５】
前記情報処理装置は、
前記入力フォームでスライド操作すべきスライド方向を通知する通知手段を更に備えることを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記抽出手段は、前記切替手段で切り替えられたブロックの文字列を、前記選択受付手段で選択を受け付けた文字列を含む入力候補データから抽出することを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
前記抽出手段は、既に前記切替手段で切り替えられたブロックの文字列を前記入力候補データから抽出済みであった場合には、抽出を行わないことを特徴とする請求項１乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
所定の文字列から成るブロックに区切ることの可能な複数の入力候補データを記憶する記憶手段と通信可能に接続される情報処理装置の制御方法であって、
前記情報処理装置のスライド操作受付手段が、前記入力候補データを表示する入力フォームにおいて、ユーザからのスライド操作を受け付けるスライド操作受付ステップと、
前記情報処理装置のスライド方向検知手段が、前記スライド操作受付ステップで受け付けたスライド操作のスライド方向を検知するスライド方向検知ステップと、
前記情報処理装置の切替手段が、前記スライド方向検知ステップで検知したスライド方向に応じて、前記文字列を選択可能に表示するブロックを切り替える切替ステップと、
前記情報処理装置の抽出手段が、前記切替ステップで切り替えられたブロックの文字列を前記記憶手段に記憶された入力候補データから抽出する抽出ステップと、
前記情報処理装置の選択受付手段が、前記抽出ステップで抽出された文字列の選択を受け付ける選択受付ステップと
を備えることを特徴とする情報処理装置の制御方法。
【請求項９】
所定の文字列から成るブロックに区切ることの可能な複数の入力候補データを記憶する記憶手段と通信可能に接続される情報処理装置の制御方法を実行可能なプログラムであって、
前記情報処理装置を、
前記入力候補データを表示する入力フォームにおいて、ユーザからのスライド操作を受け付けるスライド操作受付手段と、
前記スライド操作受付手段で受け付けたスライド操作のスライド方向を検知するスライド方向検知手段と、
前記スライド方向検知手段で検知したスライド方向に応じて、前記文字列を選択可能に表示するブロックを切り替える切替手段と、
前記切替手段で切り替えられたブロックの文字列を前記記憶手段に記憶された入力候補データから抽出する抽出手段
前記抽出手段で抽出された文字列の選択を受け付ける選択受付手段と
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力フォームにおける複数の入力候補の表示に関し、特にユーザの望む入力候補を素早く入力させることの可能な情報処理装置、その制御方法、及びプログラムに関する。
【背景技術】
【０００２】
従来、様々なアプリケーションやＷｅｂページにおいて文字列を入力するための入力フォームが設けられている。この入力フォームに入力された文字列は、アプリケーションで利用するデータとして登録されたり、Ｗｅｂページの検索に用いられたりしている。
【０００３】
入力フォームに対する入力は、ユーザがキーボードやマウスといった入力装置を用いて行う。よって、繰り返し入力を行ったり、長い文字列を入力したりすることは、ユーザにとって非常に煩わしいものであった。特に、企業の業務アプリケーションでよく利用される部門コードや科目コードといった記号や数字の羅列を入力する際には、ユーザが誤入力を起こしやすかった。
【０００４】
そこで従来、例えば下記の特許文献１に示すような仕組みが提案されている。下記の特許文献１では、あらかじめＷｅｂページごとによく使用されているキーワード（出現頻度の高いキーワード）を記憶しておき、ユーザから検索キーワードが入力された時に、記憶されたキーワードから関連するものを出現頻度の高い順に表示する仕組みが開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１２−１４２０８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記の特許文献１に示すように、ユーザが途中まで入力したキーワードを手掛かりに、ユーザがその後入力するキーワードを予測表示する仕組み（サジェスト機能）によって、ユーザが望む入力候補を素早くかつ正確に入力させることができるようになる。
【０００７】
しかしながら、上記のような仕組みはユーザが何かキーワードを入力する度に、予測処理を行うため、情報処理装置に負荷がかかってしまう。特に会計処理を行う業務アプリケーションのような場合、熟練のユーザは入力したい文字列やコードを覚えているため、入力の度に予測表示がなされると、逆に情報処理装置の処理負荷によって入力処理に遅れが出てしまうことになる。そのため、入力したい文字列がわからない場合には、別ウィンドウで入力候補の検索を行い、ユーザがその検索結果一覧から選択した入力候補を入力フォームに入力するような仕組みを採用している場合が多い。
【０００８】
このような仕組みの場合、慣れていないユーザは、検索結果として表示された入力候補の中から入力したい文字列を探していく必要がある。よって、入力候補が多すぎると探す作業に時間がかかってしまい、効率が悪い。特に、会計処理を行う業務アプリケーションでは、科目コードや会社コードといった様々な入力コードが存在し、それぞれが大量の入力候補を保持するため、コード体系によっては検索結果が大量にヒットしてしまう問題がある。会計処理を行う業務アプリケーションでは、特に迅速な入力が求められるため、情報処理装置の負荷を軽減しつつ、効率的な入力を行わせる必要がある。
【０００９】
本発明は上記の課題を鑑みてなされたもので、入力フォームにおいて表示される入力候補データを容易に選択可能な仕組みを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記の目的を達成するために、本発明の情報処理装置は、所定の文字列から成るブロックに区切ることの可能な複数の入力候補データを記憶する記憶手段と通信可能に接続される情報処理装置であって、前記入力候補データを表示する入力フォームにおいて、ユーザからのスライド操作を受け付けるスライド操作受付手段と、前記スライド操作受付手段で受け付けたスライド操作のスライド方向を検知するスライド方向検知手段と、前記スライド方向検知手段で検知したスライド方向に応じて、前記文字列を選択可能に表示するブロックを切り替える切替手段と、前記切替手段で切り替えられたブロックの文字列を前記記憶手段に記憶された入力候補データから抽出する抽出手段と、前記抽出手段で抽出された文字列の選択を受け付ける選択受付手段とを備えることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、スライド方向に応じて入力候補データを構成する文字列を選択可能に表示するブロックを切り替えることが可能となるので、ブロックごとに入力候補データを構成する文字列の選択を行うことができ、以ってユーザが望む入力候補を素早く入力させることのできる効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施例における情報処理システム１００の一例を示す構成図である。
【図２】図１に示す情報処理装置１０１及びサーバ１０２のハードウェア構成の一例を示す構成図である。
【図３】図１に示す情報処理装置１０１及びサーバ１０２のモジュール構成の一例を示す構成図である。
【図４】本発明の実施例における一連の処理の流れを示すフローチャートである。
【図５】図４のステップＳ４３５及びステップＳ４５５の前の項目を取得処理の詳細を示すフローチャートである。
【図６】図４のステップＳ４４０及びステップＳ４６０の次の項目を取得処理の詳細を示すフローチャートである。
【図７】リスト入力部品に対して所定の操作がなされた場合の一例を示す模式図である。
【図８】参照画面８００の一例を示す模式図である。
【図９】ユーザマスタ画面９００の一例を示す模式図である。
【図１０】表示順設定画面１０００の一例を示す模式図である。
【図１１】情報処理装置１０１に記憶された各種テーブルの構成の一例を示す構成図である。
【図１２】本発明の第２の実施例における一連の処理の流れを示すフローチャートである。
【図１３】図１２のステップＳ１２０７の第１ブロック選択処理の詳細を示すフローチャートである。
【図１４】図１２のステップＳ１２１１の第２ブロック選択処理の詳細を示すフローチャートである。
【図１５】図１２のステップＳ１２０８の第１ブロック再選択処理の詳細を示すフローチャートである。
【図１６】情報処理装置１０１に記憶された入力候補リスト１６００の構成の一例を示す構成図である。
【図１７】第１ブロックと第２ブロックの振り分け例と、第１ブロックと第２ブロックの入力候補を抽出した場合の一例を示す模式図である。
【図１８】第１の方向にスライド操作があった場合の一例を示す模式図である。
【図１９】第２の方向にスライド操作があった場合の一例を示す模式図である。
【図２０】第２ブロックまで選択されている状態で第１の方向にスライド操作があった場合の一例を示す模式図である。
【図２１】本発明の第３の実施例における一連の処理の流れを示すフローチャートである。
【図２２】図２１のステップＳ２１１４の第２の入力モード処理の詳細を示すフローチャートである。
【図２３】第３の実施例における入力候補リスト１６００の構成の一例を示す構成図である。
【図２４】第３の実施例における、第１ブロックと第２ブロックの振り分け例と、第１ブロックと第２ブロックの入力候補を抽出した場合の一例を示す模式図である。
【図２５】図２１のステップＳ２１１５の第３の入力モード処理の詳細を示すフローチャートである。
【図２６】第３の実施例における、第３の入力モードの概要を示す模式図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照して、本発明の実施の形態の一例について説明する。
【００１４】
図１は、本発明の情報処理システム１００のシステム構成の一例を示す図である。本発明の情報処理システム１００は、情報処理装置１０１、サーバ１０２が設置されており、それら装置はＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等のネットワーク１０３を介して相互にデータ通信可能に接続されている。図１のネットワーク１０３上に接続される各種端末あるいはサーバの構成は一例であり、用途や目的に応じて様々な構成例がある。
【００１５】
情報処理装置１０１は、業務アプリケーションを実行する装置である。業務アプリケーションは後述する図２のＲＯＭ２０２または外部メモリ２１１に記憶されており、ユーザからの指示に応じて、ＣＰＵ２０１がＲＡＭ２０３に読み出して各種動作を行う。
【００１６】
業務アプリケーションは、ユーザからの操作に応じて、各種データの登録や管理を行う。具体的には会計業務に必要なデータやコードの登録や管理である。本実施例では会計業務に特化した業務アプリケーションとして説明を行うが、これに限らない。生産管理であっても人事給与であってもよい。尚、業務アプリケーションで利用する各種データは、情報処理装置１０１の外部メモリ２１１に記憶されているものとして説明を行うが、これに限らない。
【００１７】
サーバ１０２は、情報処理装置１０１で登録された各種データを記憶管理するための装置である。業務アプリケーションで登録される各種データは、複数のユーザによって登録、管理される場合があり、その場合にはサーバ１０２で登録された各種データを一元管理する。本実施例では、各種データは情報処理装置１０１で管理されているものとして説明を行う。
【００１８】
尚、情報処理装置１０１が、サーバ１０２の構成を含んでもよいし、サーバ１０２が情報処理装置１０１の構成を含んでもよい。装置の構成はこれに限らない。
【００１９】
図２は、本発明の実施形態における各種端末のハードウェア構成を示す図である。
【００２０】
ＣＰＵ２０１は、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。
【００２１】
また、ＲＯＭ２０２あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ(Ｂａｓｉｃ  Ｉｎｐｕｔ  ／  ＯｕｔｐｕｔＳｙｓｔｅｍ)やオペレーティングシステムプログラム（以下、ＯＳ）や、各サーバ或いは各ＰＣの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。ＲＡＭ２０３は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。
【００２２】
ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＡＭ２０３にロードして、プログラムを実行することで各種動作を実現するものである。
【００２３】
また、入力コントローラ（入力Ｃ）２０５は、キーボード２０９や不図示のマウス等のポインティングデバイスからの入力を制御する。
【００２４】
ビデオコントローラ（ＶＣ）２０６は、ＣＲＴディスプレイ（ＣＲＴ）２１０等の表示器への表示を制御する。表示器はＣＲＴだけでなく、液晶ディスプレイでも構わない。これらは必要に応じて管理者が使用するものである。
【００２５】
メモリコントローラ（ＭＣ）２０７は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク（ＨＤ）やフレキシブルディスク或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるカード型メモリ等の外部メモリ２１１へのアクセスを制御する。
【００２６】
通信Ｉ／Ｆコントローラ（通信Ｉ／ＦＣ）２０８は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いたインターネット通信等が可能である。
【００２７】
尚、ＣＰＵ２０１は、例えばＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ＣＲＴ２１０上での表示を可能としている。また、ＣＰＵ２０１は、ＣＲＴ２１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【００２８】
本発明の情報処理装置１０１が後述する各種処理を実行するために用いられる各種プログラム等は外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０３にロードされることによりＣＰＵ２０１によって実行されるものである。さらに、本発明に係わるプログラムが用いる定義ファイルや各種情報テーブルは外部メモリ２１１に格納されている。
【００２９】
次に、情報処理装置１０１及びサーバ１０２のモジュール構成を示す機能構成図について、図３を用いて説明する。尚、図３の各種端末あるいはサーバのモジュール構成は一例であり、用途や目的に応じて様々な構成例がある。
【００３０】
情報処理装置１０１は、記憶モジュール３０１、画面表示モジュール３０２、テーブル管理モジュール３０３、第１の指示受付モジュール３０４、第２の指示受付モジュール３０５、第１の指示再受付モジュール３０６を備える。
【００３１】
記憶モジュール３０１（記憶手段）は、情報処理装置１０１の業務アプリケーションによって作成された各種データを記憶するモジュールである。特に会計処理を行い業務アプリケーションにおいては、科目コードや部門コード、仕訳データといった会計処理に必要な各種データが記憶モジュール３０１で記憶される。記憶モジュール３０１によって記憶された各種データは、情報処理装置１０１の外部メモリ２１１等に記憶され、必要に応じて、記憶モジュール３０１によって読みだされる。
【００３２】
画面表示モジュール３０２は、各種情報を情報処理装置１０１のＣＲＴ２１０に表示させるためのモジュールである。特に、後述する第１の指示受付モジュール３０４や、第２の指示受付モジュール３０５、第１の指示再受付モジュール３０６によって受け付けた入力候補を所定の表示形態で表示させる。
【００３３】
テーブル管理モジュール３０３は、後述する図１１の会計部門マスタ１４２０やユーザマスタ１４３０、コード使用履歴マスタ１４４０、図１６の入力候補リスト１６００の記憶や更新等を行うためのモジュールである。各種テーブルは、外部メモリ２１１に記憶され、必要に応じてＲＡＭ２０３に読み出す。
【００３４】
第１の指示受付モジュール３０４（第１の指示受付手段）は、画面表示モジュール３０２によって表示された入力フォーム（リスト入力部品）に対して、所定の方向、例えば垂直方向（上下方向）に対する入力指示を受け付けるモジュールである。垂直方向に対する入力指示を受け付けた場合には、所定の表示順で入力候補を表示したり、入力候補の一部分を抽出して選択を受け付けたりさせる。
【００３５】
第２の指示受付モジュール３０５（第２の指示受付手段）は、画面表示モジュール３０２によって表示された入力フォーム（リスト入力部品）に対して、第１の指示受付モジュール３０４とは異なる所定の方向、例えば水平方向（左右方向）に対する入力指示を受け付けるモジュールである。水平方向に対する入力指示を受け付けた場合には、第１の指示受付モジュール３０４とは異なる所定の表示順で入力候補を表示したり、第１の指示受付モジュール３０４とは異なる入力候補の一部分を抽出して選択を受け付けたりさせる。
【００３６】
第１の指示再受付モジュール３０６は、画面表示モジュール３０２によって表示された入力フォーム（リスト入力部品）に対して、入力候補が表示されている状態で再度所定の方向、例えば垂直方向に対する入力指示を受け付けるモジュールである。再度入力を受け付けると、第１の指示受付モジュール３０４で入力を受け付けた場合と同様の動作を行う。
【００３７】
サーバ１０２は、記憶モジュール３１１を備える。記憶モジュール３１１は、前述した情報処理装置１０１の記憶モジュール３０１と同様である。情報処理装置１０１に業務アプリケーションで使用する各種データを記憶管理させる場合には情報処理装置１０１の記憶モジュール３０１を利用し、サーバ１０２に業務アプリケーションで使用する各種データを記憶管理させる場合にはサーバ１０２の記憶モジュール３１１を利用する。本実施例では、情報処理装置１０１の記憶モジュール３０１を利用するものとして説明を行う。
【００３８】
次に、本発明の実施例における情報処理装置１０１によって行われる一連の処理について、図４に示すフローチャートを用いて説明する。尚、ステップＳ４０１乃至ステップＳ４５３の各ステップは情報処理装置１０１におけるＣＰＵ２０１の制御の下、処理が行われる。
【００３９】
また、この処理を情報処理装置１０１に実行させるためのプログラムは、情報処理装置１０１にインストールされている業務アプリケーションの一部、若しくはアドオンプログラムとして用意されていてもよいし、業務アプリケーションとは別にインストールされたプログラムとして用意されていてもよい。
【００４０】
ステップＳ４０１では、情報処理装置１０１のＣＰＵ２０１は、情報処理装置１０１に記憶された業務アプリケーションを起動し、ユーザからの指示に応じてログインを実行する。このとき、図１１に示すユーザマスタ１４３０のユーザＩＤ１４３１が入力され、所定のボタンの押下を検知することでログインするものとする。
【００４１】
ユーザマスタ１４３０（図１１参照）は、ユーザＩＤ１４３１、ユーザ名１４３２、コード表示順１４３３から構成される。ユーザＩＤ１４３１は、ユーザごとに一意に割り振られた識別情報である。ユーザ名１４３２は、ユーザの名前を示す情報である。コード表示順１４３３は、後述する処理において使用する入力候補の表示順を示す設定情報である。コード表示順１４３３は、図９に示すユーザマスタ編集画面９００の表示順設定ボタン１２０１が押下された場合に表示される表示順設定画面１３００（図１０参照）でユーザから設定された表示順を当該ユーザのコード表示順１４３３に格納しておく。ユーザマスタ編集画面９００及び表示順設定画面１３００の構成はこれに限らない。他の設定画面があってもよいし、他の方法でもよい。
【００４２】
ステップＳ４０５では、情報処理装置１０１のＣＰＵ２０１は、ユーザマスタ１４３０からコード表示順１４３３を取得し、ＲＡＭ２０３に記憶しておく。
【００４３】
ステップＳ４１０では、情報処理装置１０１のＣＰＵ２０１は、ユーザからの選択を検知して、どの入力画面を起動すべきなのかを決定する。そして、ステップＳ４１５では、ステップＳ４１０で選択された入力画面を起動する。ここで入力画面とは、図７に示すようなリスト入力部品を備えた画面のことである。リスト入力部品とは参照ボタン６０２が押下されると図８に示すような入力候補のリストが表示され、その中から対象項目を選択可能な部品である。
【００４４】
ステップＳ４２０では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ４１５で表示された入力画面に備えられたリスト入力部品上で、ユーザからの操作によって、スライド操作を検知する。スライド操作とは、いわゆるドラッグ操作と同様である。マウスをクリックされた状態で当該マウスを移動された場合にはスライド操作と判定される。本実施例では、リスト入力部品上をスタート地点として、スライド操作がなされたか否かを検知する。尚、本実施例ではマウスを用いたスライド操作について説明を行うが、タッチパネルを備えた装置であれば、タッチパネルに指がタッチされたまま移動したか否かを検知する。いわゆるフリック操作がなされたかどうかを検知することになる。
【００４５】
ステップＳ４２５では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ４２０で検知したスライド操作の操作方向が上下（垂直方向）なのか、左右（水平方向）なのかを判定する。上下（垂直方向）であると判定された場合には、ステップＳ４３０に処理を進め、左右（水平方向）であると判定された場合には、ステップＳ４４５に処理を進める。
【００４６】
ステップＳ４３０では、情報処理装置１０１のＣＰＵ２０１は、続いてステップＳ４２０で検知したスライド操作の操作方向が上であるのか、下であるのかを判定する。上であると判定された場合には、ステップＳ４３５に処理を進め、下であると判定された場合には、ステップＳ４４０に処理を進める。
【００４７】
ステップＳ４３５では、情報処理装置１０１のＣＰＵ２０１は、リスト入力部品に表示する１つ前の入力候補を取得するための処理を行う。前の項目を取得処理の詳細は、後述する図５に示す。
【００４８】
ステップＳ４４０では、情報処理装置１０１のＣＰＵ２０１は、リスト入力部品に表示する１つ後の入力候補を取得するための処理を行う。次の項目を取得処理の詳細は、後述する図６に示す。
【００４９】
ステップＳ４４５では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ４０５で取得したコード表示順１４３３に基づいて、入力候補として表示する会計部門マスタ１４２０を並び替える。「使用回数順」であれば、コード使用履歴マスタ１４４０の使用回数１４４４を参照して使用回数が多い順に並び替え、「最新使用順」であれば、コード使用履歴マスタ１４４０の最終入力日付１４４５を参照して、最近使用した順番に並び替え、「名称順」であれば、会計部門マスタ１４２０の部門名１４２３を参照して、名前順に並び替える。こうすることで、上下（垂直方向）にスライド操作された場合と、左右（水平方向）にスライド操作された場合で異なる順序で入力候補を表示させることができる。
【００５０】
会計部門マスタ１４２０（図１１参照）は、会社コード１４２１、部門コード１４２２、部門名１４２３から構成される。会社コード１４２１は、会社ごとに一意に割り振られる識別情報である。部門コード１４２２（入力候補データ）は、部門ごとに一意に割り振られる識別情報である。部門名１４２３は、部門の名称を示す情報である。
【００５１】
また、コード使用履歴マスタ１４４０（図１１参照）は、ユーザＩＤ１４４１、対象１４４２、コード１４４３、使用回数１４４４、最終入力日付１４４５から構成される。ユーザＩＤ１４４１は、ユーザマスタ１４３０のユーザＩＤ１４３１と同一である。対象１４４２は、対象となるマスタを定義した情報である。コード１４４３は、会計部門マスタ１４２０の部門コード１４２２と同一である。使用回数１４４４は、コード１４４３がユーザによって設定された回数を示す情報である。最終入力日付１４４５は、コード１４４３を最後に使用した年月日を記憶する情報である。
【００５２】
ステップＳ４５０では、情報処理装置１０１のＣＰＵ２０１は、続いてステップＳ４２０で検知したスライド操作の操作方向が左であるのか、右であるのかを判定する。左であると判定された場合には、ステップＳ４５５に処理を進め、右であると判定された場合には、ステップＳ４６０に処理を進める。
【００５３】
ステップＳ４５５では、情報処理装置１０１のＣＰＵ２０１は、リスト入力部品に表示する１つ前の入力候補を取得するための処理を行う。前の項目を取得処理の詳細は、後述する図５に示す。
【００５４】
ステップＳ４６０では、情報処理装置１０１のＣＰＵ２０１は、リスト入力部品に表示する１つ後の入力候補を取得するための処理を行う。次の項目を取得処理の詳細は、後述する図６に示す。
【００５５】
ステップＳ４５０では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ４３５、ステップＳ４４０、ステップＳ４５５、ステップＳ４６０のいずれかで取得した項目をリスト入力部品に出力する。そして、ステップＳ４５１では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ４１５で表示された入力画面に備えられた登録ボタンが押下されたか否かを判定し、登録ボタンが押下された場合には、ステップＳ４５２に処理を進め、そうでない場合には、登録ボタンが押下されるまで待機する。
【００５６】
ステップＳ４５２では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ４５１で登録ボタンが押下されたと判定されると、ステップＳ４５０で表示された項目を所定のデータベース等に登録する。
【００５７】
そして、ステップＳ４５３では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ４５２で登録された項目をコード使用履歴マスタ１４４０に登録する。つまり、使用履歴として登録しておくことで、次回以降の表示順に利用する。
【００５８】
次に、前の項目を取得処理について図５を用いて説明する。尚、ステップＳ５０１乃至ステップＳ５２０の各ステップは情報処理装置１０１おけるＣＰＵ２０１の制御の下、処理が行われる。
【００５９】
また、この処理を情報処理装置１０１に実行させるためのプログラムは、情報処理装置１０１にインストールされている業務アプリケーションの一部、若しくはアドオンプログラムとして用意されていてもよいし、業務アプリケーションとは別にインストールされたプログラムとして用意されていてもよい。
【００６０】
まず、ステップＳ５０１では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ４１５で表示されたリスト入力部品に既に入力候補（項目）が設定済みであるか否かを判定する。つまり、リスト入力部品が空欄ではなく、ユーザから入力されている状態または選択されている状態か否かを判定する。既に項目が設定済みであると判定された場合には、ステップＳ５０５に処理を進め、項目が設定されていないと判定された場合には、ステップＳ５２５に処理を進める。
【００６１】
ステップＳ５０５では、情報処理装置１０１のＣＰＵ２０１は、既に入力設定されている項目の順番を取得する。具体的には、既に入力されている項目を取得し、それが会計部門マスタ１４２０のどのコードに該当するのかを特定し、当該特定された位置（順番）を保持しておく。尚、会計部門マスタ１４２０は、ステップＳ４４５で処理が実行されていれば、ユーザごとに設定された表示順でソートされている状態である。よって、ステップＳ４３５とステップＳ４５５ではステップＳ５０５で特定する位置が異なってくる。
【００６２】
ステップＳ５１０では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ５０５で取得した位置（順番）が最初、つまり会計部門マスタ１４２０の先頭であるか否かを判定する。ステップＳ５０５で取得した位置が最初であると判定された場合には、ステップＳ５１５に処理を進め、そうでない場合には、ステップＳ５２０に処理を進める。
【００６３】
ステップＳ５１５では、情報処理装置１０１のＣＰＵ２０１は、会計部門マスタ１４２０に格納された項目のうち、最後の項目を取得する。つまり、現在項目として入力されている状態の項目は会計部門マスタ１４２０の先頭に位置しているので、それよりも前の項目が存在しない。よって、最後尾である会計部門マスタ１４２０の最後の項目を取得するようにする。こうすることで、スライド操作に応じてドラム状に項目を選択させることが可能となる。
【００６４】
一方、ステップＳ５２０では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ５０５で特定した位置よりも１つ前の項目を会計部門マスタ１４２０から取得する。例えば、図１１に示す会計部門マスタ１４２０のうち、「１２１００」が入力された状態でスライド操作（上方向にスライド）がなされて、１つ前の項目を取得する場合には、「１１６００」が取得される。つまり、図７の操作例８０１に示すような状態になる。また、例えば使用回数順で会計部門マスタ１４２０がソートされていた場合には、「１２１００」が入力された状態でスライド操作（左方向にスライド）がなされると、使用回数順でソートしたときの1つ前である「１１５００」が取得される。つまり、図７の操作例１００１に示すような状態になる。
【００６５】
ステップＳ５０１で項目が設定済みでないと判定された場合には、ステップＳ５２５では、情報処理装置１０１のＣＰＵ２０１は、会計部門マスタ１４２０に格納された項目のうち、最後の項目を取得する。つまり、現在はまったく入力されていない状態なので、前の項目として会計部門マスタ１４２０に格納された項目のうち、最後の項目を取得する。
【００６６】
次に、次の項目を取得処理について図６を用いて説明する。尚、ステップＳ５５０乃至ステップＳ５７５の各ステップは情報処理装置１０１おけるＣＰＵ２０１の制御の下、処理が行われる。
【００６７】
また、この処理を情報処理装置１０１に実行させるためのプログラムは、情報処理装置１０１にインストールされている業務アプリケーションの一部、若しくはアドオンプログラムとして用意されていてもよいし、業務アプリケーションとは別にインストールされたプログラムとして用意されていてもよい。
【００６８】
まず、ステップＳ５５０では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ４１５で表示されたリスト入力部品に既に入力候補（項目）が設定済みであるか否かを判定する。つまり、リスト入力部品が空欄ではなく、ユーザから入力されている状態または選択されている状態か否かを判定する。既に項目が設定済みであると判定された場合には、ステップＳ５５５に処理を進め、項目が設定されていないと判定された場合には、ステップＳ５７５に処理を進める。
【００６９】
ステップＳ５５５では、情報処理装置１０１のＣＰＵ２０１は、既に入力設定されている項目の順番を取得する。具体的には、既に入力されている項目を取得し、それが会計部門マスタ１４２０のどのコードに該当するのかを特定し、当該特定された位置（順番）を保持しておく。尚、会計部門マスタ１４２０は、ステップＳ４４５で処理が実行されていれば、ユーザごとに設定された表示順でソートされている状態である。よって、ステップＳ４３５とステップＳ４５５ではステップＳ５５５で特定する位置が異なってくる。
【００７０】
ステップＳ５６０では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ５５５で取得した位置（順番）が最後、つまり会計部門マスタ１４２０の末尾であるか否かを判定する。ステップＳ５５５で取得した位置が最後であると判定された場合には、ステップＳ５６５に処理を進め、そうでない場合には、ステップＳ５７０に処理を進める。
【００７１】
ステップＳ５６５では、情報処理装置１０１のＣＰＵ２０１は、会計部門マスタ１４２０に格納された項目のうち、最初の項目を取得する。つまり、現在項目として入力されている状態の項目は会計部門マスタ１４２０の末尾に位置しているので、それよりも後の項目が存在しない。よって、会計部門マスタ１４２０の先頭の項目を取得するようにする。こうすることで、スライド操作に応じてスロットのリールを回すような感覚で項目を順次選択させることが可能となる。
【００７２】
一方、ステップＳ５７０では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ５５５で特定した位置よりも１つ次の項目を会計部門マスタ１４２０から取得する。例えば、図１１に示す会計部門マスタ１４２０のうち、「１２１００」が入力された状態でスライド操作（下方向にスライド）がなされて、１つ後の項目を取得する場合には、「１２２００」が取得される。つまり、図７の操作例７０１に示すような状態になる。また、例えば使用回数順で会計部門マスタ１４２０がソートされていた場合には、「１２１００」が入力された状態でスライド操作（右方向にスライド）がなされると、使用回数順でソートしたときの1つ次である「１１１００」が取得される。つまり、図７の操作例９０１に示すような状態になる。
【００７３】
ステップＳ５５０で項目が設定済みでないと判定された場合には、ステップＳ５７５では、情報処理装置１０１のＣＰＵ２０１は、会計部門マスタ１４２０に格納された項目のうち、最初の項目を取得する。つまり、現在はまったく入力されていない状態なので、次の項目として会計部門マスタ１４２０に格納された項目のうち、最初の項目を取得する。
【００７４】
このようにして、上下のような第１の方向と、左右のような第２の方向のそれぞれにおいて、異なる表示順で入力候補を表示するようにすることで、よりユーザに対して柔軟な選択を提供することが可能となる。
【００７５】
次に、第２の実施例について説明を行う。前述した実施例では、入力候補の表示を指示した方向によって、当該入力候補の表示順を変える仕組みについて説明したが、第２の実施例では、入力候補の文字列を２つのブロックに分けて、第１の方向と第２の方向でそれぞれブロックの入力候補を選択する仕組みについて説明する。
【００７６】
第２の実施例におけるシステム構成、ハードウェア構成、及びモジュール構成は、前述した実施例を同様であるので、説明を省略する。
【００７７】
次に、本発明の第２の実施例における情報処理装置１０１によって行われる一連の処理について、図１２に示すフローチャートを用いて説明する。尚、ステップＳ１２０１乃至ステップＳ１２１３の各ステップは情報処理装置１０１におけるＣＰＵ２０１の制御の下、処理が行われる。
【００７８】
また、この処理を情報処理装置１０１に実行させるためのプログラムは、情報処理装置１０１にインストールされている業務アプリケーションの一部、若しくはアドオンプログラムとして用意されていてもよいし、業務アプリケーションとは別にインストールされたプログラムとして用意されていてもよい。
【００７９】
まず、ステップＳ１２０１では、情報処理装置１０１のＣＰＵ２０１は、情報処理装置１０１に記憶された業務アプリケーションを起動し、ユーザからの指示に応じてログインを実行する。
【００８０】
ステップＳ１２０３では、情報処理装置１０１のＣＰＵ２０１は、ユーザからの指示に応じて入力画面を表示させる。第２の実施例についても入力画面とは、図７に示すようなリスト入力部品を備えた画面のことである。リスト入力部品とは参照ボタン６０２が押下されると図８に示すような入力候補のリストが表示され、その中から対象項目を選択可能な部品である。
【００８１】
ステップＳ１２０４では、情報処理装置１０１のＣＰＵ２０１は、ユーザからの入力操作を受け付ける（スライド操作受付手段）。具体的には、マウス等の入力デバイスからの操作を受け付ける状態にする。
【００８２】
ステップＳ１２０５では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１２０４で受け付けた操作が第１の方向にスライド操作するものだったか否かを判定する（スライド方向検知手段、切替手段）。例えば、垂直方向（上下）を第１の方向とした場合に、垂直方向にスライド操作がなされたか否かを判定することになる。第１の方向にスライド操作するものであった場合には、ステップＳ１２０６に処理を進め、そうでない場合には、ステップＳ１２０９に処理を進める。
【００８３】
ステップＳ１２０６では、情報処理装置１０１のＣＰＵ２０１は、入力候補を構成するブロックのうち、第２ブロックが既に選択済みか否かを判定する。第２の実施例では、図１７のブロック分割例１７２０に示すように、入力候補のデータを複数のブロックに分けて選択できるようにしている。第２の実施例では、入力候補を２つのブロックに分けて、それぞれ第１ブロック、第２ブロックと呼ぶことにする。本ステップでは、既に第２ブロックまで選択状態済みか否かを判定するため、リスト入力部品に表示された入力候補を参照して、第２のブロックまで選択されているかどうかを判定する。第２ブロックが選択済みであると判定された場合には、ステップＳ１２０８に処理を進め、そうでないと判定された場合には、ステップＳ１２０７に処理を進める。
【００８４】
ステップＳ１２０７では、情報処理装置１０１のＣＰＵ２０１は、入力候補を構成するブロックのうち、第１ブロックを選択するための処理を行う。第１ブロック選択処理の詳細は、後述する図１３に示す。
【００８５】
一方、ステップＳ１２０８では、情報処理装置１０１のＣＰＵ２０１は、既に第２ブロックまで選択が完了している状態でもう一度第１の方向にスライド操作がなされたので、第１ブロックの再選択（再表示）を行う。第１ブロック再選択処理の詳細は、後述する図１５に示す。
【００８６】
ステップＳ１２０９では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１２０４で受け付けた操作が第２の方向にスライド操作するものだったか否かを判定する（スライド方向検知手段、切替手段）。例えば、水平方向（左右）を第２の方向とした場合に、水平方向にスライド操作がなされたか否かを判定することになる。第２の方向にスライド操作するものであった場合には、ステップＳ１２１０に処理を進め、そうでない場合には、ステップＳ１２１２に処理を進める。
【００８７】
ステップＳ１２１０では、情報処理装置１０１のＣＰＵ２０１は、入力候補を構成するブロックのうち、第１ブロックが既に選択済みか否かを判定する。第１ブロックが選択済みであると判定された場合には、ステップＳ１２１１に処理を進め、そうでないと判定された場合には、ステップＳ１２０４に処理を戻す。ステップＳ１２０４に処理を戻す場合には、「先に第１ブロックを選択してください。」といったエラーメッセージを表示してから、処理を戻してもよい。
【００８８】
ステップＳ１２１１では、情報処理装置１０１のＣＰＵ２０１は、入力候補を構成するブロックのうち、第２ブロックを選択するための処理を行う。第２ブロック選択処理の詳細は、後述する図１４に示す。
【００８９】
ステップＳ１２１２では、情報処理装置１０１のＣＰＵ２０１は、入力画面に備えられた入力確定ボタンが押下されたか否かを検知する。入力確定ボタンが押下された場合には、ステップＳ１２１３に処理を進め、そうでない場合には、ステップＳ１２０４に処理を戻す。
【００９０】
ステップＳ１２１３では、情報処理装置１０１のＣＰＵ２０１は、リスト入力部品に表示された入力候補を所定のデータベース等に登録し、処理を終了する。
【００９１】
次に、第１ブロック選択処理について図１３を用いて説明する。尚、ステップＳ１３０１乃至ステップＳ１３１４の各ステップは情報処理装置１０１おけるＣＰＵ２０１の制御の下、処理が行われる。
【００９２】
また、この処理を情報処理装置１０１に実行させるためのプログラムは、情報処理装置１０１にインストールされている業務アプリケーションの一部、若しくはアドオンプログラムとして用意されていてもよいし、業務アプリケーションとは別にインストールされたプログラムとして用意されていてもよい。
【００９３】
ステップＳ１３０１では、情報処理装置１０１のＣＰＵ２０１は、図１６に示す入力候補リスト１６００から第１ブロックだけを集約した第１ブロックリストを作成する（抽出手段）。入力候補リスト１６００の入力コード１６０１に格納されたデータを抽出し、第１ブロックに相当する部分、つまりハイフンよりも前の部分を抽出する。そして、抽出したデータの重複分を消し込みし、結果、図１７の第１ブロックリスト１７００に示すようなリストを作成する。重複分を消し込むことができるので、入力候補リスト１６００に記載された入力候補の数よりも少ない数となり、ユーザが探しやすい状態になる。
【００９４】
入力候補リスト１６００（図１６参照）は、入力コード１６０１（入力候補データ）、コード名称１６０２から構成される。入力コード１６０１は、リスト入力部品に表示する入力候補である。入力コード１６０１は、所定の文字列から成る複数のブロックに区切ることが可能である。コード名称１６０２は、入力コード１６０１に対応する入力候補の名称である。
【００９５】
ステップＳ１３０２では、情報処理装置１０１のＣＰＵ２０１は、既に第１ブロックが選択中であるか否かを判定する。既に第１ブロックが選択中であると判定された場合には、ステップＳ１３０３に処理を進め、そうでない場合には、ステップＳ１３０５に処理を進める。
【００９６】
ステップＳ１３０３では、情報処理装置１０１のＣＰＵ２０１は、既に選択中の第１ブロックのデータを特定する。そして、ステップＳ１３０４では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１３０３で特定されたデータを、入力候補を表示する開始位置に設定する。具体的には、ステップＳ１３０１で作成された第１ブロックリストのうち、ステップＳ１３０３で特定されたデータと一致するデータの位置を特定し、その位置をスライド指示に応じて表示する入力候補の開始位置とする。
【００９７】
一方、ステップＳ１３０５では、情報処理装置１０１のＣＰＵ２０１は、第１ブロックがまだ選択されていないので、第１ブロックリストの先頭レコードをスライド指示に応じて表示する入力候補の開始位置とする。
【００９８】
ステップＳ１３０６では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１２０４で受け付けたスライド方向を特定する。ここでは第１の方向は垂直方向として説明しているので、上または下のどちらにスライドされたのかを特定することになる。また、ステップＳ１３０７では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１２０４で受け付けたスライド操作が行われた距離と速度を特定する。これらは後述するステップＳ１３０９及びステップＳ１３１２で使用する。
【００９９】
ステップＳ１３０８では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１３０６で特定されたスライド方向が上なのか下なのかを判定する。第２の実施例では、第１の方向を垂直方向としているため、上下の判定となっているが、第１の方向を水平方向とした場合には左右の判定となる。つまり、ステップＳ１３０４またはステップＳ１３０５で設定された開始位置よりも前の入力候補を表示する指示がなされたのか、後ろの入力候補を表示する指示がなされたのかを判定している。第２の実施例では、下の場合には前の入力候補、上の場合には後ろの入力候補を表示する指示とみなす。ステップＳ１３０６で特定されたスライド方向が下であると判定された場合には、ステップＳ１３０９に処理を進め、ステップＳ１３０６で特定されたスライド方向が上であると判定された場合には、ステップＳ１３１２に処理を進める。
【０１００】
ステップＳ１３０９では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１３０７で特定されたスライド距離と速度が一定以上であるか否かを判定する。第２の実施例では両方ともが一定以上である場合のみ正と判定されるが、片方だけでもよい。ステップＳ１３０７で特定されたスライド距離と速度が一定以上であると判定された場合には、ステップＳ１３１０に処理を進め、ステップＳ１３０７で特定されたスライド距離と速度が一定以上でないと判定された場合には、ステップＳ１３１１に処理を進める。
【０１０１】
ステップＳ１３１０では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１３０４またはステップＳ１３０５で特定された開始位置より後の入力候補を第１ブロックリスト１７００から取得し、リスト入力部品に表示して、選択状態にさせる（選択受付手段）。特にステップＳ１３１０では、後述するステップＳ１３１１で表示される入力候補よりも遠くの入力候補を表示して、選択状態にさせる。例えば、「２０１０ＨＯＫＫＡＩＤＯ」を開始位置としてスライド操作がなされた場合には、「２０１０ＨＯＫＫＡＩＤＯ」よりも後の入力候補を表示する。この時にステップＳ１３１１で表示されるものが「２０１０ＫＡＮＴＯ」だった場合には、これよりも後、つまり「２０１０ＫＩＮＫＩ」や「２０１１ＨＯＫＫＡＩＤＯ」等を表示させる。ステップＳ１３０９でスライドした距離や速度が一定以上であるので、勢いよくかつ長い距離をスライドされたので、開始位置よりも遠くの入力候補を表示させることで、直観的な選択を提供する。
【０１０２】
一方、ステップＳ１３１１では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１３０４またはステップＳ１３０５で特定された開始位置より後の入力候補を第１ブロックリスト１７００から取得し、リスト入力部品に表示して、選択状態にさせる（選択受付手段）。特にステップＳ１３１１では、前述したステップＳ１３１０で表示される入力候補よりも近くの入力候補を表示して、選択状態にさせる。
【０１０３】
図１８に示すように、リスト入力部品の上で上方向にスライド操作がなされた場合、第１ブロックリストを生成し、入力候補のデータをスライドさせる。開始位置が「２０１０ＨＯＫＫＡＩＤＯ」であるので、その1つ後の「２０１０ＫＡＮＴＯ」が選択される。このスライド操作の距離や速度が一定以上なら、「２０１０ＫＩＮＫＩ」や「２０１１ＨＯＫＫＡＩＤＯ」等が選択される。このようにスロットのリールを回すような感覚で入力候補を順次選択することができる。
【０１０４】
ステップＳ１３１２では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１３０９と同様にステップＳ１３０７で特定されたスライド距離と速度が一定以上であるか否かを判定する。第２の実施例では両方ともが一定以上である場合のみ正と判定されるが、片方だけでもよい。ステップＳ１３０７で特定されたスライド距離と速度が一定以上であると判定された場合には、ステップＳ１３１３に処理を進め、ステップＳ１３０７で特定されたスライド距離と速度が一定以上でないと判定された場合には、ステップＳ１３１４に処理を進める。
【０１０５】
ステップＳ１３１３では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１３０４またはステップＳ１３０５で特定された開始位置より前の入力候補を第１ブロックリスト１７００から取得し、リスト入力部品に表示して、選択状態にさせる（選択受付手段）。特にステップＳ１３１３では、後述するステップＳ１３１４で表示される入力候補よりも遠くの入力候補を表示して、選択状態にさせる。
【０１０６】
一方、ステップＳ１３１４では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１３０４またはステップＳ１３０５で特定された開始位置より前の入力候補を第１ブロックリスト１７００から取得し、リスト入力部品に表示して、選択状態にさせる（選択受付手段）。特にステップＳ１３１４では、前述したステップＳ１３１３で表示される入力候補よりも近くの入力候補を表示して、選択状態にさせる。以上のようにすることで、まずは第１ブロックを選択させる。
【０１０７】
次に、第２ブロック選択処理について図１４を用いて説明する。尚、ステップＳ１４０１乃至ステップＳ１４１６の各ステップは情報処理装置１０１おけるＣＰＵ２０１の制御の下、処理が行われる。
【０１０８】
また、この処理を情報処理装置１０１に実行させるためのプログラムは、情報処理装置１０１にインストールされている業務アプリケーションの一部、若しくはアドオンプログラムとして用意されていてもよいし、業務アプリケーションとは別にインストールされたプログラムとして用意されていてもよい。
【０１０９】
ステップＳ１４０１では、情報処理装置１０１のＣＰＵ２０１は、選択中の第１ブロックのデータを特定する。前述した第１ブロック選択処理や後述する第１ブロック再選択処理で選択されている第１ブロックの入力候補を特定する。
【０１１０】
ステップＳ１４０２では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１４０１で特定されたデータに基づいて、第２ブロックリストを生成する。例えば、ステップＳ１４０１で特定されたデータが「２０１０ＫＡＮＴＯ」だった場合には、第１ブロックが「２０１０ＫＡＮＴＯ」となっているデータの第２ブロックを抽出して、図１７に示すような第２ブロックリスト１７１０を生成する。尚、第２の実施例では、第１ブロックのデータも合わせた形で第２ブロックリスト１７１０を生成しているが、第２ブロックのデータだけでもよい。つまり、図１７で言えば「ＳＨＩＩＲＥ０１」「ＳＨＩＩＲＥ０２」「ＳＨＩＩＲＥ０３」の３つが格納された第２ブロックリスト１７１０でもよい。
【０１１１】
ステップＳ１４０３では、情報処理装置１０１のＣＰＵ２０１は、既に第２ブロックが選択中であるか否かを判定する。既に第２ブロックが選択中であると判定された場合には、ステップＳ１４０４に処理を進め、そうでない場合には、ステップＳ１４０６に処理を進める。
【０１１２】
ステップＳ１４０４では、情報処理装置１０１のＣＰＵ２０１は、既に選択中の第２ブロックのデータを特定する。そして、ステップＳ１４０５では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１４０４で特定されたデータを、入力候補を表示する開始位置に設定する。具体的には、ステップＳ１４０２で作成された第２ブロックリストのうち、ステップＳ１４０４で特定されたデータと一致するデータの位置を特定し、その位置をスライド指示に応じて表示する入力候補の開始位置とする。
【０１１３】
一方、ステップＳ１４０６では、情報処理装置１０１のＣＰＵ２０１は、第２ブロックがまだ選択されていないので、第２ブロックリストの先頭レコードをスライド指示に応じて表示する入力候補の開始位置とする。
【０１１４】
ステップＳ１４０７では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１２０４で受け付けたスライド方向を特定する。ここでは第２の方向は水平方向として説明しているので、左または右のどちらにスライドされたのかを特定することになる。また、ステップＳ１４０８では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１２０４で受け付けたスライド操作が行われた距離と速度を特定する。これらは後述するステップＳ１４１０及びステップＳ１４１３で使用する。
【０１１５】
ステップＳ１４０９では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１４０７で特定されたスライド方向が左なのか右なのかを判定する。第２の実施例では、第１の方向を水平方向としているため、左右の判定となっているが、第２の方向を垂直方向とした場合には上下の判定となる。つまり、ステップＳ１４０５またはステップＳ１４０６で設定された開始位置よりも前の入力候補を表示する指示がなされたのか、後ろの入力候補を表示する指示がなされたのかを判定している。第２の実施例では、右の場合には前の入力候補、左の場合には後ろの入力候補を表示する指示とみなす。ステップＳ１４０７で特定されたスライド方向が右であると判定された場合には、ステップＳ１４１０に処理を進め、ステップＳ１４０７で特定されたスライド方向が左であると判定された場合には、ステップＳ１４１３に処理を進める。
【０１１６】
ステップＳ１４１０では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１４０８で特定されたスライド距離と速度が一定以上であるか否かを判定する。第２の実施例では両方ともが一定以上である場合のみ正と判定されるが、片方だけでもよい。ステップＳ１４０８で特定されたスライド距離と速度が一定以上であると判定された場合には、ステップＳ１４１１に処理を進め、ステップＳ１４０８で特定されたスライド距離と速度が一定以上でないと判定された場合には、ステップＳ１４１２に処理を進める。
【０１１７】
ステップＳ１４１１では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１４０５またはステップＳ１４０６で特定された開始位置より後の入力候補を第２ブロックリスト１７１０から取得し、リスト入力部品に表示して、選択状態にさせる。特にステップＳ１４１１では、後述するステップＳ１４１２で表示される入力候補よりも遠くの入力候補を表示して、選択状態にさせる。例えば、「２０１０ＫＡＮＴＯ−ＳＨＩＩＲＥ０１」を開始位置としてスライド操作がなされた場合には、「２０１０ＫＡＮＴＯ−ＳＨＩＩＲＥ０１」よりも後の入力候補を表示する。この時にステップＳ１４１２で表示されるものが「２０１０ＫＡＮＴＯ−ＳＨＩＩＲＥ０２」だった場合には、これよりも後、つまり「２０１０ＫＡＮＴＯ−ＳＨＩＩＲＥ０３」等を表示させる。ステップＳ１４１０でスライドした距離や速度が一定以上であるので、勢いよくかつ長い距離をスライドされたので、開始位置よりも遠くの入力候補を表示させることで、直観的な選択を提供する。
【０１１８】
一方、ステップＳ１４１２では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１４０５またはステップＳ１４０６で特定された開始位置より後の入力候補を第２ブロックリスト１７１０から取得し、リスト入力部品に表示して、選択状態にさせる。特にステップＳ１４１２では、前述したステップＳ１４１１で表示される入力候補よりも近くの入力候補を表示して、選択状態にさせる。
【０１１９】
図１９に示すように、リスト入力部品の上で第１ブロックが選択された状態で左方向にスライド操作がなされた場合、第２ブロックリストを生成し、入力候補のデータをスライドさせる。その結果、「２０１０ＫＡＮＴＯ−ＳＨＩＩＲＥ０１」が選択される。
【０１２０】
ステップＳ１４１３では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１４１０と同様にステップＳ１４０８で特定されたスライド距離と速度が一定以上であるか否かを判定する。第２の実施例では両方ともが一定以上である場合のみ正と判定されるが、片方だけでもよい。ステップＳ１４０８で特定されたスライド距離と速度が一定以上であると判定された場合には、ステップＳ１４１４に処理を進め、ステップＳ１４０８で特定されたスライド距離と速度が一定以上でないと判定された場合には、ステップＳ１４１５に処理を進める。
【０１２１】
ステップＳ１４１４では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１４０５またはステップＳ１４０６で特定された開始位置より前の入力候補を第２ブロックリスト１７１０から取得し、リスト入力部品に表示して、選択状態にさせる。特にステップＳ１４１４では、後述するステップＳ１４１５で表示される入力候補よりも遠くの入力候補を表示して、選択状態にさせる。
【０１２２】
一方、ステップＳ１４１５では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１４０５またはステップＳ１４０６で特定された開始位置より前の入力候補を第２ブロックリスト１７１０から取得し、リスト入力部品に表示して、選択状態にさせる。特にステップＳ１４１５では、前述したステップＳ１４１４で表示される入力候補よりも近くの入力候補を表示して、選択状態にさせる。以上のようにすることで、第２ブロックを選択させる。
【０１２３】
そして、ステップＳ１４１６では、情報処理装置１０１のＣＰＵ２０１は、第２ブロックまで選択がなされたので、対応する入力候補のコード名称１６０２を入力候補リスト１６００から取得して、表示させる。コードだけだとわかりにくいため、第２ブロックまで選択されて入力候補が一意に特定できるようになった段階で、コード名称１６０２を表示する。
【０１２４】
このように第１の方向にスライドさせることで第１ブロックの選択を受け付け、その後に第２の方向にスライドさせることで、第１ブロックで選択済みの入力候補に関連する第２ブロックの選択が可能となる。これにより、入力候補リスト１６００のように多くの入力候補が一覧表示されるよりも誤入力を防ぎつつ、柔軟な入力方法を提供することができる。
【０１２５】
次に、第１ブロック再選択処理について図１５を用いて説明する。尚、ステップＳ１５０１乃至ステップＳ１５１３の各ステップは情報処理装置１０１おけるＣＰＵ２０１の制御の下、処理が行われる。
【０１２６】
また、この処理を情報処理装置１０１に実行させるためのプログラムは、情報処理装置１０１にインストールされている業務アプリケーションの一部、若しくはアドオンプログラムとして用意されていてもよいし、業務アプリケーションとは別にインストールされたプログラムとして用意されていてもよい。
【０１２７】
まず、ステップＳ１５０１では、情報処理装置１０１のＣＰＵ２０１は、前述したステップＳ１４１６で表示されたコード名称１６０２を非表示とする。第１ブロック再選択処理では、第２ブロックまで選択されているものを再び第１ブロックから選択し直すため、このような処理を実行している。
【０１２８】
ステップＳ１５０２では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１３０１と同様に、図１６に示す入力候補リスト１６００から第１ブロックだけを集約した第１ブロックリストを作成する。
【０１２９】
ステップＳ１５０３では、情報処理装置１０１のＣＰＵ２０１は、既に選択中の第１ブロックのデータを特定する。そして、ステップＳ１５０４では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１５０３で特定されたデータを、入力候補を表示する開始位置に設定する。具体的には、ステップＳ１５０２で作成された第１ブロックリストのうち、ステップＳ１５０３で特定されたデータと一致するデータの位置を特定し、その位置をスライド指示に応じて表示する入力候補の開始位置とする。
【０１３０】
ステップＳ１５０５では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１２０４で受け付けたスライド方向を特定する。ここでは第１の方向は垂直方向として説明しているので、上または下のどちらにスライドされたのかを特定することになる。また、ステップＳ１５０６では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ１２０４で受け付けたスライド操作が行われた距離と速度を特定する。これらは後述するステップＳ１５０８及びステップＳ１５１１で使用する。
【０１３１】
ステップＳ１５０７乃至ステップＳ１５１３の各ステップは、前述したステップＳ１３０８乃至ステップＳ１３１４と同様であるので説明を省略する。
【０１３２】
図２０に示すように、第２ブロックまで選択された状態でリスト入力部品の上で上方向にスライド操作がなされた場合、第１ブロックから再選択を行うために第１ブロックリストを生成し、入力候補のデータをスライドさせる。選択済みの第１ブロックは「２０１０ＫＡＮＴＯ」であるので、ここを開始位置としてその1つ後の「２０１０ＫＩＮＫＩ」が選択される。このスライド操作の距離や速度が一定以上なら、「２０１１ＨＯＫＫＡＩＤＯ」や「２０１１ＫＡＮＴＯ」等が選択される。このようにスロットのリールを回すような感覚で入力候補を順次選択することができる。
【０１３３】
以上のようにして、第１の方向と第２の方向にスライド指示を行うと、それぞれ異なるブロックを選択させることができるので、大量の入力候補から１つ１つ探していくよりも効率的に入力候補を選択することが可能となる。
【０１３４】
次に、第３の実施例について説明を行う。第３の実施例では、入力フォームに対する入力のモード（以下、入力モード）を複数備え、あらかじめユーザから設定された入力モードで情報処理装置１０１を動作させる仕組みについて説明を行う。第３の実施例では、３つの入力モードを備えており、第１の入力モードは、前述した第２の実施例と同様に、入力候補データを２つのブロックに分けて、第１の方向と第２の方向でそれぞれ異なるブロックの入力候補を選択する入力モードである。第２の入力モードは、スライド操作された際の指の本数に応じて、入力候補データを構成する複数のブロックから第１のブロックを形成し、当該第１のブロックの入力候補を選択する入力モードである。第３の入力モードは、第１の方向にスライド操作された場合に、入力候補データを構成するブロックごとに入力候補の選択を可能とし、第２の方向にスライド操作された場合に、次のブロックの入力候補の選択に移行する入力モードである。このように、複数の入力モードを持たせることにより、ユーザはもっとも入力しやすい入力モードを選択し、効率的にデータ入力を行うことができるようになる。
【０１３５】
第３の実施例におけるシステム構成、ハードウェア構成、及びモジュール構成は、前述した実施例を同様であるので、説明を省略する。尚、第３の実施例においては、情報処理装置１０１は、ＣＲＴ２１０にタッチパネルを備えており、このタッチパネルに対するユーザからのタッチ操作を受け付ける。タッチパネルは、ユーザからタッチされた位置や、タッチされた指の本数、タッチして移動させるスライド操作の検知、スライド操作された方向や距離、速度といった情報を取得することが可能である。第３の実施形態においては、このタッチパネルに対するタッチ操作を前提として説明を行う。尚、タッチパネルに対するタッチ操作に限らず、情報処理装置１０１に接続されたタッチパッドでもよい。
【０１３６】
次に、本発明の第３の実施例における情報処理装置１０１によって行われる一連の処理について、図２１に示すフローチャートを用いて説明する。尚、ステップＳ２１０１乃至ステップＳ２１１５の各ステップは情報処理装置１０１におけるＣＰＵ２０１の制御の下、処理が行われる。
【０１３７】
また、この処理を情報処理装置１０１に実行させるためのプログラムは、情報処理装置１０１にインストールされている業務アプリケーションの一部、若しくはアドオンプログラムとして用意されていてもよいし、業務アプリケーションとは別にインストールされたプログラムとして用意されていてもよい。
【０１３８】
まず、ステップＳ２１０１では、情報処理装置１０１のＣＰＵ２０１は、情報処理装置１０１に記憶された業務アプリケーションを起動し、ユーザからの指示に応じてログインを実行する。そして、ステップＳ２１０２では、情報処理装置１０１のＣＰＵ２０１は、ユーザからの指示に応じて入力画面を表示させる。第３の実施例における入力画面は、第２の実施例と同様にリスト入力部品を備えている。当該リスト入力部品の上でスライド操作されることにより、入力候補データの選択を行える。
【０１３９】
ステップＳ２１０３では、情報処理装置１０１のＣＰＵ２０１は、入力モードの判定を行う。第３の実施例では、３つの入力モードが存在する。ユーザはどの入力モードで入力候補データの選択を行っていくのかをあらかじめ設定しておき、設定された入力モードが第１の入力モード、第２の入力モード、第３の入力モードのいずれであるかを判定する。尚、リスト入力部品が入力待ち状態になった時に、どの入力モードで入力をするのかを選択させてもよいし、入力モードごとにショートカットキーやジェスチャを設定しておき、当該ショートカットキーやジェスチャが実行された時に、対応する入力モードに切り替えてもよい。ユーザから設定された入力モードが第１の入力モードであると判定された場合には、ステップＳ２１０４に処理を進める。ユーザから設定された入力モードが第２の入力モードであると判定された場合には、ステップＳ２１１４に処理を進める。ユーザから設定された入力モードが第３の入力モードであると判定された場合には、ステップＳ２１１５に処理を進める。
【０１４０】
第１の入力モードであると判定された場合には、ステップＳ２１０４乃至ステップＳ２１１３の処理を実行する。ステップＳ２１０４乃至ステップＳ２１１３の各ステップは、前述した図１２のステップＳ１２０４乃至ステップＳ１２１３と同様であるので、説明を省略する。
【０１４１】
第２の入力モードであると判定された場合、ステップＳ２１１４では、情報処理装置１０１のＣＰＵ２０１は、第２の入力モードで入力候補データを選択するための処理を実行する。第２の入力モード処理の詳細は、後述する図２２に示す。また、第３の入力モードであると判定された場合、ステップＳ２１１５では、情報処理装置１０１のＣＰＵ２０１は、第３の入力モードで入力候補データを選択するための処理を実行する。第３の入力モード処理の詳細は、後述する図２５に示す。以上により、設定された入力モードで入力候補データの選択を行うことができる。
【０１４２】
次に、第２の入力モード処理について図２２を用いて説明する。尚、ステップＳ２２０１乃至ステップＳ２２１６の各ステップは情報処理装置１０１おけるＣＰＵ２０１の制御の下、処理が行われる。
【０１４３】
また、この処理を情報処理装置１０１に実行させるためのプログラムは、情報処理装置１０１にインストールされている業務アプリケーションの一部、若しくはアドオンプログラムとして用意されていてもよいし、業務アプリケーションとは別にインストールされたプログラムとして用意されていてもよい。
【０１４４】
まず、ステップＳ２２０１では、情報処理装置１０１のＣＰＵ２０１は、ユーザからの入力操作を受け付ける。より具体的には、入力候補データの選択を行うリスト入力部品の上でユーザからスライド操作を受け付けたり、スライド操作により選択された入力候補データの確定指示を受け付けたりする。入力候補データの選択を行うためのスライド操作は、垂直方向に対するスライド操作（以下、第１の方向）、または水平方向に対するスライド操作（以下、第２の方向）のいずれかである。尚、第１の方向が水平方向で、第２の方向が垂直方向でもよい。決められたスライド方向を検知できればどのような方向であってもよい。
【０１４５】
ステップＳ２２０２では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ２２０１で受け付けた入力操作が、第１の方向に対するスライド操作であるか否かを判定する。第１の方向に対するスライド操作であると判定された場合には、ステップＳ２２０３に処理を進める。第１の方向に対するスライド操作でないと判定された場合には、ステップＳ２２１０に処理を進める。
【０１４６】
ステップＳ２２０３では、情報処理装置１０１のＣＰＵ２０１は、第１ブロックリストが未生成であるか否かを判定する。第１ブロックリストとは、第１の方向に対してスライド操作された場合に、リスト入力部品に対して選択可能に表示する入力候補の一覧である。第２の実施例と同様に、第３の実施例においても入力候補データである入力コード１６０１を第１ブロックと第２ブロックに分けて、ユーザに選択させる。つまり、第１の方向で選択可能となる第１ブロックの入力候補の一覧が第１ブロックリストである。
【０１４７】
第３の実施例においても、前述した第２の実施例と同様に、リスト入力部品において入力候補を表示し、ユーザはスロットマシンのリールを回転させるように、入力候補を選択できる。そのため、第１の方向に対して何度かスライド操作を行う。そのスライド操作が行われる度に、第１ブロックリストを生成するのは、情報処理装置１０１に負荷がかかってしまうので、第１ブロックリストが未生成の場合、つまり初めて第１の方向にスライド操作がなされた場合には、第１ブロックリストを生成する。そうでない場合には、すでに第１ブロックリストが生成されているので、これを利用する。こうすることで、情報処理装置１０１の処理負荷を軽減することができる。第１ブロックリストが未生成であると判定された場合には、ステップＳ２２０４に処理を進める。第１ブロックリストが未生成でない、つまり生成済みであると判定された場合には、ステップＳ２２０７に処理を進める。
【０１４８】
ステップＳ２２０４では、情報処理装置１０１のＣＰＵ２０１は、情報処理装置１０１にあらかじめ記憶された入力候補リストを取得する。入力候補リストは、前述した図１６に示すものと同様であるが、第３の実施例では、図２３に示す入力候補リスト１６００を利用するものとする。
【０１４９】
ステップＳ２２０５では、情報処理装置１０１のＣＰＵ２０１は、第１の方向にスライド操作された指の本数を特定する。タッチパネルでは、タッチされた位置の数を検知することができるので、これによってスライド操作された指の本数を特定する。
【０１５０】
ステップＳ２２０６では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ２２０５で特定された指の本数に応じて、第１ブロックリストを生成する。例えば、特定された指の本数が２本であった場合には、入力コード１６０１に格納された入力候補データの前から２ブロック分を抽出し、第１ブロックリストを生成する。
【０１５１】
図２３と図２４を用いて、ステップＳ２２０６の処理を説明する。まず、入力候補データである図２３に示す入力コード１６０１は、ハイフンによって区切られた４つのブロックで構成されている。本実施例では、ハイフンでブロックを分けているが、ハイフン以外の記号であってもよいし、文字数によって区切ってもよい。入力コード１６０１のコード体系によってブロックの区切り方は変わってくるので、区切り方は特に問わない。例えば、図２３の入力候補リスト１６００の１レコード目にある「２０１０−ＨＯＫＫＡＩＤＯ−ＳＨＩＩＲＥ−０１」は、「２０１０−」、「ＨＯＫＫＡＩＤＯ−」、「ＳＨＩＩＲＥ−」、「０１」という４つのブロックから構成されている。
【０１５２】
ユーザは、最初に選択したいブロックの数に対応する指の本数で、リスト入力部品上でスライド操作を行う。２ブロック分の入力候補を選択したい場合には２本、３ブロック分の入力候補を選択したい場合には３本となる。図２４の２４００は、２本の指で垂直方向（第１の方向）にスライド操作された場合を示している。２本の指でスライド操作されたので、入力コード１６０１に格納された入力候補データの先頭から２ブロック分を第１ブロックとする。そして、それ以外の残りの部分（図２４では３ブロック目と４ブロック目）を第２ブロックとする。そして、第１ブロックとされた２ブロック分を入力コード１６０１に格納された入力候補データから抽出し、図２４の第１ブロックリスト２４０２に示すような形態で格納することで、第１ブロックリスト２４０２を生成する。また抽出された文字列に重複するものがある場合には、重複分を格納しないようにする。前述したステップＳ１３０１と同様である。
【０１５３】
図２２の説明に戻る。ステップＳ２２０７では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ２２０６で生成された第１ブロックリスト２４０２を取得する。そして、ステップＳ２２０８では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ２２０１で受け付けたスライド操作のスライドの距離に応じて、ステップＳ２２０７で取得した第１ブロックリスト２４０２に格納される入力候補の表示を切り替える。前述した通り、入力候補をスロットマシンのリールのように回転させることで入力候補を順次表示する。そのため、すでに表示中の入力候補がある場合には、その入力候補を開始点とし、第１ブロックリスト２４０２に格納された入力候補を順次表示する。例えば、図２４に示す第１ブロックリスト２４０２の「２０１０−ＨＯＫＵＲＩＫＵ」が表示されている状態で、第１の方向にスライド操作がなされると、先頭レコードの「２０１０−ＨＯＫＫＡＩＤＯ」ではなく、「２０１０−ＨＯＫＵＲＩＫＵ」の次のレコードである「２０１１−ＨＯＫＫＡＩＤＯ」が表示される。また、スライドの距離に応じてリールの回転速度を変更する。このように第１ブロックリスト２４０２に格納された入力候補を表示することで、ユーザに第１ブロックの入力候補を選択させる。
【０１５４】
ステップＳ２２０９では、情報処理装置１０１のＣＰＵ２０１は、第２ブロックの選択をユーザに促すために、第２の方向に対してスライド操作をするよう通知する。通知の方法はどのような方法でもよい。例えば、第１ブロックリスト２４０２の入力候補を選択したリスト入力部品の左右に第２の方向を示す矢印のマークを表示することで、ユーザに通知してもよいし、第２の方向にスライド操作をした場合に表示される入力候補をリスト入力部品の左右に表示してもよい。これらの通知の表示例を図２４の２４０４に示す。２４０５に示す部分を表示することで、ユーザに対して第２の方向にスライド操作をするように通知している。２４０５に示す、第２ブロックの入力候補は、現在選択されている第１ブロックの入力候補に基づいて表示されている。つまり、２４０４の例では、「２０１０−ＨＯＫＫＡＩＤＯ−」が第１ブロックの入力候補として選択されているので、この「２０１０−ＨＯＫＫＡＩＤＯ−」を含む入力候補データを入力候補リスト１６００の入力コード１６０１から特定し、特定された入力候補データの第２ブロックに相当する文字列を抽出する。そして、スライド操作された場合に表示する入力候補として、２４０５に示すように表示する。こうすることで、ユーザは水平方向にもスライド操作をする必要があることを認識させることができる。ステップＳ２２０９の処理が終了したら、ステップＳ２２０２に処理を戻す。
【０１５５】
ステップＳ２２１０では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ２２０１で受け付けた入力操作が、第２の方向に対するスライド操作であるか否かを判定する。第２の方向に対するスライド操作であると判定された場合には、ステップＳ２２１１に処理を進める。第２の方向に対するスライド操作でないと判定された場合には、ステップＳ２２１５に処理を進める。
【０１５６】
ステップＳ２２１１では、情報処理装置１０１のＣＰＵ２０１は、第２ブロックリストが未生成であるか否かを判定する。第２ブロックリストは、第１ブロックリストで抽出されなかった他のブロックの入力候補の一覧である。第２のブロックリストも第１ブロックリストと同様に、スライド操作によって何度か選択することが考えられる。第２の方向にスライド操作される度に第２ブロックリストが生成されると、情報処理装置１０１に負荷がかかってしまうので、最初に第２の方向にスライド操作されたときだけ、第２ブロックリストを生成するようにする。
【０１５７】
ステップＳ２２１２では、情報処理装置１０１のＣＰＵ２０１は、リスト入力部品で選択済みの第１ブロックの入力候補（以下、選択済みデータ）を取得する。そして、ステップＳ２２１３では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ２２１２で取得した選択済みデータに応じて、第２ブロックリストを生成する。より具体的には、選択済みデータを含む入力コード１６０１を抽出し、抽出された入力コード１６０１の第２ブロックに対応する文字列を第２ブロックの入力候補として第２ブロックリストに格納する。選択済みデータを含む入力コード１６０１を抽出することで、存在しない入力候補データができあがってしまう問題を防ぐことができる。例えば、「２０１０−ＨＯＫＫＡＩＤＯ−」が選択された状態で、「ＳＨＩＩＲＥ−０４」が選択されたとしても、「２０１０−ＨＯＫＫＡＩＤＯ−ＳＨＩＩＲＥ−０４」という入力コード１６０１は図２３に示す入力候補リスト１６００には存在しない。よって、選択済みデータを含む入力コード１６０１を抽出しておくことで、このような問題を防止することができる。また、第１ブロックリストと同様に抽出された文字列に重複がある場合には、重複分は格納しないようにする。
【０１５８】
図２４の２４０１では、第１ブロックの「２０１０−ＨＯＫＫＡＩＤＯ−」がユーザから選択された場合に生成される第２ブロックリスト２４０３を示している。第１ブロックの「２０１０−ＨＯＫＫＡＩＤＯ−」を持つ入力コード１６０１は、図２３の入力候補リスト１６００の先頭３レコードである。よってこれらの第２ブロック（３ブロック目と４ブロック目）を抽出し、第２ブロックリスト２４０３に格納する。すると、「ＳＨＩＩＲＥ−０１」、「ＳＨＩＩＲＥ−０２」、「ＳＩＩＲＥ−０３」の３つが格納されることになる。このようにして、第２ブロックリスト２４０３を生成する。
【０１５９】
ステップＳ２２１４では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ２２０１で受け付けたスライド操作のスライドの距離に応じて、ステップＳ２２１３で取得した第２ブロックリスト２４０３に格納される入力候補の表示を切り替える。ステップＳ２２０８と同様の処理であるが、ステップＳ２２１４では、選択済みデータは残したまま、第２ブロックリスト２４０３に格納される入力候補の表示を切り替えることにより、第２ブロックの入力候補の選択を行わせる。
【０１６０】
ステップＳ２２１５では、情報処理装置１０１のＣＰＵ２０１は、入力画面に備えられた入力確定ボタンが押下されたか否かを検知する。入力確定ボタンが押下された場合には、ステップＳ２２１６に処理を進め、そうでない場合には、ステップＳ２２０２に処理を戻す。
【０１６１】
ステップＳ２２１６では、情報処理装置１０１のＣＰＵ２０１は、リスト入力部品に表示された入力候補データを所定のデータベース等に登録し、処理を終了する。以上のようにして、ユーザはまとめて選択したいブロックの数に対応する指の数で、第１の方向にスライド操作がなされると、当該ブロックの数の入力候補が選択でき、第２の方向にスライド操作がなされると、残りのブロックの入力候補が選択する。これにより、ユーザが１ブロックごとに選択することなく、任意のブロックの数で入力候補の選択を行うことができる。また、まとめて選択するブロックの数をユーザが自由に変更することができる。
【０１６２】
次に、第３の入力モード処理について図２５を用いて説明する。尚、ステップＳ２５０１乃至ステップＳ２５１５の各ステップは情報処理装置１０１おけるＣＰＵ２０１の制御の下、処理が行われる。
【０１６３】
また、この処理を情報処理装置１０１に実行させるためのプログラムは、情報処理装置１０１にインストールされている業務アプリケーションの一部、若しくはアドオンプログラムとして用意されていてもよいし、業務アプリケーションとは別にインストールされたプログラムとして用意されていてもよい。
【０１６４】
まず、第３の入力モードの概要について説明を行う。第３の入力モードは、リスト入力部品でユーザから第１の方向にスライド操作を受け付けることで、入力候補の選択を行い、第２の方向にスライド操作を受け付けることで、入力候補のブロックを切り替えるモードである。例えば、図２６の２６００に示すような体系の入力コード１６０１があった場合、４つのブロックに分けることができる。ユーザは、この４つのブロックごとに入力候補を選択していく。
【０１６５】
まず、図２６の２６０１に示すように、第１の方向である垂直方向にユーザがスライド操作を行うと、入力コード１６０１のうち、１つ目のブロックである第１ブロックに含まれる入力候補の選択が行える。前述した第２の入力モードと同様にスロットマシンのリールのように入力候補を切り替えることが可能である。ユーザは、選択したい入力候補が見つかったら、２６０２に示すように、その状態で水平方向である第２の方向にスライド操作を実行する。すると、２６０３に示すように、入力候補を表示するブロックが、１つ目のブロックである第１ブロックから、２つ目のブロックである第２ブロックに切り替わる。こうした後に再び第１の方向にスライド操作を行うと、第２ブロックの入力候補が選択できる。このようにすることで、ブロックごとに選択を行うことができるので、ユーザは数多くの入力コードから選択したいコードを探す手間を軽減することができるようになる。以下、この説明を行う。
【０１６６】
まず、ステップＳ２５０１では、情報処理装置１０１のＣＰＵ２０１は、ユーザからの入力操作を受け付ける。より具体的には、入力候補データの選択を行うリスト入力部品の上でユーザからスライド操作を受け付けたり、スライド操作により選択された入力候補データの確定指示を受け付けたりする。入力候補データの選択を行うためのスライド操作は、垂直方向に対するスライド操作（以下、第１の方向）、または水平方向に対するスライド操作（以下、第２の方向）のいずれかである。尚、第１の方向が水平方向で、第２の方向が垂直方向でもよい。決められたスライド方向を検知できればどのような方向であってもよい。
【０１６７】
ステップＳ２５０２では、情報処理装置１０１のＣＰＵ２０１は、ユーザからの入力操作を受け付けると、変数ｉに「１」を代入する。そして、ステップＳ２５０３では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ２５０１で受け付けた入力操作が、第１の方向に対するスライド操作であるか否かを判定する。第１の方向に対するスライド操作であると判定された場合には、ステップＳ２５０４に処理を進める。第１の方向に対するスライド操作でないと判定された場合には、ステップＳ２５１０に処理を進める。
【０１６８】
ステップＳ２５０４では、情報処理装置１０１のＣＰＵ２０１は、第ｉブロックリストが未生成であるか否かを判定する。第ｉブロックリストとは、第１の方向に対してスライド操作された場合に、リスト入力部品に対して選択可能に表示する入力候補の一覧である。第３の入力モードでは入力候補データである入力コード１６０１をブロックに分けて、ユーザに選択させる。つまり、第１の方向で選択可能となる第ｉブロックの入力候補の一覧が第ｉブロックリストである。変数ｉに代入された値に応じて、どのブロックのブロックリストを作成するのかが決定される。
【０１６９】
ステップＳ２５０５では、情報処理装置１０１のＣＰＵ２０１は、情報処理装置１０１にあらかじめ記憶された入力候補リストを取得する。入力候補リストは、第３の入力モードにおいても、図２３に示す入力候補リスト１６００を利用するものとする。
【０１７０】
ステップＳ２５０６では、情報処理装置１０１のＣＰＵ２０１は、リスト入力部品で選択済みの選択済みデータを取得する。第３の入力モードにおける選択済みデータは、ｉブロックよりも前のブロックで選択済みのデータである。つまり、現在選択中のブロックが３ブロック目である場合には、１ブロック目と２ブロック目で選択された入力候補を指す
【０１７１】
そして、ステップＳ２５０７では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ２５０６で取得した選択済みデータに応じて、第ｉブロックリストを生成する。より具体的には、選択済みデータを含む入力コード１６０１を抽出し、抽出された入力コード１６０１の第ｉブロックに対応する文字列を第ｉブロックの入力候補として第ｉブロックリストに格納する。選択済みデータを含む入力コード１６０１を抽出することで、存在しない入力候補データができあがってしまう問題を防ぐことができる。また、第ｉブロックリストと同様に抽出された文字列に重複がある場合には、重複分は格納しないようにする。
【０１７２】
第ｉブロックリストが生成されると、ステップＳ２５０８では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ２５０７で生成された第ｉブロックリストを取得し、ステップＳ２５０９では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ２５０１で受け付けたスライド操作のスライドの距離に応じて、ステップＳ２５０８で取得した第ｉブロックリストに格納される入力候補の表示を切り替える。前述した通り、入力候補をスロットマシンのリールのように回転させることで入力候補を順次表示する。そのため、すでに表示中の入力候補がある場合には、その入力候補を開始点とし、第ｉブロックリストに格納された入力候補を順次表示する。
【０１７３】
次に、ステップＳ２５１０では、情報処理装置１０１のＣＰＵ２０１は、ステップＳ２２０１で受け付けた入力操作が、第２の方向に対するスライド操作であるか否かを判定する。第２の方向に対するスライド操作であると判定された場合には、ステップＳ２５１１に処理を進める。第２の方向に対するスライド操作でないと判定された場合には、ステップＳ２５１４に処理を進める。
【０１７４】
ステップＳ２５１１では、情報処理装置１０１のＣＰＵ２０１は、第２の方向（水平方向）の具体的な方向を判定する。つまり、右方向にスライド操作がなされたのか、左方向にスライド操作がなされたのかを判定する。第３の実施例では、第２の方向が水平方向を示すため、右方向または左方向のいずれの方向にスライド操作がなされたのかを判定しているが、これらの方向に限らない。後述するステップＳ２５１２及びステップＳ２５１３で実行される変数ｉの増減を行う方向であればよい。
【０１７５】
ステップＳ２５１２では、情報処理装置１０１のＣＰＵ２０１は、変数ｉに「１」を加算した値を、変数ｉに代入する。つまり、変数ｉをインクリメントする。一方、ステップＳ２５１３では、情報処理装置１０１のＣＰＵ２０１は、変数ｉから「１」を減算した値を、変数ｉに代入する。つまり、変数ｉをデクリメントする。ステップＳ２５１２及びステップＳ２５１３の各処理が終了したら、ステップＳ２５０３に処理を戻す。このようにすることで、第２の方向にスライド操作がなされると、変数ｉの値が変わるので、現在選択しているブロックとは異なるブロックの入力候補を選択できるようになる。また、第２の方向のうち、右にスライド操作されることにより、現在選択しているブロックの次のブロックに選択を移動させることができ、左にスライド操作されることにより、現在選択しているブロックの次のブロックに選択を移動させることができるようになる。すなわち、第１の方向にスライド操作することで入力候補を選択し、第２の方向にスライド操作することで選択するブロックを変更する仕組みを提供することができる。
【０１７６】
ステップＳ２５１４では、情報処理装置１０１のＣＰＵ２０１は、入力画面に備えられた入力確定ボタンが押下されたか否かを検知する。入力確定ボタンが押下された場合には、ステップＳ２５１５に処理を進め、そうでない場合には、ステップＳ２５０３に処理を戻す。
【０１７７】
ステップＳ２５１５では、情報処理装置１０１のＣＰＵ２０１は、リスト入力部品に表示された入力候補データを所定のデータベース等に登録し、処理を終了する。
【０１７８】
以上説明したように、本実施例によれば、スライド方向に応じて入力候補データを構成する文字列を選択可能に表示するブロックを切り替えることが可能となるので、ブロックごとに入力候補データを構成する文字列の選択を行うことができ、以ってユーザが望む入力候補を素早く入力させることのできる効果を奏する。
【０１７９】
本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、１つの機器からなる装置に適用してもよい。
【０１８０】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
【０１８１】
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０１８２】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であってもよい。
【０１８３】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどがある。また、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などもある。
【０１８４】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
【０１８５】
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０１８６】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１８７】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【０１８８】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
【０１８９】
なお、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【０１９０】
１００  情報処理システム
１０１  情報処理装置
１０２  サーバ
１０３  ネットワーク
２０１  ＣＰＵ
２０２  ＲＡＭ
２０３  ＲＯＭ
２０４  システムバス
２０５  入力コントローラ
２０６  ビデオコントローラ
２０７  メモリコントローラ
２０８  通信Ｉ／Ｆ（インターフェース）コントローラ
２０９  入力装置
２１０  ディスプレイ装置
２１１  外部メモリ
【図１】
2014063486.tif 000003
【図２】
2014063486.tif 000004
【図３】
2014063486.tif 000005
【図４】
2014063486.tif 000006
【図５】
2014063486.tif 000007
【図６】
2014063486.tif 000008
【図７】
2014063486.tif 000009
【図８】
2014063486.tif 000010
【図９】
2014063486.tif 000011
【図１０】
2014063486.tif 000012
【図１１】
2014063486.tif 000013
【図１２】
2014063486.tif 000014
【図１３】
2014063486.tif 000015
【図１４】
2014063486.tif 000016
【図１５】
2014063486.tif 000017
【図１６】
2014063486.tif 000018
【図１７】
2014063486.tif 000019
【図１８】
2014063486.tif 000020
【図１９】
2014063486.tif 000021
【図２０】
2014063486.tif 000022
【図２１】
2014063486.tif 000023
【図２２】
2014063486.tif 000024
【図２３】
2014063486.tif 000025
【図２４】
2014063486.tif 000026
【図２５】
2014063486.tif 000027
【図２６】
2014063486.tif 000028