(57)【特許請求の範囲】
【請求項１】
ソフトウェアキーボードの押下により文字列を表示部へ表示する情報処理装置であって、
押下を受付けたキーに対応する文字列を用いて前記表示部へ表示する候補を表示する第１の表示手段と、
前記第１の表示手段により候補として表示された文字列を前記表示部へ移動する操作を受付ける移動操作受付手段と、
前記移動操作受付手段により受付けた移動する操作に基づいて、前記表示部に示す表示位置とは別に、前記移動する文字列において当該文字列を表示しようとする位置を表示する第２の表示手段と、
前記表示部に表示されている文字列間の位置に文字列を挿入することに基づいて、前記文字列を挿入する前に表示されているカーソルの位置から入力を継続させるように当該カーソルの表示を行う第３の表示手段と、
を備えたことを特徴とする情報処理装置。
【請求項２】
前記第２の表示手段は、前記移動操作受付手段の移動する操作によって前記文字列が表示部へ近づくと、前記表示部に示す表示位置とは別に、前記移動する文字列において当該文字列を表示しようとする位置を表示することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記第２の表示手段における前記文字列を表示しようとする位置は、当該位置をアシストする指示部であることを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記第１の表示手段は、押下を受け付けたキーに対応する文字列を用いて変換可能な文字列を前記表示部へ表示する候補として表示することを特徴とする請求項１乃至３の何れか１項に記載の情報処理装置。
【請求項５】
前記第１の表示手段は、候補として表示された文字列が前記ソフトウェアキーボードの文字列を変換する操作に対応するキーに移動されることにより、当該文字列を用いて変換可能な文字列を前記表示部へ表示する候補として表示することを特徴とする請求項４に記載の情報処理装置
【請求項６】
前記第３の表示手段は、前記表示部へ表示されている文字列間以外の位置において前記文字列を挿入動作がある場合、カーソルの位置に当該文字列を表示することを特徴とする請求項１乃至５の何れか１項に記載の情報処理装置。
【請求項７】
前記第１の表示手段は、前記キーが押下された状態で前記キーとは異なるキーの押下により複数のそれぞれのキーに対応する文字列を用いて、前記表示部へ表示する候補を表示することを特徴とする請求項１乃至６の何れか１項に記載の情報処理装置。
【請求項８】
ソフトウェアキーボードの押下により文字列を表示部へ表示する情報処理装置の制御方法であって、
前記情報処理装置は、
押下を受付けたキーに対応する文字列を用いて前記表示部へ表示する候補を表示する第１の表示ステップと、
前記第１の表示ステップにより候補として表示された文字列を前記表示部へ移動する操作を受付ける移動操作受付ステップと、
前記移動操作受付ステップにより受付けた移動する操作に基づいて、前記表示部に示す表示位置とは別に、前記移動する文字列において当該文字列を表示しようとする位置を表示する第２の表示ステップと、
前記表示部に表示されている文字列間の位置に文字列を挿入して表示することに基づいて、前記文字列を挿入する前に表示されているカーソルの位置から入力を継続させるように当該カーソルの表示を行う第３の表示ステップと、
を実行することを特徴とする情報処理装置の制御方法。
【請求項９】
コンピュータを、
押下を受付けたソフトウェアキーボードのキーに対応する文字列を用いて表示部へ表示する候補を表示する第１の表示手段と、
前記第１の表示手段により候補として表示された文字列を前記表示部へ移動する操作を受付ける移動操作受付手段と、
前記移動操作受付手段により受付けた移動する操作に基づいて、前記表示部に示す表示位置とは別に、前記移動する文字列において当該文字列を挿入しようとする位置を表示する第２の表示手段と、
前記表示部に表示されている文字列間の位置に文字列を挿入して表示することに基づいて、前記文字列を挿入する前に表示されているカーソルの位置から入力を継続させるように当該カーソルの表示を行う第３の表示手段と、
して機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置の表示部へ表示される文字列に対する操作を行う技術に関する。
【背景技術】
【０００２】
情報処理装置や画像処理装置などの表示部へ表示された文書に対して、文字列等を入力する際に、その入力すべく位置にカーソルを表示させておき、ハードウェアキーボードのキーを押下すると、その位置に、キーに該当する文字列等が表示される。
【０００３】
また、最近では、指で表示部に対してタッチ操作を行うことで、様々な情報を入力することが可能なユーザインタフェースが登場しており、このようなタッチ操作が可能になったことから、この表示部へソフトウェアキーボードを表示しておき、ユーザは、このソフトウェアキーボードの各キーを押下することで、文字列等を入力することが可能となった。
【０００４】
このようなソフトウェアキーボードを用いた場合でも、文字列等を入力する位置としては、カーソルが表示された位置が入力位置となり、ユーザが、入力したい位置へカーソルを移動させて、文字列等を入力する必要がある。
【０００５】
このようなカーソル移動の手間を省く方法として、ソフトウェアキーボードのキーを電子ペンでタッチオンし、この電子ペンを入力領域へ移動させてタッチオフすることで、移動先の位置に、このキーから特定される文字列等を入力することが可能な技術が開示されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１０−１３４９５３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記特許文献１の技術では、カーソルの位置を移動させることなく、文字列等を入力領域へ入力させることが可能であるが、入力した後、このカーソルの位置は、入力した位置へ移動され、次の文字列等を入力する際に、再度、入力したい位置へカーソルを移動しなければならないという手間が発生する。
【０００８】
例えば、１つの文書に対して、途中の文字列や文字列間に対して、新たな文字列を追加などする場合は、入力した後、当該文書の文末から文字列等の入力を再開することも多く、途中の文字列や文字列間にカーソルが移動してしまうと、文書の文末までカーソルを移動させて、文字列の入力を再開しなければならないので、非常に手間である。
【０００９】
そこで、本発明では、ソフトウェアキーボードの操作によって文字列を入力する際に、ユーザの操作にかかる手間を軽減することが可能な仕組みを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を解決するための第１の発明は、ソフトウェアキーボードの押下により文字列を表示部へ表示する情報処理装置であって、押下を受付けたキーに対応する文字列を用いて前記表示部へ表示する候補を表示する第１の表示手段と、前記第１の表示手段により候補として表示された文字列を前記表示部へ移動する操作を受付ける移動操作受付手段と、前記移動操作受付手段により受付けた移動する操作に基づいて、前記表示部に示す表示位置とは別に、前記移動する文字列において当該文字列を表示しようとする位置を表示する第２の表示手段と、前記表示部に表示されている文字列間の位置に文字列を挿入して表示することに基づいて、前記文字列を挿入する前に表示されているカーソルの位置から入力を継続させるように当該カーソルの表示を行う第３の表示手段と、を備えたことを特徴とする。
【００１１】
上記課題を解決するための第２の発明は、ソフトウェアキーボードの押下により文字列を表示部へ表示する情報処理装置の制御方法であって、前記情報処理装置は、押下を受付けたキーに対応する文字列を用いて前記表示部へ表示する候補を表示する第１の表示ステップと、前記第１の表示ステップにより候補として表示された文字列を前記表示部へ移動する操作を受付ける移動操作受付ステップと、前記移動操作受付ステップにより受付けた移動する操作に基づいて、前記表示部に示す表示位置とは別に、前記移動する文字列において当該文字列を表示しようとする位置を表示する第２の表示ステップと、前記表示部に表示されている文字列間の位置に文字列を挿入して表示することに基づいて、前記文字列を挿入する前に表示されているカーソルの位置から入力を継続させるように当該カーソルの表示を行う第３の表示ステップと、を実行することを特徴とする。
【００１２】
上記課題を解決するための第３の発明は、コンピュータを、押下を受付けたソフトウェアキーボードのキーに対応する文字列を用いて表示部へ表示する候補を表示する第１の表示手段と、前記第１の表示手段により候補として表示された文字列を前記表示部へ移動する操作を受付ける移動操作受付手段と、前記移動操作受付手段により受付けた移動する操作に基づいて、前記表示部に示す表示位置とは別に、前記移動する文字列において当該文字列を挿入しようとする位置を表示する第２の表示手段と、前記表示部に表示されている文字列間の位置に文字列を挿入して表示することに基づいて、前記文字列を挿入する前に表示されているカーソルの位置から入力を継続させるように当該カーソルの表示を行う第３の表示手段と、して機能させるためのプログラム。
【発明の効果】
【００１３】
本発明によれば、ソフトウェアキーボードの操作によって文字列を入力する際に、ユーザの操作にかかる手間を軽減することができる、という効果を奏する。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態に係る情報処理装置の構成を示す構成図である。
【図２】本発明の実施形態に係る情報処理装置のハードウェアの構成を示すこう製図である。
【図３】本発明の実施形態に係る情報処理装置で実行される文書への文字列などの挿入処理を示すフローチャートである。
【図４】本発明の実施形態に係る情報処理装置で実行される文書の文字列などの削除、入れ替え処理を示すフローチャートである。
【図５】本発明の実施形態に係るソフトウェアキーボードの構成を示す構成図である。
【図６】本発明の実施形態に係る画面情報テーブルの構成を示す構成図である。
【図７】本発明の実施形態において文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図８】本発明の実施形態において文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図９】本発明の実施形態において文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図１０】本発明の実施形態において文字列の削除が可能なソフトウェアキーボードの構成を示す構成図である。
【図１１】本発明の実施形態において文字列の削除が可能なソフトウェアキーボードの構成を示す構成図である。
【図１２】本発明の実施形態において文字列の削除が可能なソフトウェアキーボードの構成を示す構成図である。
【図１３】本発明の実施形態において文字列の入れ替えが可能なソフトウェアキーボードの構成を示す構成図である。
【図１４】本発明の実施形態において文字列の入れ替えが可能なソフトウェアキーボードの構成を示す構成図である。
【図１５】本発明の実施形態において文字列の入れ替えが可能なソフトウェアキーボードの構成を示す構成図である。
【図１６】本発明の実施形態において文字列の入れ替えが可能なソフトウェアキーボードの構成を示す構成図である。
【図１７】本発明の実施形態において文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図１８】本発明の実施形態において文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図１９】本発明の実施形態において文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図２０】本発明の実施形態において文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図２１】本発明の実施形態において文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図２２】本発明の実施形態において文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図２３】本発明の実施形態において文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図２４】本発明の実施形態において文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図２５】本発明の実施形態において文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図２６】本発明の実施形態において文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図２７】本発明の実施形態においてパスワードを入力するための画面の構成を示す構成図である。
【図２８】本発明の実施形態においてパスワードを入力するためのソフトウェアキーボードの構成を示す構成図である。
【図２９】本発明の実施形態においてパスワードを入力するためのソフトウェアキーボードの構成を示す構成図である。
【図３０】本発明の実施形態においてパスワードを入力するための画面の構成を示す構成図である。
【図３１】本発明の実施形態において漢字・かな変換を行った文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図３２】本発明の実施形態において漢字・かな変換を行った文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図３３】本発明の実施形態において漢字・かな変換を行った文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図３４】本発明の実施形態において漢字・かな変換を行った文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図３５】本発明の実施形態において漢字・かな変換を行った文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図３６】本発明の実施形態において漢字・かな変換を行った文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図３７】本発明の実施形態において漢字・かな変換を行った文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図３８】本発明の実施形態において漢字・かな変換を行った文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図３９】本発明の実施形態において漢字・かな変換を行った文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図４０】本発明の実施形態において漢字・かな変換を行った文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図４１】本発明の実施形態において漢字・かな変換の候補を表示するウィンドウの構成を示す構成図である。
【図４２】本発明の実施形態において漢字・かな変換の候補を表示するウィンドウの構成を示す構成図である。
【図４３】本発明の実施形態において漢字・かな変換の候補を表示するウィンドウの構成を示す構成図である。
【図４４】本発明の実施形態において漢字・かな変換の候補を表示するウィンドウの構成を示す構成図である。
【図４５】本発明の実施形態において漢字・かな変換を行った文字列の挿入が可能なソフトウェアキーボードの構成を示す構成図である。
【図４６】本発明の実施形態に係る情報処理装置で実行される文書への文字列などの挿入処理を示すフローチャートである。
【図４７】本発明の実施形態に係る情報処理装置で実行される次のボタンの押下にかかる処理を行う際に複数文字列を吹き出し表示する処理を示すフローチャートである。
【図４８】本発明の実施形態に係る情報処理装置で実行される漢字・かな変換処理を示すフローチャートである。
【発明を実施するための形態】
【００１５】
以下、図面を参照して、本発明の実施形態を詳細に説明する。
［第１の実施形態］
【００１６】
図１には、本発明の実施形態にかかる情報処理装置の概略構成を示す構成図である。
【００１７】
情報処理装置１００は、ユーザが指で触れることで様々な操作入力が可能なタッチパネル１０１を備えており、このタッチパネル１０１では、タッチパネル１０１が押下されたことを検出する押下検出手段１０２と、タッチパネル１０１へ種々の画面などを表示する画面表示手段１０３を備えている。
【００１８】
また、情報処理装置１００は、自身で実行する各種の処理を制御する制御手段１０４を備えており、制御手段１０４は、押下検出手段１０２によってタッチパネル１０１が押下されたことを検出したことに応じて、様々なイベントを生成するイベント生成手段１０５と、さらに、押下検出手段１０２によってタッチパネル１０１が押下された長さによって、生成するイベントを変更することが可能なように、この押下された長さを監視するタイマ監視手段１０６と、を備えている。尚、各機能の詳細については、後述することとする。
【００１９】
図２には、情報処理装置１００におけるハードウェアの概略構成を示す構成図が示されている。
【００２０】
以下、図２を用いて、図１に示した情報処理装置１００のハードウェア構成について説明する。
【００２１】
図２において、２０１はＣＰＵで、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。
【００２２】
また、ＲＯＭ２０２あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  ／  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）やオペレーティングシステムプログラム（以下、ＯＳ）や、各サーバ或いは各ＰＣの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。
【００２３】
２０３はＲＡＭで、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＯＭ２０２あるいは外部メモリ２１１からＲＡＭ２０３にロードして、該ロードしたプログラムを実行することで各種動作を実現するものである。
【００２４】
また、２０５は入力コントローラで、キーボードや不図示のマウス等のポインティングデバイス等の入力部２０９からの入力を制御する。２０６はビデオコントローラで、ＣＲＴディスプレイ（ＣＲＴ）や液晶ディスプレイ等の表示部２１０への表示を制御する。
【００２５】
表示部２１０は、タッチパネルシートが貼られており、システムの操作画面を表示するとともに、表示してあるキーが押されると、その位置情報を、入力コントローラ２０５を介してＣＰＵ２０１に伝える。また、キーが押された後、そのキーがリリース、つまり、指などが離れたことを検知すると、キーから特定される文字列が表示される。
【００２６】
２０７はメモリコントローラで、ブートプログラム，各種のアプリケーション，フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶する外部記憶装置（ハードディスク（ＨＤ））や、フレキシブルディスク（ＦＤ）、或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）メモリ等の外部メモリ２１１へのアクセスを制御する。
【００２７】
２０８は通信Ｉ／Ｆコントローラで、ネットワーク（例えば、ＬＡＮ）を介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いた通信等が可能である。
【００２８】
なお、ＣＰＵ２０１は、例えばＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、表示部２１０上での表示を可能としている。また、ＣＰＵ２０１は、表示部２１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【００２９】
本発明を実現するための後述する各種プログラムは、外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０３にロードされることによりＣＰＵ２０１によって実行されるものである。さらに、上記プログラムの実行時に用いられる定義ファイル等も、外部メモリ２１１に格納されており、これらについての詳細な説明も後述する。
【００３０】
図３は、本発明の実施形態に係る情報処理装置で実行される文書への文字列などの挿入処理を示すフローチャートである。尚、各ステップは、ＣＰＵ２０１の制御の下、処理が実行される。
【００３１】
ステップＳ１００では、押下検出手段１０２は、表示部２１０に表示されたソフトウェアキーボードのボタンが押下されたか否かを判定し、押下されたと判定した場合は、ステップＳ１０１へ処理を進める。
【００３２】
このソフトウェアキーボードの一例を図５に示す。ソフトウェアキーボード３００は、文字列等を入力、表示するための入力文字表示エリア３０１、文字列を入力するための文字列ボタン３０３、及び所定の機能を動作させることが可能な機能ボタン３０４を備えている。
【００３３】
ステップＳ１０１では、押下検出手段１０２は、ボタンの押下にかかる押下位置を検出し、ステップＳ１０２では、押下検出手段１０２は、押下された位置が、押下されたボタンの表示領域内（あるいは、押下可能範囲内）であるか否かを判定し、表示領域内であると判定した場合は、ステップＳ１０５へ処理を進め、表示領域内であると判定しない場合は、ステップＳ１０３へ処理を進める。
【００３４】
ここで押下された位置とは、画面における座標を示しており、図６に示される画面の構成に関する情報を記憶している画面情報テーブル４００を用いて、この位置を特定している。
【００３５】
画面情報テーブル４００は、画面を一意に識別するための画面ＩＤ４０１に対応して、入力文字表示エリア３０１に関する領域を座標として記憶し、更に、後述するが、入力文字表示エリア３０１がパスワードを入力するためのエリアか否かを判定するためのパスワード入力フラグ４０３を備えている。
【００３６】
更に、画面情報テーブル４００は、文字列ボタン３０３や機能ボタン３０４の位置情報として、座標に関する情報をそれぞれ備えている。
【００３７】
以後も、位置とは、この座標を示しており、説明は省略するものとする。
【００３８】
ステップＳ１０３では、画面表示手段１０３は、押下されたボタンから入力される文字列や動作する機能を特定するための特定情報を表示し、ステップＳ１０４では、画面表示手段１０３は、ステップＳ１０１において検出した押下位置が移動されていれば、その移動先に、この特定情報も移動させる。
【００３９】
ステップＳ１０５では、押下検出手段１０２は、押下されたボタンがリリースされたか否かを判定し、リリースされたと判定した場合、ステップＳ１０６へ処理を進め、押下されたと判定しない場合は、ステップＳ１０１へ処理を進める。
【００４０】
ここまでの流れを具体的な例として説明すると、図７に示すように、入力文字表示エリア３０１に表示された文書に対して、文書を構成するｄとｆとの間に、eを挿入したい場合を例として説明する。
【００４１】
この場合、ユーザは、まず、ボタンとして、eを押下すると、初めは、eのボタンの領域内で押下された位置を検出するが、eを押下した状態（詳しくは、eを押下した後、ソフトウェアキーボードから指を話さない状態、以下、同じ）で、eのボタンの表示領域外へ指を移動させていくと、図８に示すように、現在、eのボタンが押下されていることをユーザに知らしめるため、eのボタンを押下することで入力することができるeという文字列を特定情報として表示する。
【００４２】
そして、このeのボタンがリリースされるまで、ユーザの指の移動に応じて、eという文字列の特定情報も移動させて表示することを行っている（ステップＳ１０１からステップＳ１０５）。
【００４３】
ステップＳ１０６では、押下検出手段１０２は、押下されたボタンがリリースされた位置が、入力文字表示エリア３０１であるか否かを判定し、入力文字表示エリア３０１であると判定した場合は、ステップＳ１０７へ処理を進め、入力文字表示エリア３０１であると判定しない場合は、ステップＳ１０８へ処理を進める。
【００４４】
ステップＳ１０７では、イベント生成手段１０５は、リリースされた位置で文字列を挿入する、あるいは、機能を動作させる。
【００４５】
本ステップにおける具体的な例を図９に示す。ユーザが、eのボタンを押下した状態で、入力文字表示エリア３０１へ移動させ、文書を構成するｄとｆとの間でリリースした時、ｄとｆとの間に、eという文字列が挿入される。
【００４６】
具体例では、文字列ボタン３０３が押下されたことを例としてあげたが、バックスペース、スペース、Ｅｎｔｅｒなどの所定の機能を動作する機能ボタン３０４が押下されたときも同様に、機能ボタン３０４が押下された状態で、このボタンの表示領域外へ移動した場合は、その移動先で、この機能ボタン３０４を押下することで動作する機能を特定するための特定情報を表示し、入力文字表示エリア３０１へ移動して、機能ボタン３０４がリリースされたら、そのリリースされた位置において、機能ボタン３０４が押下されたとして、その動作（バックスペースをいれる、スペースをいれる、改行するなど）を行う。
【００４７】
ステップＳ１０８では、イベント生成手段１０５は、現在、入力文字表示エリア３０１におけるカーソルの位置に対して、文字列を挿入するか、あるいは、機能を動作させる。本ステップもステップＳ１０７と同様に、押下されたボタンが文字列ボタン３０３か機能ボタン３０４によって、文字列を挿入するか、あるいは、機能を動作させる。
【００４８】
次に、図４は、本発明の実施形態に係る情報処理装置で実行される文書の文字列などの削除、入れ替え処理を示すフローチャートである。尚、各ステップは、ＣＰＵ２０１の制御の下、処理が実行される。
【００４９】
ステップＳ２００では、押下検出手段１０２は、表示部２１０に表示されたソフトウェアキーボードが押下されたか否かを判定し、押下されたと判定した場合は、ステップＳ２０１へ処理を進める。
【００５０】
ステップＳ２０１では、押下検出手段１０２は、ボタンが押下された位置を検出し、ステップＳ２０２では、押下検出手段１０２は、押下された位置が、入力文字表示エリア３０１であるか否かを判定し、入力文字表示エリア３０１内であると判定した場合は、ステップＳ２０３へ処理を進め、入力文字表示エリア３０１内であると判定しない場合は、処理を終了する。
【００５１】
ステップＳ２０３では、画面表示手段１０３は、表示部２１０に表示された画面が、パスワードを入力するための画面でないか否かを判定し、パスワードを入力するための画面であると判定した場合は、処理を終了し、パスワードを入力するための画面であると判定しない場合は、ステップＳ２０４へ処理を進める。
【００５２】
本ステップにおける判定は、表示部２１０へ表示された画面のＩＤに該当する、画面情報テーブルの画面ＩＤに対応するパスワード入力フラグ４０３がＯＮになっていた場合、表示部２１０に表示された画面は、パスワードを入力するための画面であると判定し、パスワード入力フラグ４０３がＯＦＦになっていた場合、表示部２１０に表示された画面は、パスワードを入力するための画面であると判定しない。
【００５３】
このような判定を行う理由としては、図２７に示すパスワードを入力するための画面が表示部２１０へ表示されている場合、パスワードを入力するエリアを押下すると、図２８に示すソフトウェアキーボードでパスワードの入力を開始するが、図２９に示すように、パスワードが第三者へ盗み見られるなどのリスクが生じることから、入力したパスワードが＊などの別の文字列へ変換され、図３０に示すようにパスワードを入力するエリアには、＊の文字列が表示される。
【００５４】
このような場合、文字列の入れ替えや削除を行う必要性は、殆どないことから、このような画面が表示された場合、本処理を終了することとしている。
【００５５】
ステップＳ２０４では、画面表示手段１０３は、入力文字表示エリア３０１に表示された文書を構成する文字列のうち、押下された文字列にフォーカスをあて、ステップＳ２０５では、タイマ監視手段１０６は、長い時間（所定時間）、入力文字表示エリア３０１の一定の箇所が押下されたか否かを判定し、押下されたと判定した場合、ステップＳ２１３へ処理を進め、押下されたと判定しない場合、ステップＳ２０６へ処理を進める。
【００５６】
ステップＳ２０６では、押下検出手段１０２は、ボタンが押下された位置を検出し、ステップＳ２０７では、押下検出手段１０２は、ステップＳ２０６において検出した位置が、入力文字表示エリア３０１の外であるか否かを判定し、外であると判定しない場合、ステップＳ２０５へ処理を進め、外であると判定した場合、ステップＳ２０８へ処理を進める。
【００５７】
ステップＳ２０８では、画面表示手段１０３は、押下された文字列を入力文字表示エリア３０１の外へ表示し、ステップＳ２０９では、画面表示手段１０３は、ステップＳ２０１において検出した押下位置が移動されていれば、その移動先に、この文字列も移動させる。
【００５８】
そして、ステップＳ２１０では、押下検出手段１０２は、ボタン上で押下されなくなった（リリースされた）か否かを判定し、押下されなくなった（リリースされた）と判定した場合、ステップＳ２１１へ処理を進め、押下されなくなった（リリースされた）と判定しない場合は、ステップＳ２１２へ処理を進める。
【００５９】
ステップＳ２１１では、画面表示手段１０３は、入力文字表示エリア３０１でフォーカスがあてられた文字列を、ステップＳ２１０でリリースされたボタンが押下されることで入力される文字列に入れ替えるか、あるいは、ステップＳ２１０でリリースされたボタンが押下されることで動作する機能を動作させる。
【００６０】
ステップＳ２１２では、画面表示手段１０３は、入力文字表示エリア３０１でフォーカスがあてられた文字列を削除する。
【００６１】
本処理の具体例を説明する。まず、ユーザは、入力文字表示エリア３０１に表示された文書のうち、削除したい文字列としてeを押下した状態で（図１０）、入力文字表示エリア３０１外へ、eを移動させる。その際に、入力文字表示エリア３０１外では、指の移動先においても、この文字列eが表示される（図１１）。
【００６２】
すると、入力文字表示エリア３０１の外へ移動し、ボタンが配置されていないところで、押下することを止めると、入力文字表示エリア３０１に表示され、ユーザが押下（選択）した文字列eが削除され、e以後の文字列が左に寄せられて表示される（図１２）。
【００６３】
また、ユーザは、入力文字表示エリア３０１に表示された文書のうち、入れ替えたい文字列としてeを押下した状態で（図１３）、入力文字表示エリア３０１外へ、eを移動させる。その際に、入力文字表示エリア３０１外では、指の移動先においても、この文字列eが表示される（図１４）。
【００６４】
すると、入力文字表示エリア３０１の外へ移動し、ボタンが配置されているところで、押下することを止めると（図１５）、入力文字表示エリア３０１に表示され、ユーザが押下（選択）した文字列eに代わって、押下することを止めた位置のボタンを押下することで入力される文字列を表示するか、あるいは、押下することを止めた位置のボタンを押下することで動作する機能を動作させる（図１６）。
【００６５】
本実施形態の変形例として、図３に示す文書への文字列などの挿入処理では、１つの文字列を挿入したが、複数の文字列を挿入することも可能である。
【００６６】
この方法として、まず、ステップＳ１００においてボタンが押下された後、ステップＳ１０５において当該ボタンがリリースする前に、他のボタンが、タイマ監視手段１０６によって長い時間、押下されたか否かを判定し、押下されたと判定した場合、その他のボタンを押下することで入力される文字列も追加して、入力文字表示エリア３０１に表示された文書へ挿入する対象とすることが可能である。
【００６７】
この追加は、ステップＳ１０５において、ボタンがリリースされるまで、いくつも追加することが可能であり、追加したいボタンを長い時間、押下することを、逐次、追加される。
【００６８】
この流れを具体的な例として説明すると、図１７に示すように、入力文字表示エリア３０１に表示された文書に対して、文書を構成するｄとｆとの間に、ｘｙｚを挿入したい場合を例として説明する。
【００６９】
ユーザは、まず、ｘを押下し、図１８に示すようにソフトウェアキーボードを押下した状態で、ｙが入力可能な文字列ボタン３０３まで指を移動させて、この文字列ボタン３０３を長い時間、押下する（図１９）。
【００７０】
すると、図２０に示されるように、最初に押下したｘに追加してｙについても、挿入対象となる文字列として追加される。そして、図２１に示すように、継続して、ソフトウェアキーボードを押下した状態で、ｚが入力可能な文字列ボタン３０３まで指を移動させ、長い時間、押下すると（図２２）、ｘ、ｙに追加してｚも挿入可能な文字列とされる（図２３）。
【００７１】
そして、ユーザは、挿入対象とする文字列を決定した後、ソフトウェアキーボードから指を離さないようにして（図２４）、入力文字表示エリア３０１に表示された文書に対して、ｘｙｚを挿入したい位置に指を移動させて、指を離すと（図２５）、離した位置に、ｘｙｚが挿入される（図２６）。
［第２の実施形態］
【００７２】
次に第２の実施形態について説明するが、第１の実施形態では、キーボードにおいて押下されたキーに対応する文字列等の挿入を行っているが、第２の実施形態では、キーボードにおいて押下されたキーに対応する文字列から漢字やかな等への文字に変換して挿入する。
【００７３】
尚、第２の実施形態は、第１の実施形態と同様な構成及び処理を備えるため、同一の構成及び処理については、同一符号を用いて説明を行うが、詳細な説明は省略するものとする。
【００７４】
図３１には、ソフトウェアキーボードの一例が示されており、図５に示すソフトウェアキーボードとほぼ同様な構成を備えるが、キーボードに対して押下されたキーに対応する文字列から漢字・かな変換を行うための変換候補を表示するボタン５０１、漢字・かな変換を行った文字列を挿入する際に、変換後の複数の文字列を貯めて表示する吹き出し５０２、吹き出しに貯めて表示された文字列を入力文字表示エリア３０１へ挿入することをユーザへアシストする為の矢印５０３を備えている点で異なる。
【００７５】
このソフトウェアキーボードを用いて、文字列の挿入を行うが、本実施形態では、図３２に示すように「空」をいう漢字を入力文字表示エリアに挿入する例をあげて発明の説明を行う。
【００７６】
次に、図４６には、本発明の実施形態に係る情報処理装置で実行される文書への文字列などの挿入処理を示すフローチャートであり、図３に示すフローチャートを改良したものである。尚、各ステップは、ＣＰＵ２０１の制御の下、処理が実行される。
【００７７】
まず、図３１に示すソフトウェアキーボードの入力モードを英字、数字、漢字・かな等へ切り替えるためのモード切替キー５０４が漢字・かなの入力モードになっている際に、以降の処理が行われ、ステップＳ３００では、押下検出手段１０２は、ステップＳ１００において押下された位置を検出する。
【００７８】
ステップＳ３０１では、ステップＳ３００で検出したボタンの押下にかかる押下位置が当該ボタンの表示領域内（あるいは、押下可能範囲内）であるか否かを判定し、表示領域内であると判定した場合は、ステップＳ３０２へ処理を進め、表示領域内であると判定しない場合は、ステップＳ３０３へ処理を進める。
【００７９】
ボタンの押下にかかる押下位置が当該ボタンの表示領域内であることの例として、図３３に示すように、「空」の文字列を挿入するにあたり、その先頭文字のアルファベット「ｓ」が押下されたことを示している。
【００８０】
この時点以降、ソフトウェアキーボードから指を離さずに、挿入するための文字列を作成することを行っている。
【００８１】
ステップＳ３０２では、押下検出手段１０２は、次のボタンの押下にかかる処理を行っているが、詳細は、図４７に示すフローチャートで説明する。
【００８２】
図４７には、次のボタンの押下にかかる処理を示すフローチャートが示されている。尚、各ステップは、ＣＰＵ２０１の制御の下、処理が実行される。
【００８３】
ステップＳ４００では、押下検出手段１０２は、次のボタンの押下位置を検出する。次のボタンが押下されていることを示す例として、図３４に示すように、「空」の文字列を挿入するにあたり、その先頭文字のアルファベット「ｓ」の次のアルファベットに該当する「o」に対応したボタンが押下されたことを示している。
【００８４】
この場合、「ｓ」に対応するボタンを指で押下した状態で、当該指とは異なる指で「o」に対応したボタンを押下している。
【００８５】
ステップＳ４０１では、画面表示手段１０３は、１番目に押下したボタンの位置に吹き出しが表示されているか否かを判定し、表示されていると判定した場合は、ステップＳ４０３へ処理を進め、表示されていると判定しない場合、ステップＳ４０２へ処理を進める。
【００８６】
ステップＳ４０２では、画面表示手段１０３は、１番目に押下したボタンの位置（あるいは、ボタンの近傍の位置）に吹き出しを表示し、ステップＳ４０３では、画面表示手段１０３は、次に押下したボタンに対応する文字列を表示されている吹き出しに追加する。この際に、文字列がかな変換できるものであれば変換を行って追加する。
【００８７】
ステップＳ４０２における吹き出しを表示した例として、図３５に示すように、前の文字列として「ｓ」に対応するボタンが押下された後、「o」に対応するボタンが押下され、その際に、「ｓ」に対応するボタンの位置（あるいは、ボタンの近傍の位置、以降、同様）に吹き出しを表示して、その吹き出しの中に、「ｓ」と「o」とからなる文字列をローマ字変換した文字「そ」を表示する。
【００８８】
ユーザがタッチパネル１０１から指を離したこと（この場合、「ｓ」に対応するボタンの位置から離れたこと）を押下検出手段１０２によって検出すると、このボタンの位置に表示した吹き出しは消去され、吹き出しの中に表示していた文字列は、漢字やかな等の変換を行うことなく、表示された文字列のまま、入力文字表示エリア３０１のカーソル位置３０２に表示する。
【００８９】
一方、吹き出しに文字列を表示したまま、さらに他のボタンを押下したときの吹き出しを表示した例として、図３６に示すように、吹き出しに「そ」という文字列が表示された状態で、指を「ｓ」に対応するボタンから離すことなく、当該指と異なる指で、「ｒ」に対応するボタンを押下した場合、図３７に示すように、吹き出しに「そｒ」が表示される。
【００９０】
さらに、図３８に示すように、当該異なる指で「a」に対応するボタンを押下した場合、図３９に示すように、吹き出しに「そら」が表示される。このような表示例を行う処理が、ステップＳ４０３に関する処理に対応している。
【００９１】
吹き出しへの文字列の追加は、１番目に押下したボタンに対して所定の領域外へ指を移動しない限り、何文字でも追加可能であり、ステップＳ３０１では、前述したが、その指が所定の領域外へ移動したか否かを判定し、移動したと判定した場合、ステップＳ３０３へ処理を進めている。
【００９２】
ステップＳ３０３では、画面表示手段１０３は、吹き出しが表示されているか否かを判定し、表示されていると判定した場合は、ステップＳ３０４へ処理を進め、表示されていると判定しない場合は、ステップＳ３０７へ処理を進める。
【００９３】
ステップＳ３０４では、押下検出手段１０２は、指がボタンから離れることなく、所定の領域外へ移動されると、指の押下位置に合わせて、表示されている吹き出しが移動する。
【００９４】
この吹き出しが移動する例が、図４０に示されており、「ｓ」に対応するボタンの位置に表示されていた吹き出しが（図３９）、指の押下位置に合わせて、ボタン５０１の位置まで移動されたことが示されている。
【００９５】
ステップＳ３０５では、漢字・かな変換処理を行うが、詳細は、図４８に示すフローチャートを用いて説明する。
【００９６】
図４８には、漢字・かな変換処理を示すフローチャートが示されており、各ステップは、ＣＰＵ２０１の制御の下、処理が実行される。
【００９７】
ステップＳ５００では、押下検出手段１０２は、吹き出しがボタン５０１の位置にあるか否かを判定し、位置にあると判定した場合、ステップＳ５０１へ処理を進め、位置にないと判定した場合、処理を終了する。
【００９８】
ステップＳ５０１では、押下検出手段１０２は、吹き出しがボタン５０１の位置に、一定時間、存在すると判定すると、吹き出しの中に表示された文字列の変換候補の一覧を表示するウィンドウ６００が表示される。
【００９９】
この変換候補の一覧を表示する例として、まず、図４０に示すように、吹き出しに「そら」が表示された状態で、吹き出しをボタン５０１へ移動させて、一定時間、ボタン５０１の位置で吹き出しを表示させておく。
【０１００】
すると、図４１に示されるように、吹き出しの中に表示された文字列に対して変換可能な文字列（漢字、かな、カタカナ等）を選択形式で表示する。
【０１０１】
図４１の例では、吹き出しに「そら」が表示されているので、その変換候補として、「空」、「ソラ」、「そら」が表示されている。
【０１０２】
ステップＳ５０２では、押下検出手段１０２は、変換候補の一覧を表示するウィンドウ６００が表示された状態で、変換候補のなかから、変換したい文字列へ吹き出しが移動されたことを検出する。
【０１０３】
例えば、図４１に示されるように、変換したい文字列として「空」を選択する場合、吹き出しを空が表示された位置へ移動させる。
【０１０４】
ステップＳ５０３では、画面表示手段１０３は、吹き出しの中に表示された文字列を、ステップＳ５０２で選択した変換したい文字列に変換する。
【０１０５】
ステップＳ３０５では、押下検出手段１０２は、吹き出しが入力文字表示エリア３０１の近傍（所定距離の範囲内）に移動したか否かを判定し、移動したと判定した場合、ステップＳ３０６へ処理を進め、移動したと判定しない場合、ステップＳ１０５へ処理を進める。
【０１０６】
ステップＳ３０６では、画面表示手段１０３は、吹き出しが入力文字表示エリア３０１へ近づくと、入力文字表示エリア３０１に表示された文章に対して文字列の挿入をアシストするため、入力文字表示エリア３０１の方向を示すように矢印５０３を表示する。
【０１０７】
変換候補の一覧を表示するウィンドウ６００で、吹き出しの中に表示された文字列を変換した後、入力文字表示エリア３０１に、変換後の文字列を挿入する際の例として、図４２に示されるように、変換後の「空」が表示された吹き出しを入力文字表示エリア３０１の方へ、指で移動させる。
【０１０８】
すると、図４３に示すように、吹き出しが入力文字表示エリア３０１へ近づくと、入力文字表示エリア３０１に表示された文書に対して文字列の挿入をアシストするため、入力文字表示エリア３０１の方向を示すように矢印５０３が表示され、図４４に示されるように、矢印５０３を挿入したい位置に移動して指を離すと、当該位置に文字列を挿入する。
【０１０９】
また、文字列の変換を行うことなく、吹き出しを入力文字表示エリア３０１に近づけたときも同様に、図３１に示されるように、矢印５０３が表示される
【０１１０】
ステップＳ１０５からステップＳ１０８では、第１の実施形態と同様に、入力文字表示エリア３０１に表示された文書に対して、文書を構成する文字列間で指が離れた位置に吹き出しに表示された文字列を挿入したり、文書に対して表示されたカーソルの位置に吹き出しに表示された文字列を挿入して、吹き出しを消去する。
【０１１１】
図４５には、文書を構成する文字列間で指が離れた位置に吹き出しに表示された文字列を挿入した例が示されており、「あいうえおかきく」という文書に対して、「お」と「か」という文字列の間に、吹き出しの中に表示された「空」が挿入されたことを示している。
【０１１２】
ステップＳ３０７では、押下検出手段１０２は、検出した押下位置に、１番目に押下したボタンに対応する文字列を表示させる。そして、ステップＳ１０５で、当該ボタンがリリースされたことを検知すると、ステップＳ１０６以降の処理を進め、当該ボタンに対応する文字列を、入力文字表示エリア３０１に表示された文書に対して挿入する。
【０１１３】
本実施形態の変形例として、第２の実施形態では、２つの指を使ってボタンを押下することで文字列を選択したが、このような形態に限らず、１つの指で文字列を選択することも可能である。
【０１１４】
操作方法としては、第１の実施形態における変形例と同様な方法をとり、図４６に示す文書への文字列などの挿入処理において、ユーザがボタンを押下すると、ステップＳ３０１において、ステップＳ３００で検出したボタンの押下にかかる押下位置が当該ボタンの表示領域内（あるいは、押下可能範囲内）であるか否かを判定し、表示領域内であると判定した場合は、ステップＳ３０２へ処理を進め、表示領域内であると判定しない場合は、ステップＳ３０３へ処理を進める。
【０１１５】
ステップＳ３０２では、次のボタンの押下にかかる処理を行うが、ステップＳ４００において次のボタンの押下にかかる押下位置を検出する。
【０１１６】
この検出方法として、ステップＳ１０５において当該ボタンがリリースされる前に、次のボタンが、タイマ監視手段１０６によって長い時間、押下されたか否かを判定し、押下されたと判定した場合、その押下位置を検出する。
【０１１７】
以降、ステップＳ４０１からステップＳ４０３において、押下された次のボタンに対応する文字列も追加して、吹き出しに表示する。
【０１１８】
尚、ソフトウェアキーボードのモード切替キー５０４が漢字・かなの入力モードに際に、第２の実施形態のような処理を行い、モード切替キー５０４が英字の入力モードの際に、第１の実施形態のような処理に切替えることも可能である。
【０１１９】
以上、本発明によれば、文書中に文字列を追加などする際に、容易な操作によって文字列の追加等を行うことが可能となるので、ユーザの入力にかかる手間を軽減することができる。
【０１２０】
以上、実施形態例を詳述したが、本発明は、例えば、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０１２１】
更には、画像処理装置、画像形成装置、及び撮影装置など、どのような装置であっても、このようなタッチパネル形式の表示部を備え、入力を行うことが可能な装置であれば、適用することが可能である。
【０１２２】
また、本発明におけるプログラムは、各処理方法をコンピュータが実行可能（読み取り可能）なプログラムであり、本発明の記憶媒体は、各処理方法をコンピュータが実行可能なプログラムが記憶されている。尚、本発明におけるプログラムは、各装置の処理方法ごとのプログラムであってもよい。
【０１２３】
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムを読取り実行することによっても、本発明の目的が達成されることは言うまでもない。
【０１２４】
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記憶した記録媒体は本発明を構成することになる。
【０１２５】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＥＥＰＲＯＭ、シリコンディスク等を用いることができる。
【０１２６】
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータで稼働しているＯＳ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１２７】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１２８】
一方、本発明の例とは異なり、本発明は、１つの機器からなる装置に適用してもよい。つまり、情報処理装置単体に適用してもよい。
【０１２９】
また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０１３０】
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ，データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステム、あるいは装置が、本発明の効果を享受することが可能となる。なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【０１３１】
１００    情報処理装置
２０１    ＣＰＵ
２０２    ＲＯＭ
２０３    ＲＡＭ
２０４    システムバス
２０５    入力コントローラ
２０６    ビデオコントローラ
２０７    メモリコントローラ
２０８    通信Ｉ／Ｆコントローラ
２０９    入力部
２１０    表示部
２１１    外部メモリ
【図１】
0006725828.tif 000002
【図２】
0006725828.tif 000003
【図３】
0006725828.tif 000004
【図４】
0006725828.tif 000005
【図５】
0006725828.tif 000006
【図６】
0006725828.tif 000007
【図７】
0006725828.tif 000008
【図８】
0006725828.tif 000009
【図９】
0006725828.tif 000010
【図１０】
0006725828.tif 000011
【図１１】
0006725828.tif 000012
【図１２】
0006725828.tif 000013
【図１３】
0006725828.tif 000014
【図１４】
0006725828.tif 000015
【図１５】
0006725828.tif 000016
【図１６】
0006725828.tif 000017
【図１７】
0006725828.tif 000018
【図１８】
0006725828.tif 000019
【図１９】
0006725828.tif 000020
【図２０】
0006725828.tif 000021
【図２１】
0006725828.tif 000022
【図２２】
0006725828.tif 000023
【図２３】
0006725828.tif 000024
【図２４】
0006725828.tif 000025
【図２５】
0006725828.tif 000026
【図２６】
0006725828.tif 000027
【図２７】
0006725828.tif 000028
【図２８】
0006725828.tif 000029
【図２９】
0006725828.tif 000030
【図３０】
0006725828.tif 000031
【図３１】
0006725828.tif 000032
【図３２】
0006725828.tif 000033
【図３３】
0006725828.tif 000034
【図３４】
0006725828.tif 000035
【図３５】
0006725828.tif 000036
【図３６】
0006725828.tif 000037
【図３７】
0006725828.tif 000038
【図３８】
0006725828.tif 000039
【図３９】
0006725828.tif 000040
【図４０】
0006725828.tif 000041
【図４１】
0006725828.tif 000042
【図４２】
0006725828.tif 000043
【図４３】
0006725828.tif 000044
【図４４】
0006725828.tif 000045
【図４５】
0006725828.tif 000046
【図４６】
0006725828.tif 000047
【図４７】
0006725828.tif 000048
【図４８】
0006725828.tif 000049