(57)【要約】【課題】  情報処理装置の画面サイズに従って、適した入力コントロールを表示する仕組みを提供する。【解決手段】  複数の入力コントロールを含む画面情報を出力するプログラムを生成するプログラム生成装置であって、入力コントロールと、当該入力コントロールをより幅の小さい他の入力コントロールに変更する優先順位とを対応付けて定義した定義情報を管理し、定義情報に基づいて前記画面情報を出力するプログラムを生成する。画面情報は、当該画面情報を用いて表示されるコンテンツの幅が当該コンテンツを表示するウィンドウの幅に収まるまで、優先順位に基づいて当該画面情報に含まれる入力コントロールをより幅の小さい入力コントロールに変更を繰り返す制御に用いられることを特徴とするプログラム生成装置。【選択図】  図９
2018063622.tif 000002
【特許請求の範囲】
【請求項１】
複数の入力コントロールを含む画面情報を出力するプログラムを生成するプログラム生成装置であって、
前記入力コントロールと、当該入力コントロールをより幅の小さい他の入力コントロールに変更する優先順位とを対応付けて定義した定義情報を管理する定義情報管理手段と、
前記定義情報管理手段に管理されている定義情報に基づいて前記画面情報を出力するプログラムを生成するプログラム生成手段と、を備え、
前記画面情報は、
当該画面情報を用いて表示されるコンテンツの幅が当該コンテンツを表示するウィンドウの幅に収まるまで、前記定義情報管理手段に管理されている優先順位に基づいて当該画面情報に含まれる入力コントロールをより幅の小さい入力コントロールに変更を繰り返す制御に用いられること
を特徴とするプログラム生成装置。
【請求項２】
前記制御は、
前記プログラム生成手段により生成されたプログラムにより出力された画面情報の幅がユーザによって縮小された場合、当該画面情報に含まれる入力コントロールをより幅の小さい入力コントロールへの変更を抑止すること
を特徴とする請求項１に記載のプログラム生成装置。
【請求項３】
複数の入力コントロールを含む画面情報を出力するプログラムを生成するプログラム生成装置における処理方法であって、
前記プログラム生成装置が、
前記入力コントロールと、当該入力コントロールをより幅の小さい他の入力コントロールに変更する優先順位とを対応付けて定義した定義情報を管理する定義情報管理ステップと、
前記定義情報管理ステップに管理されている定義情報に基づいて前記画面情報を出力するプログラムを生成するプログラム生成ステップと、を実行し、
前記画面情報は、
当該画面情報を用いて表示されるコンテンツの幅が当該コンテンツを表示するウィンドウの幅に収まるまで、前記定義情報管理ステップに管理されている優先順位に基づいて当該画面情報に含まれる入力コントロールをより幅の小さい入力コントロールに変更を繰り返す制御に用いられること
を特徴とする処理方法。
【請求項４】
複数の入力コントロールを含む画面情報を出力するプログラムを生成するプログラム生成装置で実行可能なプログラムであって、
前記プログラム生成装置を、
前記入力コントロールと、当該入力コントロールをより幅の小さい他の入力コントロールに変更する優先順位とを対応付けて定義した定義情報を管理する定義情報管理手段と、
前記定義情報管理手段に管理されている定義情報に基づいて前記画面情報を出力するプログラムを生成するプログラム生成手段
として機能させ、
前記画面情報は、
当該画面情報を用いて表示されるコンテンツの幅が当該コンテンツを表示するウィンドウの幅に収まるまで、前記定義情報管理手段に管理されている優先順位に基づいて当該画面情報に含まれる入力コントロールをより幅の小さい入力コントロールに変更を繰り返す制御に用いられること
を特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラムを生成するための情報処理装置、情報処理装置の処理方法、およびプログラムに関する。
【背景技術】
【０００２】
アプリケーション画面やウェブ画面などにおけるデータの入力・選択には、テキストボックスやラジオボタンやセレクトボックスなどの入力コントロールが利用されている。
これらの画面を設計する際、エンドユーザの利便性を高めるべく、エンドユーザが操作する情報処理装置の画面サイズを想定した上で、画面の横スクロールが発生しないように入力コントロールを配置する。
【０００３】
しかしながら、エンドユーザが操作する情報処理装置には、デスクトップＰＣ、ノートＰＣ、携帯端末等があり、画面サイズが統一できないケースも多く、デスクトップＰＣ用に設計されたアプリケーション画面を携帯端末のような画面サイズの小さな情報処理装置で表示すると、横スクロールを必要とする画面が表示されてしまう。
特許文献１には、選択対象のデータ量やデータサイズに応じて、より適した入力コントロールが選択される仕組みが提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１６−０３３７９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１の仕組みは、選択対象のデータ量やデータサイズに応じて、より適した入力コントロールが選択されるのみであるため、選択された入力コントロールを用いたとしても、どうしても横スクロールが発生し、エンドユーザの利便性が悪くなってしまうという問題がある。
【０００６】
そこで、本発明の目的は、情報処理装置の画面サイズに従って、適した入力コントロールを表示する仕組みを提供することである。
【課題を解決するための手段】
【０００７】
複数の入力コントロールを含む画面情報を出力するプログラムを生成するプログラム生成装置であって、前記入力コントロールと、当該入力コントロールをより幅の小さい他の入力コントロールに変更する優先順位とを対応付けて定義した定義情報を管理する定義情報管理手段と、前記定義情報管理手段に管理されている定義情報に基づいて前記画面情報を出力するプログラムを生成するプログラム生成手段と、を備え、前記画面情報は、当該画面情報を用いて表示されるコンテンツの幅が当該コンテンツを表示するウィンドウの幅に収まるまで、前記定義情報管理手段に管理されている優先順位に基づいて当該画面情報に含まれる入力コントロールをより幅の小さい入力コントロールに変更を繰り返す制御に用いられることを特徴とするプログラム生成装置。
【発明の効果】
【０００８】
本発明によれば、情報処理装置の画面サイズに従って、適した入力コントロールを表示する仕組みを提供することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明に係るプログラム生成装置、プログラム生成サーバ、データベースサーバ、アプリケーションクライアント、アプリケーションサーバの構成の一例を示すシステム構成図である。
【図２】本発明に係るプログラム生成装置、プログラム生成サーバ、データベースサーバ、アプリケーションクライアント、アプリケーションサーバとして適用可能な各ハードウェア構成の一例を示すブロック図である。
【図３】本発明の実施の形態のソフトウェア構成を示すブロック図の一例である。
【図４】プログラム生成のフローチャートの一例を示す図である。
【図５】設計したアプリケーション画面の一例を示す図である。
【図６】入力コントロール切替管理画面の一例を示す図である。
【図７】アプリケーション実行のフローチャートの一例を示す図である。
【図８】入力コントロール切替プログラムの一例を示す図である。
【図９】入力コントロールを切り替えた画面の一例を示す図である。
【発明を実施するための形態】
【００１０】
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
【００１１】
図１は、本発明に係わるプログラム生成装置（アプリケーションのプログラムを生成するために開発者が使用する情報処理装置）、プログラム生成サーバ、データベースサーバ、アプリケーションクライアント（クライアント装置）、アプリケーションサーバの構成の一例を示すシステム（情報処理システム）構成図である。
【００１２】
プログラム生成装置１０１は、開発者の操作に従って画面レイアウトおよびデータベース検索指示などを定義する。プログラム生成装置１０１単体では、開発者の入力受付を行い、後述するプログラム生成サーバ１０２に実際のプログラム生成処理、アプリケーション生成処理をさせてもよいし、プログラム生成装置１０１単体でプログラム生成、アプリケーション生成まで処理してもよい。
【００１３】
なお、この実施形態においては、プログラム生成装置１０１で生成するアプリケーションはＷｅｂアプリケーションとしたが、これに限定するものではなく、携帯電話・スマートフォン・タブレットなどの情報処理装置で動作するアプリケーションや組込みソフトウェアなど、Ｗｅｂ技術による通信を利用したアプリケーションでなくてもよい。
【００１４】
プログラム生成サーバ１０２ａ〜１０２ｂ（情報処理装置）は、プログラム生成装置１０１により入力された開発者の指示に従って、プログラムを開発する。プログラム生成サーバ１０２ａはＬＡＮなどのネットワーク１０６内に配置されてもよいし、プログラム生成サーバ１０２ｂはインターネット上やクラウド上に配置されてもよい。
【００１５】
データベースサーバ１０３ａ〜１０３ｂ（情報処理装置）は、開発されたアプリケーションが使用するデータベースであり、また本発明では開発時にも動作確認などのために利用してもよい。例えば、開発者が利用するためにデータベースサーバ１０３は、プログラム生成装置１０１と同一の装置で構成されていてもよいし、ＬＡＮなどのネットワーク１０６内に配置されてもよい（データベースサーバ１０３ａ）。またインターネット上やクラウド上に配置されてもよい（データベースサーバ１０３ｂ）。また、プログラム生成装置１０１が、プログラム生成サーバ１０２と協調する場合には、プログラム生成サーバ１０２とデータベースサーバ１０３が同一の装置内に構成されていてもよい。
【００１６】
アプリケーションサーバ１０５ａ〜１０５ｂ（情報処理装置）は、プログラム生成装置１０１で開発されたアプリケーションを実行する。ＬＡＮなどのネットワーク１０６内に配置されてもよい（アプリケーションサーバ１０５ａ）し、またインターネット上やクラウド上に配置されてもよい（アプリケーションサーバ１０５ｂ）。また、ネットワーク１０６、インターネット、クラウド上のデータベースサーバ１０３と接続して動作する可能である。
【００１７】
アプリケーションクライアント１０４ａ〜１０４ｂ（情報処理装置）は、アプリケーションサーバ１０５と協調してプログラム生成装置１０１で開発したアプリケーションプログラムを動作させる、ユーザの入力端末である。ＬＡＮなどのネットワーク１０６内に配置されてもよい（アプリケーションクライアント１０４ａ）し、またインターネット上やクラウド上に配置されてもよい（アプリケーションクライアント１０４ｂ）。携帯端末などの情報処理装置であってもよい。
【００１８】
図２は、本発明に係わるプログラム生成装置１０１、プログラム生成サーバ１０２、データベースサーバ１０３、アプリケーションクライアント１０４、アプリケーションサーバ１０５として適用可能な各ハードウェア構成の一例を示すブロック図である。
図２において、ＣＰＵ２０１は、システムバス２０４に接続される各デバイスを統括的に制御する。
【００１９】
また、ＲＯＭ２０３あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるオペレーティングシステム（ＯＳ）や、各サーバ、クライアント、装置など情報処理装置の後述する各種機能を実現するためのプログラムが記憶されている。
ＲＡＭ２０２は、ＣＰＵ２０１の主メモリ、ワークエリア、一時待避領域等として機能する。
【００２０】
入力コントローラ２０５は、入力部２０９からの入力を制御する。この入力部２０９としては、情報処理装置では、キーボード、マウス等のポインティングデバイスが挙げられる。
出力コントローラ２０６は、出力部２１０の表示を制御する。この出力部２１０としては、例えば、ＣＲＴや液晶ディスプレイ等が挙げられる。
【００２１】
外部メモリコントローラ２０７は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザーファイル、編集ファイル、プリンタドライバ等を記憶する外部メモリ２１１へのアクセスを制御する。加えて、各サーバ、クライアント、装置等の各種機能を実現するための各種テーブル、パラメータが記憶されている。この外部メモリ２１１としては、ハードディスク（ＨＤ）やフレキシブルディスク（ＦＤ）、ＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）、スマートメディア等が挙げられる。
通信Ｉ／Ｆコントローラ２０８は、ネットワークを介して外部機器との通信制御処理を実行する。
【００２２】
本発明を実現するためのプログラム２１２は外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０２にロードされることによりＣＰＵ２０１によって実行されるものである。
【００２３】
図３は、本発明の実施の形態のソフトウェア構成を示すブロック図の一例である。
プログラム生成装置１０１は、以下の機能部を備える。
定義情報管理部３０１は、入力コントロールと、当該入力コントロールをより幅の小さい他の入力コントロールに変更する優先順位とを対応付けて定義した定義情報を管理する機能部である。
プログラム生成部３０２は、定義情報管理部３０１に管理されている定義情報に基づいて画面情報を出力するプログラムを生成する機能部である。
【００２４】
なお、この画面情報は、当該画面情報を用いて表示されるコンテンツの幅が当該コンテンツを表示するウィンドウの幅に収まるまで、定義情報管理部３０１に管理されている優先順位に基づいて当該画面情報に含まれる入力コントロールをより幅の小さい入力コントロールに変更を繰り返す制御に用いられる。
【００２５】
なお、この制御は、プログラム生成部３０２により生成されたプログラムにより出力された画面情報の幅がユーザによって縮小された場合、当該画面情報に含まれる入力コントロールをより幅の小さい入力コントロールへの変更を抑止する。
【００２６】
図４は、プログラム生成のフローチャートの一例を示す図である。なお、以下のフローチャートの各ステップは、プログラム生成装置１０１のＣＰＵ２０１が実行する。
ステップＳ４０１において、構築するアプリケーションの画面を設計するためのアプリケーション設計画面（不図示）を表示する。
【００２７】
ステップＳ４０２において、画面部品の設定を受け付ける。具体的には、アプリケーション設計画面に配置する画面部品、つまり部品名と部品の配置操作を受け付け、アプリケーションの画面の設計を受け付ける。受け付けた設計によりできたアプリケーションの画面が図５の５００である。なお、わかりやすくするため、図５の５００における各ラベルには、「テキストボックスＡ」「ラジオボタンＦ」「チェックボックスＧ」のように、画面部品の種別名を用いた。
ステップＳ４０３において、ステップＳ４０２にて受け付けた画面部品の設定を画面部品定義情報５０１（図５）として外部メモリ２１１に記憶する。
【００２８】
ステップＳ４０４において、ステップＳ４０２にて受け付けた画面部品に含まれる入力コントロールについて、切り替えの設定を受け付ける。具体的には、図６の入力コントロール切替管理画面６００（図６）を表示し、「入力コントロール名６０１」「切替後の入力コントロールの種別６０２」「優先順位６０３」の設定を受け付ける。すなわち、入力コントロール切替管理画面６００は、入力コントロールと、当該入力コントロールをより幅の小さい他の入力コントロールに変更する優先順位とを対応付けて定義した定義情報を管理する手段の一例である。
【００２９】
ここで、図６の入力コントロール切替管理画面６００について説明しておく。「入力コントロール名６０１」には、ステップＳ４０２にて受け付けた画面部品に含まれる入力コントロールをすべて表示する。
【００３０】
「切替後の入力コントロールの種別６０２」は、アプリケーションの実行によりエンドユーザの利用する情報処理装置に、アプリケーション設計画面にて受け付けた画面が表示された際にウィンドウの幅に収まらなかった場合に、切り替えて表示する入力コントロールの種別である。
【００３１】
なお、入力コントロール切替管理画面６００においては、「切替後の入力コントロールの種別６０２」はテキストエリアおよびセレクトボックスとしたが、これらの入力コントロールに限定するものではなく、他の入力コントロール、例えばカレンダー形式、別ウィンドウに入力コントロールを表示する等、「入力コントロール名６０１」よりも表示幅の狭い形式の入力コントロールを選択できるようにすればよい。
【００３２】
また、本実施形態においては、入力コントロール切替管理画面６００を入力コントロールの表示幅を狭くするための設定画面としたが、入力コントロールに限定するものではなく、例えば、アプリケーション画面に表示するラベルやオブジェクトの表示幅を狭くするための設定画面としてもよい。
【００３３】
「優先順位６０３」は、アプリケーションの実行によりエンドユーザの利用する情報処理装置に、アプリケーション設計画面にて受け付けた画面が表示された際にウィンドウの幅に収まらなかった場合、どの入力コントロールから順に種別を切り替えて表示するかの順番を示すものである。
【００３４】
例えば、図６は、ウィンドウの幅に収まらなかった場合、「テキストボックスＡ」「テキストボックスＣ」「テキストボックスＥ」「テキストボックスＧ」は表示を切り替えず（図６の６０４、６０６、６０８、６１０）、１番目に「テキストボックスＢ」をテキストエリアに切り替えて表示し（図６の６０５、図９の９０３）、それでも収まらなかった場合は、２番目に「ラジオボタンＦ」をセレクトボックスに切り替えて表示し（６０９、図９の９０５）、それでも収まらなかった場合は、３番目（６０７、図９の９０４）、４番目（６１１、図９の９０６）…というように表示する種別を切り替えるという設定である。
【００３５】
ステップＳ４０５において、ステップＳ４０４にて受け付けた入力コントロール切換の設定を入力コントロール切換定義情報６１２（図６）として外部メモリ２１１に記憶する。
【００３６】
ステップＳ４０６において、ビジネスロジックの設定を受け付ける（不図示）。ビジネスロジックとは、設計した画面を表示するために行う処理や、表示した画面を介して受け付けた操作に従って行う処理である。
ステップＳ４０７において、ステップＳ４０６にて受け付けたビジネスロジックを外部メモリ２１１に記憶する。
ステップＳ４０８において、開発者からアプリケーション構築の指示を受け付ける。
【００３７】
ステップＳ４０９において、ステップＳ４０３にて外部メモリ２１１に記憶した定義情報を用いて、画面情報を出力するプログラム（例えば、ＪＳＰファイル）を生成する。
【００３８】
ステップＳ４１０において、ステップＳ４０５にて外部メモリ２１１に記憶した入力コントロール切換設定を用いて、入力コントロールを切り替える制御プログラム（例えば、ＪａｖａＳｃｒｉｐｔ（登録商標）ファイル）を生成する。すなわち、ステップＳ４１０は、管理されている定義情報に基づいて画面情報を出力するプログラムを生成する処理の一例を示すステップである。
【００３９】
この制御プログラムは、具体的には、入力コントロール切替プログラム８０１（図８）のようなプログラムである。また、入力コントロール切替プログラム８０１は、入力コントロール切換定義情報６１２を含まず、別ファイルとして生成された入力コントロール切換定義情報６１２を参照して動作する。
【００４０】
なお、本実施形態においては、ステップＳ４１０にて生成する入力コントロール切替プログラム８０１には、入力コントロール切換定義情報６１２を含まないとしたが、これに限定するものではなく、入力コントロール切替プログラム８０１には入力コントロール切換定義情報６１２を含むとしてもよい。
なお、入力コントロール切替プログラム８０１の動作については、図７のフローチャートの説明にて後述する。
【００４１】
ステップＳ４１１において、ステップＳ４０７にて外部メモリ２１１に記憶したビジネスロジックを用いて、ビジネスロジックプログラム（例えば、Ｊａｖａ（登録商標）ファイル）を生成する。
【００４２】
ステップＳ４１２において、ステップＳ４０９〜ステップＳ４１１にて生成したプログラムまたはそれらをコンパイルした実行ファイル（例えば、Ｃｌａｓｓファイル）をアプリケーションサーバ１０５に配置（デプロイ）する。これにより、アプリケーションサーバ１０５上でアプリケーションが動作するようになる。
以上で、図４の説明を終了する。
【００４３】
図７は、アプリケーション実行のフローチャートの一例を示す図である。なお、以下のフローチャートの各ステップは、各装置のＣＰＵ２０１が実行する。
ステップＳ７０１において、アプリケーションクライアント１０４は、アプリケーション画面を表示するウィンドウの初期の幅を取得する。具体的には、アプリケーションのログイン画面の画面情報と共にダウンロードしたＪａｖａＳｃｒｉｐｔ（登録商標）等のプログラム（例えば、図８のウィンドウ幅取得プログラム８００）をブラウザ上で実行させてウィンドウの幅を取得し、後の処理で値を参照できるよう、クッキー等の形式でアプリケーションクライアント１０４に記憶しておく。ここでは、初期ウィンドウ幅＝８００ピクセルとする。
【００４４】
ステップＳ７０２において、アプリケーションクライアント１０４は、画面情報の要求を送信する。
ステップＳ７０３において、アプリケーションサーバ１０５は、画面情報の要求を受信する。
ステップＳ７０４において、アプリケーションサーバ１０５は、要求を受信した画面情報に対応する画面情報出力プログラム（例えば、ＪＳＰファイル）を実行し、画面情報を生成する。
【００４５】
ステップＳ７０５において、アプリケーションサーバ１０５は、生成した画面情報の画面部品に切替設定の有無を判定する。切替設定が有る場合はステップＳ７０６に進み、切替設定が無い場合はステップＳ７０７に進む。
ステップＳ７０６において、アプリケーションサーバ１０５は、入力コントロール切替プログラム８０１を取得する。
【００４６】
ステップＳ７０７において、アプリケーションサーバ１０５は、画面情報（入力コントロール切替プログラム８０１および入力コントロール切換定義情報６１２を含む）を送信する。なお、本実施形態においては、例えば、ＨＴＭＬファイルにＪａｖａＳｃｒｉｐｔ（登録商標）ソースを含められるように、画面情報に入力コントロール切替プログラム８０１および入力コントロール切換定義情報６１２を含むとしたが、これに限定するものではなく、ＨＴＭＬファイルとＪａｖａＳｃｒｉｐｔ（登録商標）ファイルのように、画面情報、入力コントロール切替プログラム８０１、入力コントロール切換定義情報６１２を別物として取り扱ってもよい。
【００４７】
ステップＳ７０８において、アプリケーションクライアント１０４は、画面情報（入力コントロール切替プログラム８０１および入力コントロール切換定義情報６１２を含む）を受信する。
ステップＳ７０９において、アプリケーションクライアント１０４は、受信した画面情報を用いて、アプリケーション画面を表示する（図９の９００）。
【００４８】
ステップＳ７１０において、アプリケーションクライアント１０４は、受信した入力コントロール切替プログラム８０１を用いて、ステップＳ７０９にて表示したアプリケーション画面のコンテンツの幅を取得する。具体的には、図８の８０３のような命令をブラウザ上で実行させて、コンテンツの幅を取得する。ここでは、表示コンテンツの幅＝９００ピクセルとする。
【００４９】
ステップＳ７１１において、アプリケーションクライアント１０４は、ステップＳ７０１と同様に、現在のウィンドウの幅を取得する。具体的には、図８の８０２のような命令をブラウザ上で実行させて、現在のウィンドウの幅を取得する。ここでは、現在のウィンドウ幅＝８００ピクセルとする。つまり、現在のウィンドウ幅＜表示コンテンツ幅であるため、表示コンテンツの一部（図９の９０１）がウィンドウ内に表示されないため、横スクロールが発生し、表示コンテンツ全体を閲覧するためには、ユーザはスクロールの操作をしなければならない。
【００５０】
ステップＳ７１２において、アプリケーションクライアント１０４は、ステップＳ７０１にて記憶した初期ウィンドウ幅とステップＳ７１１にて取得した現在のウィンドウ幅を比較する。初期ウィンドウ幅≦現在のウィンドウ幅の場合は、ウィンドウの幅が変更されていないまたはユーザによって拡げられたと捉えてステップＳ７１３に進み、初期ウィンドウ幅＞現在のウィンドウ幅の場合は、ユーザによってウィンドウの幅が縮められたと捉えて図７のフローチャートを終了する。
【００５１】
これにより、ユーザ自身がウィンドウの幅を変更していないまたは拡げた時は、表示幅の狭い入力コントロールに順次切り替えるように制御することができる。また、ユーザ自身がウィンドウの幅を敢えて縮めた時は、ユーザの意志を尊重し、表示幅の狭い入力コントロールに順次切り替えることをしないように制御することができる。すなわち、ステップＳ７１２は、生成されたプログラムにより出力された画面情報の幅がユーザによって縮小された場合、当該画面情報に含まれる入力コントロールをより幅の小さい入力コントロールへの変更を抑止する処理の一例を示すステップである。
【００５２】
ステップＳ７１３において、アプリケーションクライアント１０４は、ステップＳ７１１にて取得した現在のウィンドウ幅とステップＳ７１０にて取得した表示コンテンツ幅を比較する（図８の８０４）。現在のウィンドウ幅＜表示コンテンツ幅（図８の８０４：Ｔｒｕｅ）の場合は、横スクロールが発生していると捉えてステップＳ７１４に進み、現在のウィンドウ幅≧表示コンテンツ幅（図８の８０４：Ｆａｌｓｅ）の場合は、横スクロールが発生していないと捉えて図７のフローチャートを終了する。これにより、横スクロールが発生していない場合には、通常の入力コントロールで表示されるため、利便性を損なうことなく、入力コントロールを表示することができる。つまり、情報処理装置の画面サイズに従って、適した入力コントロールを表示することができる。
ステップＳ７１４において、アプリケーションクライアント１０４は、変数  ｉ  に１を設定する。
【００５３】
ステップＳ７１５において、アプリケーションクライアント１０４は、切替後部品が設定されている入力コントロールの分だけ繰り返す。言い換えると、入力コントロール切換定義情報６１２に定義されているレコードの数だけ繰り返す。
【００５４】
ステップＳ７１６において、アプリケーションクライアント１０４は、入力コントロール切換定義情報６１２に定義されているレコードのうち、優先順位＝  ｉ  の入力コントロールを特定する。ここでは、優先順位＝１として、「テキストボックスＢ」が特定されたとする（図６の６１３）。
【００５５】
ステップＳ７１７において、アプリケーションクライアント１０４は、特定された入力コントロールを切り替えるプログラム実行する。具体的には、図８の８０５〜８０６を実行し、部品ＩＤ６１４の入力コントロールを切替後入力コントロール６１５に切り替える。言い換えると、表示していた部品ＩＤ６１４を非表示にし（図８の８０５）、非表示にしていた表示幅の狭い切替後入力コントロール６１５を表示する（図８の８０６）。ここでは、「テキストボックスＢ」をテキストエリアに切り替えて表示する。
【００５６】
ステップＳ７１８において、アプリケーションクライアント１０４は、ステップＳ７１０と同様に、表示したアプリケーション画面のコンテンツの幅を取得する。これにより、ステップＳ７１７にて表示幅の狭い切替後入力コントロール６１５に表示を切り替えた後のコンテンツ幅を取得することができる。
【００５７】
ステップＳ７１９において、アプリケーションクライアント１０４は、ステップＳ７１１にて取得した現在のウィンドウ幅とステップＳ７１８にて取得した表示コンテンツ幅を比較する（図８の８０４）。現在のウィンドウ幅＜表示コンテンツ幅（図８の８０４：Ｔｒｕｅ）の場合は、横スクロールが発生していると捉えてステップＳ７２０に進み、現在のウィンドウ幅≧表示コンテンツ幅（図８の８０４：Ｆａｌｓｅ）の場合は、横スクロールが発生していないと捉えて図７のフローチャートを終了する。
【００５８】
これにより、横スクロールが発生している間は、表示幅の狭い入力コントロールに順次切り替えていき、横スクロールが発生しなくなった時点で、切り換えていく処理を停止することができる。つまり、情報処理装置の画面サイズに従って、適した入力コントロールを表示することができる。すなわち、画面情報は、当該画面情報を用いて表示されるコンテンツの幅が当該コンテンツを表示するウィンドウの幅に収まるまで、管理されている優先順位に基づいて当該画面情報に含まれる入力コントロールをより幅の小さい入力コントロールに変更を繰り返す制御に用いられる情報である。
ステップＳ７２０において、アプリケーションクライアント１０４は、変数  ｉ  の値に＋１をする。
【００５９】
ステップＳ７２１において、アプリケーションクライアント１０４は、入力コントロール切換定義情報６１２に定義されているレコードの数だけ繰り返した場合、図７のフローチャートを終了する。以上により、ウィンドウの幅に収まるアプリケーション画面が表示される（図９の９０２）。
以上で、図７の説明を終了する。
以上により、情報処理装置の画面サイズに従って、適した入力コントロールを表示することができる。
【００６０】
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムを読み出し、実行することによっても本発明の目的が達成されることは言うまでもない。
【００６１】
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した記録媒体は本発明を構成することになる。
【００６２】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＥＥＰＲＯＭ、シリコンディスク等を用いることが出来る。
【００６３】
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００６４】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００６５】
また、本発明は、複数の機器から構成されるシステムに適用しても、ひとつの機器から成る装置に適用しても良い。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【００６６】
上記プログラムの形態は、オブジェクトコード、インタプリタにより実行されるプログラムコード、ＯＳ（オペレーティングシステム）に供給されるスクリプトデータ等の形態から成ってもよい。
【００６７】
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【００６８】
１０１  プログラム生成装置
１０２  プログラム生成サーバ
１０３  データベースサーバ
１０４  アプリケーションクライアント
１０５  アプリケーションサーバ
１０６  ネットワーク
【図１】
2018063622.tif 000003
【図２】
2018063622.tif 000004
【図３】
2018063622.tif 000005
【図４】
2018063622.tif 000006
【図５】
2018063622.tif 000007
【図６】
2018063622.tif 000008
【図７】
2018063622.tif 000009
【図８】
2018063622.tif 000010
【図９】
2018063622.tif 000011