(57)【要約】      （修正有）【課題】１つの画面に配置した複数の部品がキー操作などのイベントに対して重複して応答するようなコーディングがなされていることをコーディングの段階で早期に検出すること。【解決手段】ビジュアルユーザインタフェースを持つプログラムにおける画面に配置された部品について、当該部品が応答するイベント情報と当該部品のイベントを受取る順序において親子関係にある他の部品の情報を格納したテーブル１０６５と、ユーザにより指定された部品に関して、プログラム処理の契機となるイベントの伝達順方向に存在する親子関係の部品をチェック対象とし、同じイベントに応答するイベント処理情報が前記テーブルに重複して格納されているかをチェックする手段１０７３と、チェック結果により、同じイベントに応答するイベント情報が設定されている部品を所定の形式で表示する手段とを備える。【選択図】図１
2006139569.tif 000002
【特許請求の範囲】
【請求項１】
所望の画面レイアウトを決定し、その画面レイアウトの画面中に表示部品や入力部品等の部品を配置して目的とする機能を満たす画面を作成する画面作成装置であって、
各画面に配置された部品について、当該部品が応答するイベント情報と当該部品のイベント受取り順序の上で親子関係にある他の部品識別情報を格納したテーブルと、
前記テーブルに格納された情報のうちイベント受け取り順序の方向に存在する親子関係の部品をチェック対象とし、当該イベントに応答する部品が前記テーブルに存在するかをチェックする手段と、
チェック結果により、当該イベントに応答する部品を所定の形式で表示する手段と
を備えることを特徴とする画面作成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、携帯電話機等の情報端末で使用するビジュアルユーザインタフェースを開発するのに好適な画面作成装置に係り、特に１つの画面に入力部品や表示部品などの複数の部品を配置した場合に、キー操作などのイベントに対して複数の部品が重複して応答するコーディングを記述しないようにするための支援機能を設けた画面作成装置に関するものである。
【背景技術】
【０００２】
これまでに、ビジュアルユーザインタフェースを持つプログラム、例えば、Visual C++、Visual BASIC等の開発ツールが提供されている。
この種の開発ツールを用いてビジュアルユーザインタフェースを構築する場合、目的とする機能を満たす画面を順次に作成し、その画面中の部品情報に基づいて、対応する処理プログラムを記述するという手法が用いられる。
またこの他の開発ツールを用いてこのような画面を作成する場合に、まず画面レイアウトを決定し、その画面レイアウトの中に入力部品や表示部品等の部品を配置することによってレイアウトと部品の積層構造をもつ画面を作成する手法がある。従来、この種の画面を作成する装置として、下記の特許文献１〜３に開示されたものがある。
【０００３】
【特許文献１】特開２００２−７３００４号公報
【特許文献２】特開２００２−１８２９１４号公報
【特許文献３】特開２００３−１１４７９３号公報
【０００４】
特許文献１に開示された画面レイアウトシステムは、複数の部品で構成される画面レイアウトを設定する場合に、１つの部品を親部品として扱い、子部品については表示させないようにしてＯＳの資源消費を減少させるようにしたものである。
特許文献２に開示された画面遷移表示装置は、画面の遷移関係を、それぞれの画面と各画面内で画面遷移を引き起こすボタン、各ボタンに関連する遷移先画面の関係をＧＵＩ表示し、複雑な画面遷移状況を判り易く表示するようにしたものである。
特許文献３に開示された画面遷移図編集装置は、画面遷移図で使用される画面レイアウト図と画面遷移図とを別個に保存することにより、ある階層の画面レイアウト図を参照して別の階層の画面レイアウト図を作成する場合の労力を削減するようにしたものである。
【０００５】
ところで、ビジュアルユーザインタフェースを搭載した携帯電話機にあっては、近時における表示素子の製造技術の進歩に伴って１つの画面内に多くの情報を精細に表示可能になって来ている。また、同じプログラムで様々な大きさの画面に対応するため、縦横比を変更して縮小・拡大しても全体の相対的なレイアウトが変わらないよう、相対表示画面の設計が求められている。
そこで、１つの画面のレイアウトを決定する際に、１つの画面を複数の相対分割領域に分割し、さらに各分割領域を相対的に再分割して入力部品や表示部品を容易に相対配置可能にする技術が求められている。
【０００６】
しかしながら、１つの画面を複数の分割領域に分割し、さらに各分割領域を再分割して入力部品や表示部品をその相対分割領域の上に載せるような積層構造で再配置した場合、ユーザが行った「選択キー操作」などの１つの外部操作イベントに対し、実際には１つの部品しか応答できないが、複数の部品が応答してしまうようなコーディングミスが発生する恐れがある。特に携帯電話機など、マウスのようなポインティングデバイスを用いて操作せず、キーの種類が少ない端末向けのソフトの場合、キー操作が画面上のどの部品に対する処理を誘引するのか、プログラム開発者は明確に意識しつづける必要があり、場合によっては、全くキー操作と結びつかない処理を誤って記述してしまう場合がある。
また、ビジュアルプログラムは、イベント駆動型プログラムであり、イベント駆動型プログラムは、次のような特徴をもっている。
（１）ユーザが操作を行っていないときは、プログラムは内部処理を行っているか、待機している。
（２）ユーザが何か操作をした時、プログラムはユーザが行った操作(イベント)に対応する処理を行う。
なお、イベントとは、「マウスをクリックする」、「selectキーを押す」、「タイマ割り込みが入る」などのプログラムに対する外部からのアクションを指す。
【０００７】
ここで、画面の構成を図１８に示すようなツリー構造で表現できるプログラム開発環境、すなわち画面部品を特定の領域上に載せていくようになっているプログラム開発環境について、考察する。
図１８において、１８０１はサンプル画面であり、次のような構造になっている。まず、画面全体に透明な上下相対２分割部品１８０３を配置し、画面を２分割する。その後、上の領域にはbitmap部品１８０４を、下の領域にはリスト部品１８０５を配置している。なお、リスト部品１８０５とは携帯電話機の電話帳のように複数の内容をリスト表示するための部品である。
この例では、イベントは画面のトップ１８０２から子部品(Bitmap部品,リスト部品)へ伝達される。イベントが発生すると、まず画面のトップ１８０２がイベント処理を試みる。自分の部品でイベントを処理するコードが記述されていない場合は、子部品へイベントを伝達する。
図１８の例では、親部品から子部品へイベントが伝達されるようになっているが、子部品から親部品へイベントが伝達されるような実行環境や、任意の順番でイベントが伝達される実行環境もある。
【０００８】
図１９は、各部品が処理するイベントの定義例である。画面上にはトップ部品も含めて４つの部品で構成されているが、実際にイベントを処理するのは「上下相対２分割部品」１８０３と「リスト部品」１８０５の２つである。そして、この画面で処理されるイベントは、「上移動キー押下」、「下移動キー押下」、「選択キー押下」の３種類である。
この環境では、特定のキーイベントを複数の部品が処理するコードの記述が存在することになる。
ここで、図１８のサンプル画面１８０１において、リスト部品１８０５が処理するイベントの重複についてチェックする。
リスト部品１８０５にイベントが伝達されてくる経路上にある部品は、「画面のトップ」１８０２と「上下相対２分割部品」１８０３の２つである。
リスト部品１８０５が処理するイベントは、図１９により「上移動キー押下」、「下移動キー押下」、「選択キー押下」の３種類であることが分る。
リスト部品１８０５が処理するイベントのうち「選択キー」は経路上の部品が処理していないので、重複は無い。
しかし、「上移動キー」イベントについては、経路上の部品のうち、「上下相対２分割部品」１８０３が処理しているため、「リスト部品」１８０５まで「上移動キー」イベントが伝達されない。
「下移動キー」イベントについても「上移動キー」の場合と同じ理由で、「リスト部品」１８０５まで「下移動キー」イベントが伝達されない。
以上のことから図１８のサンプル画面１８０１では、リスト部品１８０５の項目間の上下移動が出来ないという現象が発生してしまう。
この現象は、画面上の部品へイベントが渡ってくる経路上に「同一イベント」を「重複して処理する部品が存在する」という条件を満たす場合に発生する。
実行環境の仕様に詳しくない人がプログラムを作成すると、同一イベントを複数の部品で重複して処理する記述をしてしまうという、このような問題に陥りやすい。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、前記の特許文献１〜３に開示された技術にあっては、１つの画面に配置した複数の部品が１つのイベントに対して重複して応答するようなコーディングがなされていることを検出することについては何ら考慮されていない。
【００１０】
本発明の目的は、１つの画面に配置した複数の部品がキー操作などのイベントに対して重複して応答するようなコーディングを、コーディングする前の段階で早期に検出し、目的とするビジュアルプログラムを効率良く作成するのに貢献することができる画面作成装置を提供することにある。
【課題を解決するための手段】
【００１１】
上記目的を達成するために、本発明に係る画面作成装置は、所望の画面レイアウトを決定し、その画面レイアウトの画面中に表示部品や入力部品等の部品を配置して目的とする機能を満たす画面を作成する画面作成装置であって、
各画面に配置された部品について、当該部品が応答するイベント情報と当該部品のイベント受取り順序の上で親子関係にある他の部品識別情報を格納したテーブルと、前記テーブルに格納された情報のうちイベント受け取り順序の方向に存在する親子関係の部品をチェック対象とし、当該イベントに応答する部品が前記テーブルに存在するかをチェックする手段と、チェック結果により、当該イベントに応答する部品を所定の形式で表示する手段とを備えることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、画面上の部品へイベントが渡ってくる経路上に同一イベントを処理しようとしている部品が存在しないかをコーディングの前段階で早期に検出し、当該イベントに重複して応答するように定義された部品を開発者に提示することができる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明を図示する実施の形態に基づいて詳細に説明する。
図１は、本発明に係る画面作成装置の実施の形態を示すブロック構成図であり、入力装置を構成するキーボード１０１及びマウス１０２、レイアウト対象の画面を表示する表示装置１０３、メモリ１０４、レイアウト対象の画面を作成するための処理を行うＣＰＵ１０５を備えている。
メモリ１０６には、各種テーブル群の記憶領域とプログラム群の記憶領域が設けられ、テーブル群の記憶領域にはイベントテーブル１０６１、レイアウトテーブル１０６２、部品テーブル１０６３、画面構造テーブル１０６４、部品構造テーブル１０６５、イベント重複テーブル１０６６が設けられている。
プログラム群の記憶領域には、画面作成エディタ１０７１と部品作成エディタ１０７２、イベント重複チェック部１０７３、ソースコード生成部１０７４が記憶されている。
画面作成エディタ１０７１は、携帯電話機等の情報端末に搭載するビジュアルユーザインタフェースで用いる画面を作成・編集するプログラムである。
部品作成エディタ１０７２は、所望のレイアウトの画面内に配置するボタンなどの入力部品や表示部品を作成および編集するプログラムである。この部品作成エディタ１０７２は、新規に部品を作成する場合や、既に１つの画面内に配置されている部品を変更あるいは修正する場合に使用するものである。
イベント重複チェック部１０７３は、ユーザによって行われたイベントが渡ってくる経路上に同一イベントを処理しようとしている部品がないかをチェックするものである。
ソースコード生成部１０７４は、画面作成エディタ１０７１および部品作成エディタ１０７２で作成された画面を有するビジュアルプログラムのソースコードを生成するものである。
【００１４】
図２は、表示装置１０３に表示される画面レイアウト作成・編集画面２００の構成例を示す図である。
図２において、画面左上には、複数種類の画面レイアウトのアイコンを表示するレイアウトウインドウ２０１が表示され、その下部には、入力部品や表示部品などの部品を表示する部品ウインドウ２０２が表示されている。
また、画面右上には、ビジュアルユーザインタフェースにおける画面を編集するための画面編集ウインドウ２０３が表示され、その下部には画面編集ウインドウ２０３内の画面における部品を分割領域単位で編集（変更または修正）するための部品編集ウインドウ２０４が表示されている。
画面編集ウインドウ２０３は作成・編集対象の画面における相対画面分割の積層構造を表示するツリービューウインドウ２０３１と、１つの画面の内容を表示するプレビューウインドウ２０３２で構成されている。
部品編集ウインドウ２０４は、編集対象の１つの相対分割領域の部品をツリービューウインドウ２０３１から移動させてその相対分割領域内に配置されている部品を階層構造で表示するツリーウインドウ２０４１と、このツリーウインドウ２０４１内の１つの部品の内容を表示するプレビューウインドウ２０４２から構成されている。
イベントテーブル１０６１は、ビジュアルユーザインタフェースにおいて何らかの処理を引き起こす契機となるイベントの種別を登録したテーブルであり、例えば図３に示すように構成されている。
【００１５】
図３に示すイベントテーブル１０６１は、携帯電話機のビジュアルユーザインタフェースを作成する場合のイベントテーブル１０６１の構成例を示したものであり、その格納情報はイベントＮｏ．１０６１１、イベントＩＤ１０６１２、イベント種別１０６１３で構成されている。
例えば携帯電話機のファンクションキーの「上キー押下」操作についてはイベントＩＤ＝EVT_KEY_UPが登録されている。
レイアウトテーブル１０６２は、１つの画面を複数に相対分割する分割領域のレイアウトが異なる複数種類の画面レイアウトの定義情報を格納したものであり、その格納情報は図４に示すようにレイアウトＮｏ．１０６２１、レイアウトＩＤ１０６２２、分割方向１０６２３の情報が登録されている。
【００１６】
図４に例示する定義情報は、１つの画面を分割しない場合のレイアウト定義、左右方向に相対的に２分割する場合のレイアウト定義、上下方向に相対的に２分割する場合の定義の例を示すものであり、レイアウト「Ｎｏ．２」及び「Ｎｏ．３」の定義は図２のレイアウトウインドウ２０１におけるアイコン２０１１、２０１２に対応する。
本発明においては、図４の定義の他に、各種の分割の仕方を定義することができる。なお、ベースとなる分割していない画面を“TOP”と定義している。
部品テーブル１０６３は、画面に配置する複数種類の入力部品等の部品定義情報を格納したものであり、例えば図５に示すように、部品Ｎｏ．１０６３１、部品ＩＤ１０６３２、部品名、ビットマップデータの先頭アドレス１０６３４の情報が格納されている。
ここで例示する部品には、コマンドボタン、リスト、ビットマップ、テキスト、テキストボックス、ラジオボタン、チェックボックス、タブといったものが用意されている。
そして、それぞれの部品はビットマップデータ１０８としてメモリ１０６内に格納されている。
【００１７】
画面構造テーブル１０６４は、１つの画面を構成する画面レイアウトの種別（ＩＤ）と各画面分割階層に配置された部品種別（ＩＤ）と、各画面分割階層に配置された各部品が応答する外部操作イベントの情報とを格納するものであり、例えば図６（ａ）に示すように構成されている。
すなわち、図６（ａ）に示すように、部品Ｎｏ．１０６４１、部品名１０６４２、部品種別１０６４３、部品Ｎｏ．またはレイアウトＮｏ．１０６４４，処理イベント数１０６４５、イベントＩＤ（１）１０６４６〜（ｎ）および親部分Ｎｏ．１０６５０の情報で構成され、各画面分割階層における分割領域および部品毎に、これらの情報が格納されるようになっている。
この画面構造テーブル１０６４および後述の部品構造テーブル１０６５では、画面を分割するアイコンも部品（レイアウト部品）として扱っている。例えば、図２の上下方向に画面を相対的に２分割するアイコン２０１２については、レイアウトＮｏ．１０６４４として「２」が登録され、応答する外部操作イベントとしてイベントＩＤ＝１（上キー押下）、イベントＩＤ＝２（下キー押下）が登録されている。
部品構造テーブル１０６５は、各画面分割階層の各分割領域に配置した部品の種別の情報を画面分割階層別に格納するものであり、例えば図６（ｂ）に示すように、画面分割階層別の部品種別を親子関係で格納するようになっている。
図６（ｂ）においては、部品Ｎｏ．１０６５１、親部品Ｎｏ．１０６５２、子部品数１０６５３、子部品Ｎｏ．（１）１０６５４〜（ｍ）１０６５７の情報を格納するようになっている。
図６（ａ），（ｂ）に示す画面構造テーブル１０６４および部品構造テーブル１０６５の格納内容であった場合、図７（ａ）に示すような階層構造のレイアウトで部品が配置されていることになる。なお、部品Ｎｏ．は図５の部品テーブル１０６３で定義されたものである。
また、矢印７０１は外部操作のイベントの伝達方向を示している。
本発明では、１つの画面について、図７（ｂ）に示すように、必要な部品を積層構造で積み重ねる形式で作成する。
なお、部品（レイアウト用の部品を含む）がそれぞれ処理するイベントは、例えば前述の図１９に示したように対応している。
【００１８】
次に、以上の構成において、所望のレイアウトのアイコンを選択し、その選択したレイアウトの画面中に部品を配置する場合の操作手順について、図８〜図１２の画面レイアウト作成・編集画面を参照して説明する。
まず、図８に示すように、レイアウトウインドウ２０１から例えば画面を上下方向に２分割するアイコン２０１２を選択しドラッグアンドドロップ操作によって画面編集ウインドウ２０３のツリービューウインドウ２０３１に配置する。
すると、図９に示すように、ツリービューウインドウ２０３１に画面分割の積層構造が表示され、上下の分割領域に「部品を置いて下さい」というメッセージが表示される。
また、プレビューウインドウ２０３２には分割した画面の境界が破線２０３３で表示され、それぞれの分割領域に部品の配置を促すメッセージ「ドラッグアンドドロップして下さい」が表示される。
そこで、図１０に示すように、部品ウインドウ２０２から例えばビットマップ部品２０２１をツリービューウインドウ２０３１内の上側分割領域の「部品を置いて下さい」という表示位置に配置するドラッグアンドドロップ操作を行う。
すると、図１１に示すように、ツリービューウインドウ２０３１の上側の分割領域の「部品を置いて下さい」に代わってビットマップ部品が配置されたことが表示され、またプレビューウインドウ２０３２には、配置されたビットマップ部品２０３１のプレビュー画像が表示される。
【００１９】
次に、図１２に示すように、リスト部品２０２２をツリービューウインドウ２０３１内の下側の分割領域の「部品を置いて下さい」という表示位置に配置するドラッグアンドドロップ操作を行う。これにより、下側の分割領域の「部品を置いて下さい」に代わってリスト部品が配置されたことが表示され、またプレビューウインドウ２０３２には、配置されたリスト部品２０３２のプレビュー画像が表示される。
以上によって、前述の図１８に示したような積層構造の画面が作成される。
【００２０】
次に、画面作成エディタ１０７１の処理の詳細について図１３〜図１４のフローチャートを参照して説明する。
図１３は、レイアウトを作成した時に、内部データが作成され、プレビュー画面とツリービューに反映されるまでの処理手順を示すフローチャートである。
まず、図８におけるレイアウトウインドウ２０１から画面編集ウインドウ中のツリービューウインドウ２０３１へレイアウト用のアイコンをドラッグアンドドロップする（ステップ１３０１）。
次に、変数curDragにドラッグしたレイアウトのレイアウトNoを設定し、更に変数curDropにドロップした部品(もしくはレイアウト)の親部品Noを設定する（ステップ１３０２）。
そして、図６の画面構造テーブル１０６４にレコードを1件追加する（ステップ１３０３）。この確保したテーブルをcurTableとする。
次に、curTable内の部品名として画面内で一意なIDを設定し、更に部品種別として”レイアウト”、レイアウトNoとしてcurDrag、親部品No１０６５０としてcurDropをそれぞれ設定する（ステップ１３０４）。
次に、図９に示すように画面編集ウインドウ２０３のツリービューウインドウ２０３１に追加したレイアウトを追加表示する（ステップ１３０５）。
次に、curDrop(親部品)がレイアウト用の部品であるかを判定し（ステップ１３０６）、そうであれば、親の画面領域は、すでに分割表示されているので、今回のレイアウト配置で、親のレイアウトが分割表示された領域の片側を更に分割する。すなわち、プレビューウインドウ２０３２上で、すでに分割されている親の画面領域の片側を更に分割し、分割した領域の境界を点線で区切る（ステップ１３０７）。またcurDrop(親部品)がレイアウト用の部品でなかった場合には、親部品領域は分割されていない。このため、プレビューウインドウ２０３２上で、親画面領域を分割し、境界を点線で区切る（ステップ１３０８）。
次に、分割した領域上に例えば「部品を置いて下さい。」というメッセージを表示する（ステップ１３０９）。
以上により、レイアウト配置処理が終了する。
【００２１】
図１４は、部品を画面に配置した時に、内部データが作成されプレビュー画面とツリービューに反映されるまでの処理手順を示すフローチャートである。
まず、図１０に示すように部品ウインドウ２０２から画面編集ウインドウ２０３へ、必要な部品をドラッグアンドドロップする（ステップ１４０１）。
そして、変数curDragにドラッグした部品の部品Noを設定し、また変数curDropにドロップした部品(もしくはレイアウト)の親部品Noを設定する（ステップ１４０２）。
次に、画面構造テーブル１０６４にレコードを１件追加する（ステップ１４０３）。ここでは、確保したテーブルをcurTableとする。
次に、curTableの部品名に画面内で一意なIDを設定し、また部品種別に”部品”、レイアウトNoにcurDrag、親部品No１０６５０にcurDropを設定する（ステップ１４０４）。
次に、図１１に示すように画面編集ウインドウ２０３のツリービューウインドウ２０３１に、追加した部品を表示する（ステップ１４０５）。
次に、プレビューウインドウ２０３２の部品を配置する階層位置に表示されている「ドラッグアンドドロップして下さい」というメッセージを削除し、ステップ１４０１でドラッグアンドドロップした部品をプレビューウインドウ２０３２に表示する（ステップ１４０６）。
【００２２】
次に、以上のように配置した部品について、ユーザによって行われたイベントが渡ってくる経路上に同一イベントを処理するようにコーディングされている部品がないかをチェックするイベント重複チェック部１０７３のイベント重複チェック処理について説明する。
図１５は、イベント重複チェック処理関数の例、Node_checkの概要を示すフローチャートである。
この処理はある部品に関して、特定のイベントを処理するプログラムコードを記述しようとする際に、その特定のイベントを先に受取って処理してしまう他の部品が既に存在するかどうかを確認する処理である。
図１５に示すフローチャートでは、引数として現在処理を記述しようとしている部品の部品IDとイベントIDを指定する。また本関数例では、図６の部品構造テーブル１０６５における親部品が子部品より先にイベントを受取るものとし、その親部品がそのイベントに対する処理を持っていなければ、その子部品にイベントを渡すものとする。この例では示さないが、この逆に子部品から親部品へイベントを渡すプログラム開発環境でも同様の処理が適用できる。
図１５のフローチャートにおいて、この関数の引数には部品No.とイベントIDを指定する（ステップ１５００）。これらは、ツリービューウインドウ２０３１上でユーザが部品をクリックすることにより、対応する部品No.を画面構造テーブル１０６５から取得し、ユーザが現在どのイベントに対する処理を記述しようとしているのか指定させることによって、イベントIDを図３のイベントテーブル１０６１から取得することによって指定する。
この後、イベント重複フラグを初期化し（ステップ１５０１）、引数により指定された部品に親部品があるかどうか、部品構造テーブル１０６５により確認する（ステップ１５０２）。親部品が無ければ、指定された部品が最初にイベントを受取るので、イベント重複がない意味の戻り値＝０を設定して、図１６に示すイベント重複テーブル１０６６にその戻り値＝０を設定して終了する（ステップ１５０３）。
しかし、親部品が存在する場合、ステップ１５０４〜１５０９のループ（１）の処理において、その親部品が引数で指定されたイベントを処理しているかどうか画面構造テーブル１０６４の当該部品No.のレコード中の当該イベントIDを確認し（ステップ１５０５）、対応する処理があれば、イベント重複テーブル１０６６に部品ID、該当する親部品ID、重複フラグに戻り値＝１を設定し、さらに重複イベントIDを設定する（ステップ１５０６）。
また、図１７に示すように、画面編集ウインドウのツリービューウインドウ２０３１内にイベント重複メッセージ１７０３を出力し（ステップ１５０７）、さらにイベント重複がある意味の戻り値として重複フラグ＝１を設定し（ステップ１５０８）、全ての親部品、つまり親の親をTOPまでたどって確認する。戻り値が１の時、イベント重複テーブル１０６６の、重複フラグが１になっている最後のレコードにある部品IDを持つ部品がこのイベントを処理することになる。
ツリービューウインドウ２０３１上で、このイベントを処理する部品を図１７に示すような特定のマーク１７０１により表示し、引数に指定された部品は、引数で指定されたイベントを処理できない旨を図１７で示すような「×印」のマーク１７０２で表示し（ステップ１５１０）、イベント重複チェック用の関数を終了する。
【００２３】
なお、上記の説明では１つの画面を積層構造で相対分割し、それぞれの画面に複数の部品を配置した例を挙げているが、本発明は１つの画面内にイベントに対して応答する少なくとも２つの部品が配置される構成のものにおいても適用可能であることは言うまでもない。
【図面の簡単な説明】
【００２４】
【図１】本発明の実施の形態を示すブロック構成図である。
【図２】画面レイアウト作成・変種画面の例を示す図である。
【図３】部品が応答するイベント情報を登録したイベントテーブルの構成を示す図である。
【図４】画面レイアウトの定義情報を格納したレイアウトテーブルの構成を示す図である。
【図５】部品の定義情報を格納した部品テーブルの構成を示す図である。
【図６】１つの画面を構成するレイアウトの種別や配置部品、各部品が応答するイベント情報を登録する画面構造テーブルと、各分割階層に配置した部品の情報を登録する部品構造テーブルの構成を示す図である。
【図７】図６のテーブルの登録内容に対応する画面の積層構造を示す図である。
【図８】画面のレイアウトをレイアウト部品のドラッグアンドドロップ操作によって作成する段階の画面を示す図である。
【図９】部品の配置を促すメッセージが表示された状態を示す図である。
【図１０】部品をドラッグアンドドロップ操作によって配置する段階の画面を示す図である。
【図１１】配置された部品がプレビュー表示された状態を示す図である。
【図１２】レイアウトの残りの領域に、部品をドラッグアンドドロップ操作によって配置する段階の画面を示す図である。
【図１３】画面レイアウトの選択操作および部品配置操作に応答して画面構造テーブル等を作成する画面作成エディタの処理の概要を示すフローチャートである。
【図１４】画面作成操作によって作成された画面の積層構造や画面内容を表示する画面作成エディタの処理の概要を示すフローチャートである。
【図１５】イベント重複をチェックする処理を示すフローチャートである。
【図１６】イベント重複チェック結果を格納するイベント重複テーブルの構成を示す図である。
【図１７】イベント重複チェック結果の表示出力例を示す図である。
【図１８】画面分割の積層構造の一例を示す図である。
【図１９】図１８における各部品が応答するイベントの例を示す図である。
【符号の説明】
【００２５】
１０３  表示装置
１０４    メモリ
１０５    ＣＰＵ
２０１    レイアウトウインドウ
２０２    部品ウインドウ
２０３    画面編集ウインドウ
２０４    部品編集ウインドウ
１０６１    イベントテーブル
１０６２    レイアウトテーブル
１０６３    部品テーブル
１０６４    画面構造テーブル
１０６５    部品構造テーブル
１０６６    イベント重複テーブル
１０７１    画面作成エディタ
１０７２    部品作成エディタ
１０７３    イベント重複チェック部
２０１１    レイアウト用のアイコン
２０２１      ビットマップ部品
【図１】
2006139569.tif 000003
【図２】
2006139569.tif 000004
【図３】
2006139569.tif 000005
【図４】
2006139569.tif 000006
【図５】
2006139569.tif 000007
【図６】
2006139569.tif 000008
【図７】
2006139569.tif 000009
【図８】
2006139569.tif 000010
【図９】
2006139569.tif 000011
【図１０】
2006139569.tif 000012
【図１１】
2006139569.tif 000013
【図１２】
2006139569.tif 000014
【図１３】
2006139569.tif 000015
【図１４】
2006139569.tif 000016
【図１５】
2006139569.tif 000017
【図１６】
2006139569.tif 000018
【図１７】
2006139569.tif 000019
【図１８】
2006139569.tif 000020
【図１９】
2006139569.tif 000021