(57)【特許請求の範囲】
【請求項１】
コンピュータを用いて、画面の枠を規定するコンテナと当該コンテナ内に配置されたＧＵＩ部品とで構成された画面の表示制御を行う表示制御方法であって、
前記画面のサイズを拡大するイベントを検出するステップと、
メモリに格納され管理されている前記コンテナのサイズに関するデータを前記イベントに従って変更するステップと、
前記コンテナ上に予め設定された変形補助線を境界として、前記ＧＵＩ部品が当該変形補助線の両側に広がるように、メモリに格納され管理されている当該ＧＵＩ部品の位置及びサイズに関するデータを変更するステップと、
変更された前記コンテナのサイズ、前記ＧＵＩ部品の位置及びサイズに関するデータを反映させて前記画面を更新するステップと
を含むことを特徴とする表示制御方法。
【請求項２】
前記ＧＵＩ部品に関するデータを変更するステップは、前記ＧＵＩ部品の位置データを、前記変形補助線との位置関係に応じて変更し、前記変形補助線がその上に設定されている前記ＧＵＩ部品のサイズデータを、当該変形補助線に直交する向きに前記画面のサイズの変化量に応じて変更するステップを含むことを特徴とする請求項１に記載の表示制御方法。
【請求項３】
前記ＧＵＩ部品に関するデータを変更するステップは、
前記コンテナのサイズが最小である場合の前記画面における前記ＧＵＩ部品の位置及びサイズを基準とし、変更後の前記コンテナのサイズと当該コンテナの最小サイズとの差分に基づいて、変更後の前記ＧＵＩ部品の位置及びサイズを計算するステップを含むことを特徴とする請求項１に記載の表示制御方法。
【請求項４】
コンピュータを用いて、画面の枠を規定するコンテナと当該コンテナ内に配置されたＧＵＩ部品とで構成された画面の表示制御を行う表示制御方法であって、
前記画面のサイズを拡大するイベントを検出するステップと、
メモリに格納され管理されている前記コンテナのサイズに関するデータを前記イベントに従って変更するステップと、
前記コンテナ上に予め設定された変形補助線を境界として、前記ＧＵＩ部品が当該変形補助線の両側に広がり、かつ、当該コンテナの枠と当該変形補助線で囲まれた領域内では、当該ＧＵＩ部品の表示状態が変化しないように、メモリに格納され管理されている当該ＧＵＩ部品の位置及びサイズに関するデータを変更するステップと、
変更された前記コンテナのサイズ及び前記ＧＵＩ部品の位置及びサイズに関するデータを反映させて前記画面を更新するステップと
を含むことを特徴とする表示制御方法。
【請求項５】
前記ＧＵＩ部品を移動させる際に、複数の領域にまたがる前記ＧＵＩ部品に関しては、当該領域ごとの移動量に応じてサイズを変更するステップをさらに含むことを特徴とする請求項４に記載の表示制御方法。
【請求項６】
コンピュータを制御して、画面の枠を規定するコンテナと当該コンテナ内に配置されたＧＵＩ部品とで構成された画面の表示制御を行うプログラムであって、
前記画面のサイズを拡大するイベントを検出する処理と、
メモリに格納され管理されている前記コンテナのサイズに関するデータを前記イベントに従って変更する処理と、
前記コンテナ上に予め設定された変形補助線を境界として、前記ＧＵＩ部品が当該変形補助線の両側に広がるように、メモリに格納され管理されている当該ＧＵＩ部品の位置及びサイズに関するデータを変更する処理と、
変更された前記コンテナのサイズ、前記ＧＵＩ部品の位置及びサイズに関するデータを反映させて前記画面を更新する処理とを
前記コンピュータに実行させることを特徴とするプログラム。
【請求項７】
前記プログラムによる前記ＧＵＩ部品に関するデータを変更する処理は、
前記コンテナのサイズの変化量を、前記ＧＵＩ部品を形成する矩形の各頂点の前記変形補助線に対する距離に反映させる処理を含むことを特徴とする請求項６に記載のプログラム。
【請求項８】
前記プログラムによる前記ＧＵＩ部品に関するデータを変更する処理は、
前記ＧＵＩ部品の位置及びサイズの変化量を、同一方向の変化の基準となる前記変形補助線の本数に応じて決定するステップを含むことを特徴とする請求項７記載のプログラム。
【請求項９】
前記プログラムによる前記ＧＵＩ部品に関するデータを変更する処理は、
前記コンテナのサイズが最小である場合の前記画面における前記ＧＵＩ部品の位置及びサイズを基準とし、変更後の前記コンテナのサイズと当該コンテナの最小サイズとの差分に基づいて、変更後の前記ＧＵＩ部品の位置及びサイズを計算する処理を含むことを特徴とする請求項６に記載のプログラム。
【請求項１０】
コンピュータを制御して、画面の枠を規定するコンテナと当該コンテナ内に配置されたＧＵＩ部品とで構成された画面の表示制御を行うプログラムであって、
前記画面のサイズを拡大するイベントを検出する処理と、
メモリに格納され管理されている前記コンテナのサイズに関するデータを前記イベントに従って変更する処理と、
前記コンテナ上に予め設定された変形補助線を境界として、前記ＧＵＩ部品が当該変形補助線の両側に広がり、かつ、当該コンテナの枠と当該変形補助線で囲まれた領域内では、当該ＧＵＩ部品の表示状態が変化しないように、メモリに格納され管理されている当該ＧＵＩ部品の位置及びサイズに関するデータを変更する処理と、
変更された前記コンテナのサイズ及び前記ＧＵＩ部品の位置及びサイズに関するデータを反映させて前記画面を更新する処理と
を前記コンピュータに実行させることを特徴とするプログラム。
【請求項１１】
前記ＧＵＩ部品を移動させる際に、複数の領域にまたがる前記ＧＵＩ部品に関しては、当該各領域ごとの移動量に応じてサイズを変更するステップをさらに含むことを特徴とする請求項１０に記載のプログラム。
【請求項１２】
前記ＧＵＩ部品を移動させる際に、前記ＧＵＩ部品を形成する矩形の各頂点の前記コンテナに対する座標値を、当該各頂点が位置する前記領域ごとの移動量に応じて変更するステップを含むことを特徴とする請求項１０に記載のプログラム。
【請求項１３】
所定の画面を表示する表示部と、
前記画面の外枠を規定するコンテナ内にＧＵＩ部品を配置することにより前記表示部に表示される前記画面のデータを生成する配置制御部と、
前記画面を拡大するイベントを検出するイベント検出部とを備え、
前記配置制御部は、前記画面に予め設定されている変形補助線を境界として、前記ＧＵＩ部品が当該変形補助線の両側に広がるように、当該ＧＵＩ部品の位置及びサイズを制御することを特徴とする情報処理装置。
【請求項１４】
基準となるサイズの前記画面における前記ＧＵＩ部品の情報を格納した基本情報格納部をさらに備え、
前記配置制御部は、変形後の前記画面のサイズと前記基本情報格納部に格納されている前記画面のサイズとの差分に基づいて、前記基本情報格納部に格納されている前記ＧＵＩ部品の情報を処理することにより、前記ＧＵＩ部品の位置及びサイズを制御することを特徴とする請求項１３に記載の情報処理装置。
【請求項１５】
ユーザ・インターフェイスを提供する所定の画面を表示する表示手段と、
前記表示手段に表示される画面の表示を制御する表示制御手段とを備え、
前記表示手段にて表示される画面は、
前記画面の外枠を規定するコンテナと、
前記コンテナ内に配置されるＧＵＩ部品と、
前記コンテナ上に設定された変形補助線とを備え、
所定の入力手段を介して前記コンテナのサイズを拡大する操作が行われた場合に、前記変形補助線を境界として、前記ＧＵＩ部品が当該変形補助線の両側に広がるように、当該ＧＵＩ部品の位置及びサイズが変化することにより、前記画面が更新されることを特徴とする情報処理装置。
【請求項１６】
前記表示手段にて表示される画面は、
前記画面の外枠を規定する矩形のコンテナと、
前記コンテナ上に当該コンテナの所定の辺に直行する変形補助線と
を備えることを特徴とする請求項１５に記載の情報処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、コンピュータの表示装置などに表示される画面の表示制御方法に関し、特に画面のサイズが変更された場合の当該画面のデザインを制御する方法に関する。
【０００２】
【従来の技術】
コンピュータで利用されるユーザ・インターフェイスの一般的なものに、テキスト等を入力するための入力フィールドと当該入力フィールドに入力する情報の説明などを記述したラベルとを組み合わせたものがある。業務アプリケーションのユーザ・インターフェイスには、この種のラベルと入力フィールドとの組合せを非常に密に配置する場合が多い。そのため、この配置を決定する際の作業効率は、当該業務アプリケーションにおける画面開発の生産性に大きく影響する。
【０００３】
図１５は、ラベルと入力フィールドとの組合せによる入力画面の例を示す図である。
図１５に示すように、入力画面は、当該入力画面の外枠を規定する所定の矩形（コンテナ１５００）の中に別の矩形（ＧＵＩ部品）を配置することによって設計されている。図１５には、ＧＵＩ部品として、ラベル１５０１、入力フィールド１５０２、コマンド入力用のボタン１５０３が配置されている。なお、ラベル１５０１は、コンテナ１５００中にテキストのみが表示されているが、コンテナ１５００と同色の矩形が存在するものとして扱う。
図１５において、各ＧＵＩ部品は、コンテナ１５００中で、矩形の決まった位置（例えば左上の頂点など）のＸ−Ｙ座標と矩形の幅（Ｗ）及び高さ（Ｈ）とで、配置位置を特定されている（以下、これらのパラメータをまとめてＸＹＷＨと表記する）。
【０００４】
通常、ＧＵＩで用意される画像は、コンピュータの表示装置における表示画面上で表示サイズや表示位置を変更することができる。図１５に示した入力画面では、コンテナ１５００の表示サイズが変更された場合、変更後の新たな表示サイズに合わせてラベル１５０１やボタン１５０３の表示位置、入力フィールド１５０２の表示サイズなどを適宜変更して画面全体のバランスを取ることが必要となる。このラベル１５０１、入力フィールド１５０２及びボタン１５０３の表示の変更については、通常、かかる画面の開発用のソフトウェアにおいてツールが用意されており、例えばＪａｖａであればGirdBagLayout等が使用される。
【０００５】
【発明が解決しようとする課題】
業務アプリケーションなどの開発過程で、ユーザ・インターフェイスとなる画面を設計する際には、通常、上述したコンテナ及びＧＵＩ部品のサイズや配置を試行錯誤しながら決めていく。しかし、コンテナの表示サイズを変更（拡大）した場合、画面のどの部分を伸張するのか、ＧＵＩ部品の表示サイズや配置をどのように変更するのかなど、考慮すべきことが多く、画面設計の作業における生産性の低下を招いていた。
さらに、ＧＵＩ部品の表示サイズ及び表示位置がＸＹＷＨの値で特定されていることから、直感的に選択される表示サイズや配置を実際の画面に反映させるために煩雑な作業が必要であり、効率が悪かった。
【０００６】
また、米国マイクロソフト社のVisual Basicなどで用意されているツールでは、コンテナのサイズを変更すると、それに比例してコンテナ内の部品のサイズや配置を変更する機能も存在するが、この場合、ラベルや入力フィールドに入力される文字も単純にコンテナのサイズに比例して大きくなってしまうため、画面の表示サイズの変更に応じてＧＵＩ部品の配置を変更し画面全体のバランスを取ろうとする用途には、好ましくない。
【０００７】
そこで、本発明は、ユーザ・インターフェイスの画面設計において、画面の表示サイズの変更に応じて、画面を再設計する作業の生産性を向上させることを目的とする。
また本発明は、直感的に選択される表示サイズや配置を実際の画面に容易に反映させることのできる、画面の表示制御方法を実現することを他の目的とする。
【０００８】
【課題を解決するための手段】
上記の目的を達成するため、本発明は、コンピュータを用いて、画面の枠を規定するコンテナと、このコンテナ内に配置されたＧＵＩ部品とで構成された画面の表示制御を行う、次のような表示制御方法として実現される。すなわち、この表示制御方法は、表示装置に表示されている前記画面のサイズを変更するイベントを検出するステップと、この画面におけるコンテナのサイズに関するデータを検出されたイベントに従って変更するステップと、コンテナ内に配置されているＧＵＩ部品の位置及びサイズに関するデータをコンテナ上に予め設定された変形補助線を基準として変更するステップと、変更されたコンテナのサイズ、ＧＵＩ部品の位置及びサイズに関するデータを反映させて画面を更新するステップとを含むことを特徴とする。
【０００９】
この表示制御方法において、ＧＵＩ部品に関するデータを変更する際、さらに詳しくは、ＧＵＩ部品の位置データを、この変形補助線との位置関係に応じて変更する。そして、変形補助線がその上に設定されているＧＵＩ部品のサイズデータを、この変形補助線に直交する向きに前記画面のサイズの変化量に応じて変更する。
あるいは、ＧＵＩ部品に関するデータを変更する際に、コンテナのサイズの変化量を、ＧＵＩ部品を形成する矩形の各頂点の変形補助線に対する距離に反映させる。
これらの処理により、変形補助線に基づいてＧＵＩ部品の適切な配置制御を行うことが可能となる。
【００１０】
また、好ましくは、ＧＵＩ部品に関するデータを変更する際に、コンテナのサイズが最小である場合の画面におけるＧＵＩ部品の位置及びサイズを基準とし、変更後のコンテナのサイズと最小サイズとの差分に基づいて、変更後のＧＵＩ部品の位置及びサイズを計算する。
これにより、画面のサイズが変更された場合には常に最小サイズの画面との比較によってＧＵＩ部品の配置制御を行えば良く、処理が単純化し、処理コストを低下させることができる。
さらに、変形補助線は同一方向の変化に対して複数本設けることができる。この場合、ＧＵＩ部品の位置及びサイズの変化量を、同一方向の変化の基準となる変形補助線の本数に応じて決定する。各変形補助線に対して重み付けを行い、ＧＵＩ部品の位置及びサイズの変化量に反映させても良いし、単純に、画面のサイズの変化量を変形補助線の本数で割った量を、各変形補助線に対するＧＵＩ部品の位置及びサイズの変化量とすることもできる。
【００１１】
また、本発明による他の表示制御方法は、表示装置に表示されている画面のサイズを変更するイベントを検出するステップと、この画面におけるコンテナのサイズに関するデータを検出されたイベントに従って変更するステップと、コンテナ内に配置されているＧＵＩ部品の位置及びサイズに関するデータをこのコンテナを区切って形成される領域ごとに移動させる量を算出して変更するステップと、変更されたコンテナのサイズ及びＧＵＩ部品の位置及びサイズに関するデータを反映させて画面を更新するステップとを含むことを特徴とする。
さらに好ましくは、この表示制御方法は、ＧＵＩ部品を移動させる際に、複数の領域にまたがるＧＵＩ部品に関しては、この領域ごとの移動量に応じてサイズを変更するステップをさらに含む。
また、このＧＵＩ部品を移動させる際に、より詳細には、ＧＵＩ部品を形成する矩形の各頂点のコンテナに対する座標値を、各頂点が位置する領域ごとの移動に応じて変更するステップを含む。
【００１２】
さらに本発明は、上述した表示制御方法の各ステップに対応する処理を、コンピュータを制御して実行するプログラムとして実現することができる。このプログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記録媒体に格納して配布したり、ネットワークを介して配信したりすることにより、提供することができる。
【００１３】
また、上記の目的を達成する他の本発明は、次のように構成された情報処理装置として実現することができる。すなわち、この情報処理装置は、所定の画面を表示する表示部と、この画面の外枠を規定するコンテナ内にＧＵＩ部品を配置することにより表示部に表示される画面のデータを生成する配置制御部と、この画面を変形するイベントを検出するイベント検出部とを備える。そして、この配置制御部は、画面に予め設定されている変形補助線の部分で、検出されたイベントに応じて、この画面の縦方向もしくは横方向またはその両方のサイズの変更がなされるように、ＧＵＩ部品の位置及びサイズを制御することを特徴とする。
この情報処理装置は、基準となるサイズの前記画面における前記ＧＵＩ部品の情報を格納した基本情報格納部をさらに備える構成とすることができる。この場合、配置制御部は、変形後の前記画面のサイズと基本情報格納部に格納されている画面のサイズとの差分に基づいて、基本情報格納部に格納されているＧＵＩ部品の情報を処理することにより、ＧＵＩ部品の位置及びサイズを制御する。
【００１４】
さらにまた、本発明の他の情報処理装置は、ユーザ・インターフェイスを提供する所定の画面を表示する表示手段と、この表示手段に表示される画面の表示を制御する表示制御手段とを備える。この表示手段にて表示される画面は、この画面の外枠を規定するコンテナと、このコンテナ内に配置されるＧＵＩ部品と、このコンテナ上に設定された変形補助線とを備えることを特徴とする。そして、所定の入力手段を介してコンテナのサイズを変更する操作が行われた場合に、この変形補助線を基準としてＧＵＩ部品の位置及びサイズが変化することにより、この画面が更新される。
ここで、この表示手段にて表示される画面は、画面の外枠を規定する矩形のコンテナと、このコンテナ上にコンテナの所定の辺に直行する変形補助線とを備える構成とする。
【００１５】
【発明の実施の形態】
以下、添付図面に示す実施の形態に基づいて、この発明を詳細に説明する。
まず、本発明の概要を説明する。本発明は、コンテナの矩形に対して所定の線を設定する（この線を変形補助線と称す）。そして、コンテナのサイズを変更する際に、当該変形補助線の部分が変化するように、コンテナ内のＧＵＩ部品の配置を変更する。例えば、コンテナを拡大する場合、変形補助線を基準にその両側へ伸張するように各ＧＵＩ部品を移動したり拡大したりする。これにより、コンテナのサイズを変更した場合にＧＵＩ部品をどのように再配置して画面を構成するかを、直感的な操作で制御することが実現できる。
【００１６】
図１は、本実施の形態による画面設計システムを実現するのに好適なコンピュータ装置のハードウェア構成の例を模式的に示した図である。
図１に示すコンピュータ装置は、演算手段であるＣＰＵ（Central Processing Unit：中央処理装置）１０１と、Ｍ／Ｂ（マザーボード）チップセット１０２及びＣＰＵバスを介してＣＰＵ１０１に接続されたメインメモリ１０３と、同じくＭ／Ｂチップセット１０２及びＡＧＰ（Accelerated Graphics Port）を介してＣＰＵ１０１に接続されたビデオカード１０４と、ビデオカード１０４にて生成されたグラフィックデータを表示する表示装置１１０と、ＰＣＩ（Peripheral Component Interconnect）バスを介してＭ／Ｂチップセット１０２に接続されたハードディスク１０５及びネットワークインターフェイス１０６と、さらにこのＰＣＩバスからブリッジ回路１０７及びＩＳＡ（Industry Standard Architecture）バスなどの低速なバスを介してＭ／Ｂチップセット１０２に接続されたフロッピーディスクドライブ１０８及びキーボード／マウス１０９とを備える。表示装置１１０としては、例えば液晶ディスプレイ（ＬＣＤ）やＣＲＴディスプレイを用いることができる。
なお、図１は本実施の形態を実現するコンピュータ装置のハードウェア構成を例示するに過ぎず、本実施の形態を適用可能であれば、他の種々の構成を取ることができる。例えば、ビデオカード１０４を設ける代わりに、ビデオメモリのみを搭載し、ＣＰＵ１０１にてイメージデータを処理する構成としても良いし、音声による入出力を行うためのサウンド機構を設けたり、ＡＴＡ（AT Attachment）などのインターフェイスを介してＣＤ−ＲＯＭ（Compact Disc Read Only Memory）やＤＶＤ−ＲＯＭ（Digital Versatile Disc Read Only Memory）のドライブを設けたりしても良い。
【００１７】
図２は、本実施の形態による画面設計システムの機能を説明するブロック図である。
図２を参照すると、本実施の形態は、設計される画面（以下、設計対象画面）を表示する表示部１０と、設計対象画面における各要素（コンテナ及びコンテナ内に配置されるラベルや入力フィールドなどのＧＵＩ部品）の配置を制御する配置制御部２０と、当該ＧＵＩ部品の配置に関する基本情報を格納した基本情報格納部３０と、表示部１０に表示される設計対象画面を構成するＧＵＩ部品を管理するための画面管理部４０及び配置情報格納部５０と、設計対象画面のサイズ変更及びＧＵＩ部品の再配置を行うためのイベントを検出するイベント検出部６０とを備える。
【００１８】
図２に示したシステム構成において、表示部１０は、ビデオカード１０４で生成された設計対象画面のグラフィックデータを表示する表示装置１１０の表示画面にて実現される。配置制御部２０、画面管理部４０及びイベント検出部６０は、図１に示したプログラム制御されたＣＰＵ１０１にて実現されるソフトウェアブロックである。ＣＰＵ１０１を制御してこれらの機能を実現するプログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記録媒体に格納して配布したり、ネットワークを介して配信したりすることにより提供され、メインメモリ１０３に読み込まれる。また、基本情報格納部３０及び配置情報格納部５０は、メインメモリ１０３にて実現される。なお、メインメモリ１０３に保持されるデータやプログラムは、必要に応じてハードディスク１０５などの記憶装置に退避させることができる。
【００１９】
本実施の形態において、配置制御部２０は、設計対象画面を構成する各要素の配置を制御する。すなわち、設計対象画面の外枠を規定するコンテナとコンテナ内に配置される各種のＧＵＩ部品の位置及びサイズを制御して、設計対象画面のデータを生成する。設計対象画面のサイズ（コンテナのサイズ）が変更された場合には、その変更に合わせて、コンテナ内にあるＧＵＩ部品の位置及びサイズを変更する。配置制御部２０の具体的な動作については後述する。配置制御部２０にて生成された設計対象画面のデータは、配置情報格納部５０に格納され、画面管理部４０にて管理される。
基本情報格納部３０は、配置制御部２０が設計対象画面の要素の配置を制御するための基本的な情報を格納している。この基本的な情報には、設計対象画面（コンテナ）のサイズの初期値（Ｗ、Ｈ）、コンテナ内に配置されるＧＵＩ部品の位置及びサイズの初期値（ＸＹＷＨ）、設計対象画面のサイズを変更する際の変形の基準となる変形補助線の位置が含まれる。なお、本実施の形態では、ＧＵＩ部品の位置を示すＸ−Ｙ座標は、コンテナの左上の頂点を原点として、各ＧＵＩ部品における左上の頂点の位置を示すものとする。
【００２０】
画面管理部４０は、実際に表示部１０に表示される設計対象画面における配置されるＧＵＩ部品の位置及びサイズを管理する。ＧＵＩ部品の位置及びサイズのデータ（ＸＹＷＨ）は、配置制御部２０にて生成され、配置情報格納部５０に格納されている。すなわち、画面管理部４０は、配置情報格納部５０に格納されているラベル、入力フィールドなどのＧＵＩ部品に関する位置データ（Ｘ座標、Ｙ座標）及びサイズデータ（Ｗ、Ｈ）を管理しており、この管理情報に基づいて、図１に示したビデオカード１０４により設計対象画面のグラフィックデータが生成され、表示部１０に設計対象画面の画像が表示される。
【００２１】
イベント検出部６０は、設計対象画面のサイズ変更などのイベントを検出し、配置制御部２０に通知する。このイベント検出に応じて配置制御部２０による処理が開始される。イベントは、例えばユーザによるマウスやキーボードなどの入力デバイスの操作から検出したり、所定のアプリケーションの処理として発生させたりすることができる。
【００２２】
次に、本実施の形態の動作について説明する。
図３は、本実施の形態における表示部１０に表示された設計対象画面の例を示す図である。
図３を参照すると、この設計対象画面は、コンテナ３００と、コンテナ３００内に配置されたラベル３１１〜３１６と、入力フィールド３２１〜３２６と、ボタン３３１、３３２とで構成されている。また、この設計対象画面には、画面のサイズを変更した際に、画面の変形の基準となる変形補助線３４１、３４２が設定されている。この変形補助線３４１、３４２は、設計対象画面上の所定の位置に設定されているが、表示はされない。
【００２３】
図３に示すように、この種の設計対象画面は、大きい矩形（コンテナ３００）の中に小さい矩形（各ＧＵＩ部品）を配置する構成を有している。したがって、縦横に直行する変形補助線３４１、３４２を設定し、設計対象画面の変形に伴うコンテナ３００の縦方向及び横方向のサイズの変化量を、各ＧＵＩ部品の４つの頂点の変形補助線３４１、３４２からの距離に反映させることで、設計対象画面の変形に応じて各ＧＵＩ部品の配置及びサイズをどのように変えるかを容易かつ柔軟に制御することが可能となる。
【００２４】
図３に示した設計対象画面のサイズを変更すると、当該設計対象画面は、変形補助線３４１、３４２を基準としてＧＵＩ部品の配置やサイズが変更される。
図４は、図３の設計対象画面を拡大した状態を示す図である。
図４を参照すると、設計対象画面は変形補助線３４１、３４２を基準としてその両側へ伸張している。すなわち、コンテナ３００の幅方向（横方向）へは、変形補助線３４１を境界として当該変形補助線３４１の両側へ広がるように変形し、コンテナ３００の高さ方向（縦方向）へは、変形補助線３４２を境界として当該変形補助線３４２の両側へ広がるように変形している。言い換えれば、コンテナ３００の枠線と変形補助線３４１、３４２で囲まれた４つの領域内ではＧＵＩ部品の表示状態が変化せず、コンテナ３００の拡大によって広がった各領域の間隙を補充するようにＧＵＩ部品の変形がなされる。
【００２５】
これにより、図３において変形補助線３４１、３４２により４つの区画（領域）に分割されている設計対象画像のうち、どの区画に配置されているかに応じて、ＧＵＩ部品の配置及びサイズの変更が行われる。
左上の区画に位置するラベル３１１〜３１６及び入力フィールド３２１〜３２３は変形前と同じサイズで同じ位置に配置されている。右上の区画に位置するボタン３３１、３３２は、変形補助線３４１を基準としたコンテナ３００の変形にしたがって右方向へ移動している（ただし、コンテナ３００の左上の頂点（原点）を基準とする）。左上と右上の区画にまたがる入力フィールド３２４、３２５は、変形補助線３４１を基準としたコンテナ３００の変形にしたがって幅（Ｗ）方向のサイズが伸びている。また４つの区画全てにまたがる入力フィールド３２６は、変形補助線３４１、３４２を基準としたコンテナ３００の変形にしたがって、幅（Ｗ）方向、高さ（Ｈ）方向共にサイズが伸びている。
【００２６】
以上のように、変形補助線３４１、３４２を設計対象画面のどの位置に設定するかによって、設計対象画面を変形した際にどのＧＵＩ部品をどのように移動または変形させるかという直感的な判断を、繁雑な作業を解することなく決定することが可能となる。
また、図３、４に示した例では、横方向の１本の変形補助線３４２と、縦方向の１本の変形補助線３４１という合計２本の変形補助線３４１、３４２でＧＵＩ部品の移動及び変形を制御したが、変形補助線の本数をさらに増やしてＧＵＩ部品の移動及び変形を制御することも可能である。
【００２７】
図５は、図３と同様の設計対象画面に対して、横方向２本、縦方向１本の変形補助線を設定した状態を示す図である。また、図６は、図５の設計対象画面を拡大した状態を示す図である。
図５と図６とを比較すると、横方向へは、変形補助線３４１を境界として当該変形補助線３４１の両側へ広がるように変形し、縦方向へは、２本の変形補助線３４２ａ、ｂを境界として当該変形補助線３４２ａ、ｂの両側へ広がるように変形している。
横方向への変化は、図３及び図４に示した例と同様であるが、縦方向への変形は、変形補助線３４２ａ、ｂが２本あるため、それぞれの変形補助線３４２ａ、ｂを跨ぐ入力フィールド３２４、３２６が高さ（Ｈ）方向に伸びている。
ここで、変形補助線３４２ａ、ｂのように、複数の変形補助線が存在する場合、各変形補助線に対して重みを設定し、その重みに応じて変化量に差を与えることもできるし、単純にコンテナ３００のサイズの変化量を変形補助線の本数で割った値（すなわち、図示の例ではコンテナ３００のサイズにおける変化量の２分の１）とすることもできる。本実施の形態では、後者のような制御を行うものとする。
【００２８】
なお、図５を参照すると、ラベル３１４が変形補助線３４２ａを跨いでおり、図６に示す状態ではラベル３１４を形成する矩形も高さ（Ｈ）方向に伸びている（ラベル３１４の矩形はコンテナ３００と同色であるので、図からは判別できない）。しかし、文字列の描画位置を「上に寄せる」に指定しておくことにより、図６に示すように、上方に寄った表示とすることができる。また、ラベルは文字列を表示するという用途からサイズが変更してしまうことは好ましくないとして、サイズ変更を行わず、左上の頂点を基準として移動のみを行うように表示制御を制限しても良い。
【００２９】
図７は、本実施の形態における設計対象画面のサイズ変更時の処理を説明するフローチャートである。
本実施の形態では、設計対象画面に関する基本的な情報として、予めサイズが最小である場合の設計対象画面を生成して、その場合の設定値を基本情報格納部３０に格納しておく。そして、変更された設計対象画面のサイズに応じて、この基本情報格納部３０に格納されている情報を基準としてＧＵＩ部品の再配置及びサイズ変更を行うこととする。すなわち、ある程度拡大された設計対象画面を縮小するように変形した場合でも、サイズが最小である場合の設定値に基づいて、新しいサイズにおける設計対象画面を再計算する。サイズが最小の場合の設定値を基準とすることによって、常に、設計対象画面の変形は縦方向または横方向への拡大として扱うことができ、処理を簡単化することができる。
【００３０】
図７に示すように、まず、イベント検出部６０により、設計対象画面のサイズを変更するイベントを検出し、配置制御部２０に通知する（ステップ７０１）。このイベントは、例えば、ユーザがマウスなどのポインティングデバイスを用いて設計対象画面（コンテナ３００）の枠線をドラッグしてサイズの変更や変形を行う操作によって発生する。
このイベントが検出されると、配置制御部２０は、基本情報格納部３０からコンテナ３００のサイズの初期値（Ｗ、Ｈ）を読み出し、検出されたイベントにて変更された設計対象画面のサイズのデータ（Ｗ、Ｈ）との差分（すなわち、初期値に対する変化量）を計算する（ステップ７０２）。
そして、計算された差分に基づき、コンテナ３００内のＧＵＩ部品に関して、位置及びサイズを示す座標データ（ＸＹＷＨ）を変更する（ステップ７０３、７０４）。なお、横方向の座標変更（ステップ７０３）と縦方向の座標変更（ステップ７０４）とは、処理の内容は同様であり、どちらを先に行っても構わない。
【００３１】
図８は、図７のステップ７０３、７０４における座標変更処理の詳細を説明するフローチャートである。
図８を参照すると、配置制御部２０は、まず基本情報格納部３０から各ＧＵＩ部品の位置及びサイズの初期値（ＸＹＷＨ）を読み出し、各ＧＵＩ部品である矩形における４つの頂点の座標を計算して、ＧＵＩ部品ごとにソートする（ステップ８０１）。またこのとき、変形補助線の位置（Ｘ座標またはＹ座標）も基本情報格納部３０から読み出して取得しておく。
次に、１本の変形補助線当たりの変化量を計算する（ステップ８０２）。これは、計算する変化量をｄｗ、図７のステップ７０２で計算されたコンテナ３００のサイズの変化量をｄａｗとすると、次式
ｄｗ＝ｄａｗ／変形補助線の数
で算出される。
【００３２】
次に、配置制御部２０は、各変形補助線に順次着目して、ステップ８０１で取得した各ＧＵＩ部品における４つの頂点の座標に関し、着目中の変形補助線の位置と比較する。そして、当該変形補助線の位置よりも大きい座標値の頂点を、ステップ８０２で算出された値ｄｗだけさらに大きくする（ステップ８０３、８０４）。
全ての変形補助線に関して、ステップ８０３の処理を行ったならば、処理を終了する（ステップ８０４）。
以上のステップ８０１乃至ステップ８０４の処理を、横方向（ステップ７０３）及び縦方向（ステップ７０４）に対してそれぞれ行う。
【００３３】
次に、具体的な数値を上げて、図７、８に示した処理を説明する。
図９は、基本情報格納部３０に格納されているコンテナ３００のサイズとＧＵＩ部品の位置及びサイズの初期値と変形補助線の位置とについてのデータを例示する図である。また、図１０は、図９に示されたデータに基づいて生成されている設計対象画面（すなわち最小サイズで表示部１０に表示されている設計対象画面）を変形することによって、所定のデータが変化した様子を示す図である（太字で示したデータが変更されたデータである）。ここでは特に指定しないが、これらのデータの単位はドット、インチ、ミリメートルなど、通常の画像データの場合と同様の単位を用いることができる。
なお、図９に示すデータは、図３の設計対象画面に対応し、図１０に示すデータは図４の設計対象画面に対応するものとする。すなわち、本実施の形態の画面管理部４０は、基本情報格納部３０から読み出されて配置情報格納部５０に格納された図９のデータに基づいて図３の設計対象画面を管理し、変形操作後に配置情報格納部５０に格納された図１０のデータに基づいて図４の設計対象画面を管理している。
【００３４】
図９に示すデータを参照すると、コンテナ３００は幅方向（Ｗ）が［５６０］、高さ方向（Ｈ）が［３７０］であり、このコンテナ３００内に設定される座標にて、６個のラベル３１１〜３１６、６個の入力フィールド３２１〜３２６、２個のボタン３３１、３３２の位置（それぞれの矩形における左上の頂点の位置）が指定されている。また、変形補助線３４１、３４２の位置がＸ座標、Ｙ座標で指定されている。
【００３５】
ここで、設計対象画面（コンテナ３００）のサイズが変更されたとする。ここでは、幅方向（Ｗ）が［７４０］、高さ方向（Ｈ）が［５２０］に拡大されたものとする（図１０参照）。
図７のフローチャートにて説明したように、このイベントが発生すると、イベント検出部６０から配置制御部２０へ通知され（ステップ７０１）、配置制御部２０は、基本情報格納部３０から図９に示すコンテナ３００のサイズの初期値（Ｗ、Ｈ）を読み出す。そして、変更された設計対象画面のサイズとの差分ｄａｗを計算する（ステップ７０２）。図９、１０の例では、幅方向に［１８０（＝７４０−５６０）］、高さ方向に［１５０（＝５２０−３７０）］増加している。
【００３６】
この変形に基づいて、次に配置制御部２０は、各ＧＵＩ部品の座標データを変更する（ステップ７０３、７０４）。
まず、横方向について、基本情報格納部３０から変形補助線３４１の位置を読み出すと、Ｘ座標値［３８０］であるので、これよりも大きい座標値を調べる。すると、入力フィールド３２４は、左辺の位置（Ｘ座標値）が［１４０］であり、幅（Ｗ）が［２８０］であることから、右辺の位置が［４２０（＝１４０＋２８０）］となり、変形補助線３４１のＸ座標値よりも大きい。そこで、この座標値を変更する（ステップ８０１〜８０３）。
縦方向の変形補助線３４１は１本であるので、座標値の変化量ｄｗは、１８０（＝１８０／１）である。したがって、入力フィールド３２４の右辺の位置は、［６００（＝４２０＋１８０）］となる。これにより、入力フィールド３２４をコンテナ３００に配置するための情報としては、図１０に示すように、幅（Ｗ）が［４６０（＝６００−１４０）］に変更されることとなる。
【００３７】
同様にして、入力フィールド３２５の幅（Ｗ）が［４６０（＝６００−１４０）］に変更される。また、入力フィールド３２６は、右辺の初期値が［４６０（＝１４０＋３２０）］であるため、［６４０（＝４６０＋１８０）］に変更され、コンテナ３００に配置するための情報として、幅（Ｗ）が［５００（＝６４０−１４０）］に変更される。
【００３８】
さらに、ボタン３３１は、左辺の位置が［４４０］であり、変形補助線３４１のＸ座標値よりも大きい。当然ながら右辺の位置［５３０（＝４４０＋９０）］も変形補助線３４１のＸ座標値よりも大きいため、これら両辺の座標値を変更する。
上記と同様の処理により、左辺の位置は［６２０（＝４４０＋１８０）］に、右辺の位置は［７１０（＝５３０＋１８０）］に変更される。両辺とも同じ量だけ変化することにより、ボタン３３１の矩形の幅は変更されないため、ボタン３３１をコンテナ３００に配置するための情報としては、図１０に示すように、左辺の位置（Ｘ座標値）のみが［６２０］に変更されることとなる。
同様にして、ボタン３３２についてもＸ座標値が［６２０］に変更される。
【００３９】
次に、縦方向について、基本情報格納部３０から変形補助線３４２の位置を読み出すと、Ｙ座標値［２６０］であるので、これよりも大きい座標値を調べる。すると、入力フィールド３２４は、上辺の位置（Ｙ座標値）が［２００］であり、高さ（Ｈ）が［１００］であることから、下辺の位置が［３００（＝２００＋１００）］となり、変形補助線３４２のＹ座標値よりも大きい。そこで、この座標値を変更する（ステップ８０１〜８０３）。
縦方向の変形補助線３４２は１本であるので、座標値の変化量ｄｗは、１５０（＝１５０／１）である。したがって、入力フィールド３２４の右辺の位置は、［４５０（＝３００＋１５０）］となる。これにより、入力フィールド３２４をコンテナ３００に配置するための情報としては、図１０に示すように、幅（Ｗ）が［２５０（＝４５０−２００）］に変更されることとなる。
【００４０】
なお、上記の動作では、設計対象画面が変形された場合に、サイズが最小である場合の設定値に基づいて、新しいサイズにおける設計対象画面を再計算することとしたが、反対に表示部１０にて表示し得る最大のサイズにおける設定値を基準とし、そこから縮小されるように新しいサイズにおける設計対象画面を再計算するように処理を行うことも可能である。また、所定のサイズの設計対象画面を基準サイズとし、この場合の設定値を基準として他のサイズの設計対象画面を計算するように処理を行うこともできる。ただし、この場合、幅が１０しかないＧＵＩ部品を１５小さくするというような、結果として配置不可能なサイズの指定を許してしまうことのないように、適当な制限を設ける必要がある。
【００４１】
次に、本実施の形態の変形例を説明する。
まず、上述した実施の形態では、原則的に、変形補助線３４１、３４２から離れているＧＵＩ部品はその位置に応じて移動し、変形補助線３４１、３４２がかかっているＧＵＩ部品は当該変形補助線３４１、３４２の両側へ引き延ばされるように変形することとしている。しかしながら、個々のＧＵＩ部品に対して、図５、図６に示した変形例で入力フィールド３２４に対する処理について説明したように、所定の基準点（例えばＧＵＩ部品を形成する矩形の左上の頂点）の位置に応じてＧＵＩ部品の移動のみを行い、サイズの変更は行わないように変形を制限することも可能である。
図１１は、図３の状態で入力フィールド３２５に対してそのような変形の制限を行い、図４と同様のサイズ変更を行った場合の設計対象画面を示す図である。図１１に示すように、変形補助線３４１がかかっている入力フィールド３２４、３２５、３２６のうち、入力フィールド３２４、３２６は変形補助線３４１の両側へ引き延ばされているが、入力フィールド３２５は変形していない。
【００４２】
また、変形補助線３４１、３４２を、それぞれ連続した線ではなく、設定位置（Ｘ座標またはＹ座標）の異なる複数の線分の集合として設定することもできる。
図１２は、図３と同様の設計対象画面に対して、途中で設定位置の異なる変形補助線が設定されている状態を示す図である。また、図１３は、図１２の設計画面を拡大した状態を示す図である。
図１２を参照すると、変形補助線３４１と変形補助線３４２ａは、途中で設定位置（Ｘ座標、Ｙ座標）が変わっている。この設計対象画面を図１３のように拡大すると、まず横方向には、図４の場合と同様にボタン３３１、３３２が移動し、入力フィールド３２４、３２６が変形しているが、入力フィールド３２５は、図１２に示したように変形補助線３４１が迂回しているため変形していない。
また、縦方向へは、上下２本の変形補助線３４２ａ、ｂの間に位置するラベル３１１〜３１６及び入力フィールド３２１〜３２６がセンタリングされており、変形補助線３４２ａが迂回しているボタン３３１、３３２は移動していない。
【００４３】
図１４は、図１２、１３に示したように、途中で設定位置が変わる変形補助線を設定する場合における設計対象画面のサイズ変更時の処理を説明するフローチャートである。
図１４において、まずイベント検出部６０により、設計対象画面のサイズを変更するイベントが検出されると（ステップ１４０１）、イベント検出部６０から通知を受けた配置制御部２０は、基本情報格納部３０からコンテナ３００のサイズの初期値（Ｗ、Ｈ）を読み出し、検出されたイベントにて変更された設計対象画面のサイズのデータ（Ｗ、Ｈ）との差分（すなわち、初期値に対する変化量）を計算する（ステップ１４０２）。そして、１本の変形補助線当たりの変化量を計算する（ステップ１４０３）。
【００４４】
次に、配置制御部２０は、基本情報格納部３０から各ＧＵＩ部品の位置及びサイズの初期値（ＸＹＷＨ）を読み出して、コンテナ３００内に配置される各ＧＵＩ部品を形成する矩形における４つの頂点の座標を計算する（ステップ１４０４）。
そして、各頂点に順次着目して、変形補助線に基づく移動を行う。すなわち、着目中の頂点のＸ座標値よりも小さいＸ座標値を有する（左に位置する）変形補助線の数に応じて当該頂点のＸ座標値を変更することにより当該頂点を右方へ移動し（ステップ１４０５）、さらに当該頂点のＹ座標値よりも小さいＹ座標値を有する（上に位置する）変形補助線の数に応じて当該頂点のＹ座標値を変更することにより当該頂点を下方へ移動する（ステップ１４０６）。
全ての頂点に関して、ステップ１４０５、１４０６の処理を行ったならば、処理を終了する（ステップ１４０７）。
【００４５】
以上の処理により、ＧＵＩ部品を形成する矩形の頂点ごとに座標値を変更し移動することができるため、設計対象画面の複雑な変形を実現することが可能となる。
なお、上記のように、変形補助線３４１、３４２の設定位置を途中で変更可能とすると、変形補助線３４１、３４２の設定の仕方によっては、ＧＵＩ部品を形成する矩形の途中で変形補助線３４１、３４２の位置が変わってしまったり、変形補助線３４１、３４２どうしが交錯したりすることにより、適切にＧＵＩ部品の移動や変形を行うことができない状況が発生し得る。このような状況が発生した場合は、例えば左上の頂点を優先させてＧＵＩ部品の移動を行い、変形は行わないといった処理を行うことで対応することができる。
【００４６】
以上説明した実施の形態は、大きい矩形（コンテナ３００）内に小さい矩形（ＧＵＩ部品）を配置して構成される画面を設計する段階で、コンテナ３００のサイズを様々に変更しながら画面の設計を行う用途で用いられる場合について説明した。しかしながら、本実施の形態による画面の表示制御方法は、コンピュータ装置の表示装置に表示される種々の画面において、汎用的に利用できることは言うまでもない。
【００４７】
【発明の効果】
以上説明したように、本発明によれば、ユーザ・インターフェイスの画面設計において、画面の表示サイズの変更に応じて、画面を再設計する作業の生産性を向上させることが可能となる。
また、本発明によれば、直感的に選択される表示サイズや配置を実際の画面に容易に反映させることのできる、画面の表示制御方法を実現することができる。
【図面の簡単な説明】
【図１】  本実施の形態による画面設計システムを実現するのに好適なコンピュータ装置のハードウェア構成の例を模式的に示した図である。
【図２】  本実施の形態による画面設計システムの機能を説明するブロック図である。
【図３】  本実施の形態における表示部に表示された設計対象画面の例を示す図である。
【図４】  図３の設計対象画面を拡大した状態を示す図である。
【図５】  図３と同様の設計対象画面に対して、横方向２本、縦方向１本の変形補助線を設定した状態を示す図である。
【図６】  図５の設計対象画面を拡大した状態を示す図である。
【図７】  本実施の形態における設計対象画面のサイズ変更時の処理を説明するフローチャートである。
【図８】  図７の座標変更処理の詳細を説明するフローチャートである。
【図９】  本実施の形態における基本情報格納部に格納されているデータを例示する図である。
【図１０】  図９に示されたデータに基づいて生成されている設計対象画面を変形することによって、所定のデータが変化した様子を示す図である。
【図１１】  図３と同様の設計対象画面において入力フィールドに対して変形を制限し、設計対象画面を拡大した状態を示す図である。
【図１２】  図３と同様の設計対象画面に対して、途中で設定位置の異なる変形補助線が設定されている状態を示す図である。
【図１３】  図１２の設計画面を拡大した状態を示す図である。
【図１４】  途中で設定位置が変わる変形補助線を設定する場合における設計対象画面のサイズ変更時の処理を説明するフローチャートである。
【図１５】  ラベルと入力フィールドとの組合せによる入力画面の例を示す図である。
【符号の説明】
１０…表示部、２０…配置制御部、３０…基本情報格納部、４０…画面管理部、５０…配置情報格納部、６０…イベント検出部、１０１…ＣＰＵ（中央処理装置）、１０２…Ｍ／Ｂ（マザーボード）チップセット、１０３…メインメモリ、１０４…ビデオカード、１０５…ハードディスク、１１０…表示装置、３００…コンテナ、３１１〜３１６…ラベル、３２１〜３２６…入力フィールド、３３１、３３２…ボタン、３４１、３４２…変形補助線
【図１】
0003800524.tif 000002
【図２】
0003800524.tif 000003
【図３】
0003800524.tif 000004
【図４】
0003800524.tif 000005
【図５】
0003800524.tif 000006
【図６】
0003800524.tif 000007
【図７】
0003800524.tif 000008
【図８】
0003800524.tif 000009
【図９】
0003800524.tif 000010
【図１０】
0003800524.tif 000011
【図１１】
0003800524.tif 000012
【図１２】
0003800524.tif 000013
【図１３】
0003800524.tif 000014
【図１４】
0003800524.tif 000015
【図１５】
0003800524.tif 000016