# # # Constructor for Palm OS 1.6 マニュアル # # 2002/03/23 Chapter 2 # # ■ Working with Forms --- フォームを扱う この章は Constructor for Palm OS を使って、フォーム リソースをモディファイする方法について説明します。 ■ Working with Forms Overview --- フォームを扱う:全体概要 フォームの扱いはふたつのコンセプトから構成されます:Constructor ウィンドウを利用してフォームと、フォームの内容を編集することができます。 次のトピックスがこの章に含まれます。 ・「Windows for Forms --- フォームのためのウィンドウ」 フォーム リソースを編集している時に使うウィンドウです。 ・「Editing Forms --- フォームの編集」 フォームとそこに含まれる内容の取り扱いです。 ■ Windows for Forms --- フォームのためのウィンドウ このセクションはフォームの作成や、それに含まれる内容の編集に使う Constructor のウィンドウについて説明します。 ・「Catalog Window --- カタログ ウィンドウ」 フォームに追加するユーザ インターフェイス アイテムを含むウィンドウです。 ・「Form Layout Window --- フォーム レイアウト ウィンドウ」 Palm OS のフォームと同じビューを表示する、エディタ ウィンドウです。 ・「Hierarchy Window --- 階層ウィンドウ」 フォーム内のアイテムのリストを表示するウィンドウです。 ・Catalog Window --- カタログ ウィンドウ カタログ ウィンドウはフォームにレイアウトすることができる、ユーザ インターフェイスのアイテムをリストします。 カタログ ウィンドウを日択には、「Window」メニューから「Catalog」を選びます。 Figure 2.1 The Catalo Window for Constructor for Palm OS カタログ ウィンドウには Table 2.1 にリストされたアイテムを含みます。Palm OS で利用可能な全てのユーザ インターフェイス アイテムの説明は「Palm OS Programmer's Companion」をご覧ください。 Table 2.1 User Interface Items in the Catalog Window for Forms User Interface Item --- ユーザ インターフェイス アイテム:Purpose or Behavior --- 目的と動作 ボタン:ボタンの範囲が押されて話された後に、アクションが起きるトリガーです。 チェックボックス:タップにより on と off のトグルになります。ふたつ以上のチェックボックスをグループにするには、全てを選択して「Arrange」メニューから「Make Object Group」を選びます。より詳しい情報は「Grouping Items in a Forms --- フォームでのアイテムのグループ化」をご覧ください。 フィードバック スライダー コントロール:データの値を連続した範囲の値で表示します。 フィールド:テキストのユーザ データを入力したり表示します。 フォーム ビットマップ:ビットマップ リソースの置き場所として機能します。 ガジェット:アプリケーションで定義されたユーザ インターフェイスの置き場所として機能します。 グラフィティ シフト インジケータ:シンボルや大文字、シフト キー操作のためのグラフィティの状態を表示します。 グラフィック ボタン:グラフィック イメージをボタンとして機能させます。 グラフィック プッシュ ボタン:グラフィック イメージをプッシュ ボタンとして機能させます。ふたつ以上のプッシュ ボタンを同じグループにするには、全てを選択して「Arrange」メニューから「Make Object Group」を選びます。より詳しい情報は「Grouping Items in a Forms --- フォームでのアイテムのグループ化」をご覧ください。 グラフィック 繰り返し ボタン:グラフィック イメージを繰り返しボタンとして機能させます。 ラベル:編集できないテキストを表示します。 リスト:ユーザに表示する選択肢のリストの入ったボックスです。 ポップアップ トリガー:ポップアップ リストからの選択を表示し、ポップアップに連動して選択を変更します。 プッシュ ボタン:プッシュ ボタンのグループからひとつしか選択できないようにします。ふたつ以上のプッシュ ボタンを同じグループにするには、全てを選択して「Arrange」メニューから「Make Object Group」を選びます。より詳しい情報は「Grouping Items in a Forms --- フォームでのアイテムのグループ化」をご覧ください。 繰り返しボタン:アイテムが押されている間だけ動作を続けます。 スクロール バー:リストやテーブルの表示させる部分をユーザにコントロールさせます。このアイテムは Palm OS バージョン 1 では利用できません。 セレクタ トリガー:ダイアログ ボックスを表示し、設定など変更することができます。より詳しい情報は「Creating a Dialog Box --- ダイアログ ボックスの作成」をご覧ください。 スライダー コントロール:範囲内のデータ値を決められるようにします。 テーブル:2 次元配列の情報を表示します。 カタログ ウィンドウからフォームへのアイテムの追加に関する情報は「Adding Interface Items to a Form --- フォームへのインターフェイス アイテムの追加」をご覧ください。 ・Form Layout Window レイアウト ウィンドウは、Constructor でのビジュアル ワークのほとんどを行う場所です。このウィンドウによりフォームのユーザ インターフェイスを整えます。 「To open a form in a Layout window --- レイアウト ウィンドウでフォームを開くには:次のどちらかを行います。 ・プロジェクト ウィンドウでフォーム リソースをダブルクリックします。 ・プロジェクト ウィンドウでフォーム リソースを選択してリターン キーかエンター キーを押します。 Figure 2.2 The Form Layout Window フォームの作成と編集については「Editing Forms」をご覧ください。 「Hierarchy Window --- 階層ウィンドウ」 階層ウィンドウは、フォームとその内容を階層的リストで表示することにより、別の方法でフォームを検査します。 To view a form in a hierarchy window --- 階層ウィンドウでフォームを見る: 1. プロジェクト ウィンドウでフォームを開きます 2. 「Layout」メニューから「Show Object Hierarchy」を選びます Figure 2.3 The Hierarchy window ■ Editing Forms --- フォームの編集 このセクションでは、フォーム リソースを扱い方を説明します。このセクションで得られる情報は: 「Creating a Form --- フォームを作成する」 「Creating an About Box --- アバウト ボックスを作成する」 「Creating a Dialog Box --- ダイアログ ボックスを作成する」 「Setting Form Properties --- フォームのプロパティを設定する」 「Adding Interface Items to a Form --- フォームにインターフェイス アイテムを追加する」 「Adding Help to a Form --- フォームにヘルプを追加する」 「Arranging Items in a Form --- フォーム内のアイテムをアレンジする」 「Grouping Items in a Form --- フォーム内のアイテムをグループ化する」 「Deleting Items in a Form --- フォーム内のアイテムを削除する」 -------------------------------------------------- TIPS: フォームのランタイム時のトラブルを避けるために、プロジェクト ウィンドウの「Keep IDs in sync option」オプションが選択されていることを確認してください。このオプションはリソースとフォーム ID が一貫していることを確保します。 -------------------------------------------------- ・Creating a Form Palm OS のアプリケーションはユーザによって操作される、グループ化されたインターフェイスを持つフォームを利用します。Palm OS のフォームは、Windows や Macintosh のウィンドウと似ています。 To create a form --- フォームを作成する: 1. 以下のどれかを行います ・プロジェクト ウィンドウのフォーム アイコンを選択します;「Edit」メニューから「New Form Resource」を選びます。 ・「Edit」メニューから「New Resource」を選択し、「Resource Type」ポップアップ メニューから「Form」を選び、「Resource Name」と「Resource ID」を入力して「Create」をクリックするとフォームが作られます。 2. リターン キーかエンター キーを押すとレイアウト ウィンドウでフォームを開けます。より詳しい情報は「Form Layout Window」をご覧ください。 3. フォームにアイテムを追加します。 新しいフォームへのアイテムの追加とアレンジについては「Editing Forms」をご覧ください。 ・Creating an About Box --- アバウト ボックスを作成する。 アバウト ボックスは、Palm OS のアプリケーションについて、作成者などの情報を表示するフォームです。Palm OS でアバウト ボックスのフォームは、普通ダイアログ ボックスが使用されます。より詳しい情報は「Editing Forms」をご覧ください。 ・Creating a Dialog Box --- ダイアログ ボックスを作成する。 ダイアログ ボックスは、ユーザが修正するための情報を表示するフォームです。Palm OS のダイアログ ボックスは、スクリーンの他のフォームの手前に現れるために対話型(モーダル)で、作業を続ける前にユーザに操作することを強います。 To create a dialog box: 1. 以下のどれかを行います: ・選択するためにプロジェクト ウィンドウのフォーム アイコンをクリックします;それから「Edit」メニューから「New Form Resource」を選びます。 ・「Edit」メニューから「New Resource」を選び、リソース タイプ ポップアップ メニューから「New Resource」を選びます。そしてリソース名とリソース ID を入力し、「Create」をクリックしてフォームを作成します。 より詳しいプロジェクト ウィンドウの使い方の情報は「Resource Type and Name List --- リソース タイプとネーム リストをご覧ください。 2. リターン キーかエンター キーを押しレイアウト ウィンドウにフォームを開きます。レイアウト ウィンドウのより詳しい情報は「Form Layout Window」をご覧ください。 3. レイアウト ウィンドウで「Modal」オプションをクリックし、モーダル ダイアログ ボックスのフォームを作成します。 4. ダイアログ ボックスにアイテムを追加してアレンジします。 新しいフォームへのアイテムの追加とアレンジについては、「Editing Forms」をご覧ください。 -------------------------------------------------- TIPS: モーダルのフレームがはっきりと見えるようにするには、左と上の座標の開始が 2 以上でなければなりません。そして Width と Height が 156 以下でなければなりません。 -------------------------------------------------- ■ Setting Form Properties --- フォームのプロパティ設定 レイアウト プロパティはフォームがどう見えて、どうユーザに使われるのかを決定します。レイアウト ウィンドウのより詳しい情報は「Form Layout Window」をご覧ください。 「Left Origin」 Pixel 単位でフォームの左端を決めます。 「Top Origin」 Pixel 単位でフォームの上端を決めます。 「Width」 Pixel 単位でフォームの幅を決めます。 「Height」 Pixel 単位でフォームの高さを決めます。 「Usable」 見えるか見えないかのフォームの可視性を決めます。「Usable」オプションが選択されているとフォームは Palm OS アプリケーションで表示されます;このオプションが選択されていないと表示されません。 Palm OS アプリケーションからフォームを表示したり隠したりするより詳しい情報は「Palm OS Programmer's Companion」をご覧ください。 「Modal」 ユーザが他のタスクを実行する前にフォームを操作しなければならないかどうか、フォームの範囲外でイベントが起きた場合の動作を決めます。 モーダル オプションが選択されていると、ダイアログ ボックス外でタップされても反応しません。より詳しい情報は「Creating a Dialog Box」をご覧ください。 「Save Behind」 スクリーンに表示されたフォームの後ろの領域をどうするか決めます。もし「Save Behind」が選択されていると、Palm OS はフォームで見えなくなっている領域を保存し;フォームが隠された場合にその領域を復元します。 「Help ID」 モーダル フォームの Help アイコンがタップされた時に表示する、ヘルプ テキスト リソースの ID を決めます。このフィールドは「Modal」オプションが選択されていると利用可能になります。 To select a Help ID option: ・入力したリソース ID がプロジェクトの文字列リソース ID と合わない場合、Help ID フィールドに「Create」ボタンが現れますので、クリックして新しく文字列を作成します。 ・プロジェクトに入力した文字列 ID が合っている場合、Help ID フィールドに「Edit」ボタンが現れますので、クリックして編集ウィンドウを開き、フォームのヘルプ テキスト用の文字列リソースを編集します。 ・ID 「0」を入力すると、フォームにはヘルプ テキストがないことを示します。 「Menu Bar ID」 フォームと連動するメニュー バーのリソース ID を決めます。 To select a Menu Bar ID option: ・もし入力されたリソース ID が、プロジェクトにあるメニュー バーの ID と合わない場合、ID フィールドの横に「Create」ボタンが現れます。「Create」をクリックすると新しくメニュー バー リソースが生成されます。 ・もし入力されたリソース ID が、プロジェクトにあるメニュー バーの ID と合っていれば、ID フィールドの横に「Edit」ボタンが現れます。「Edit」ボタンをクリックするとメニュー バー編集ウィンドウでメニュー バー リソースが開きます。 ・ID に「0」を入力すると、フォームはメニュー バーを持ちません。 関連する情報については「Adding a Menu Bar to a Form --- フォームにメニュー バーを追加する」「Working with Menu Bars and Menus Overview --- メニュー バーとメニューの扱い:概要」をご覧ください。 Default Button ID フォームの標準ボタンの ID を決めます。Palm OS アプリケーションはフォームが破棄された時に、このボタンのタップをシミュレートします。 Form Title 一番上に表示されるフォームのタイトルを決めます。 ■ Adding Interface Items to a Form --- フォームにインターフェイスのアイテムを追加する インターフェイス アイテムはフォームに表示され、情報を表示したりユーザに情報を操作させるためのオブジェクトです。インターフェイス アイテムにはボタン、チェックボックス、編集可能なテキスト フィールドなどがあります。 To add an interface item to a form: ・アイテムをコピー & ペーストするか、別のウィンドウからドラッグします ・「Catalog Window」からアイテムをフォームにドラッグします フォームに追加できるアイテムのリストについては「Catalog Window」をご覧ください。 フォームにユーザ インターフェイス アイテムを追加すると Constructor はユニーク ID ナンバーを割り当てます。アイテムの ID を変更しても、そのフォームで既に使われている ID の場合 Constructor はその変更を認めないことに気をつけてください。 -------------------------------------------------- NOTE: 他のフォームのアイテムの ID ナンバーとの衝突を防ぐために Constructor は、フォーム内でのインターフェイス アイテムのリソース ID を「99」までに制限します。 -------------------------------------------------- リソース ID のナンバリングに関する情報は「Keep IDs in sync option --- ID を同調させる」をご覧ください。 アイテムをフォームに追加すれば、アレンジしたりグループ化したり、削除したりできます。より詳しい情報は以下をご覧ください。 「Arranging Items in a Form」 「Grouping Items in a Form」 「Deleting Items in a Form」 ■ Adding Help to a Form --- フォームにヘルプを追加する Palm OS のアプリケーションはモーダル フォームの右上にある「Help」アイコンをタップした時に、ヘルプ テキストを含んだモーダル フォームを表示します。非モーダル フォームでヘルプ テキストは使えないことに気をつけてください(「Creating a Dialog Box」をご覧ください)。 To add a help to a form: --- ヘルプをフォームに追加する 1. ヘルプを追加したいフォームを開きます。より詳しい情報については「Form Layout Window」をご覧ください。 2. 「Modal」オプションが選択されていることを確認します。モーダル オプションが選択されていると、「Help ID」フィールドが表示されています。 3. 「Help ID」フィールドにリソース ID を入力します。もし既にヘルプ テキストの文字を入力してあるならば、文字リソースの ID を入力してください。そうでなければ、ユニークなリソース ID を入力してください。 4. ヘルプ テキストを編集するか作成します。「Help ID」フィールドの横に現れるボタンをクリックします。より詳しい情報については「Help ID」をご覧ください。 ■ Adding a Menu Bar to a Form --- フォームにメニュー バーを追加する フォームにメニュー バーがあれば、Palm OS アプリケーションはユーザがメニュー アイコンをタップした時にそれを表示します。 To add a menu bar to a form: --- メニュー バーをフォームに追加する 1. メニュー バーを追加したいフォームを開きます。より詳しい情報については「Form Layout Window」をご覧ください。 2. 「Menu Bar ID」にリソース ID を入力します。もし既にこのフォームにメニュー バーを作成しているならば、リソース ID を入力してください。そうでなければ、ユニークなリソース ID を入力してください。 3. メニュー バーとメニューを編集するか作成します。「Menu Bar ID」フィールドの横に現れるボタンをクリックします。より詳しい情報については「Menu Bar ID」をご覧ください。 ■ Arranging Items in a Form --- フォームのアイテムをアレンジする このセクションでは、フォームのアイテムをアレンジする色々な方法を説明します。 To select an obscured item: --- 見えないアイテムを選択する もしアイテムが他のペイン(オブジェクトでよい)で見えなくなっている場合、以下のどれかを行ってください。 ・Macintosh:他のアイテムで隠されているアイテムを選択するには、Command キーを押しながら隠れているアイテムをクリックします。そのアイテムが選択されるまでクリックしています。次に Command キーを離します。そして Option キーを押したままドラッグしたり、リサイズします。または隠されたアイテムをダブルクリックします。 ・Windows:他のアイテムで隠されているアイテムを選択するには、コントロール キーを押しながら隠れているアイテムをクリックします。そのアイテムが選択されるまでクリックしています。次に コントロール キーを離します。そして ALT キーを押したままドラッグしたり、リサイズします。または隠されたアイテムをダブルクリックします。 To move an item: --- アイテムを動かす アイテムを動かすには、以下のどれかを行ってください。 ・Macintosh:ドラッグを始めてから、Shift キー、Command キー、または Shift + Command キーを押すことで動かし方を制約することができます。 ・Windows:ドラッグを始めてから、Shift キー、コントロール キー、または Shift + コントロール キーを押すことで動かし方を制約することができます。 -------------------------------------------------- NOTE: ドラッグする前に Shift キーを押すと、選択するものを変更します。最初にドラッグしてから Shift キーを押してください。 -------------------------------------------------- To nudge an item: --- アイテムをちょっとだけ動かす 1 pixel 単位でアイテムを動かすことができます。まずアイテムを選択し、矢印キーを押すことでアイテムを動かせます。 Using Grid --- グリッドを使う Constructor ではペインのアレンジにグリッドを使うことができます。 To display or hide a grid: --- グリッドの表示と非表示 1. 目的のフォームを開きます 2. 「Layout」>「Show Grid/Hide Grid」でグリッドを表示させます To align items to a grid: --- アイテムをグリッドに合わせる 以下のどれかを行います。 ・全てのアイテムをグリッドに吸着させるには「Layout」>「Snap to Grid/Don't Snap to Grid」を選びます ・選択したアイテムのみをグリッドに吸着させるには、アイテムを選択し、コントロール キー(Windows)か Command キー(Macintosh)を押したままドラッグします。 To set the grid size: --- グリッド サイズを設定する 「Layout」>「Edit Grid」を選び、目的のグリッド間隔を入力します。 To resize an item: --- アイテムをリサイズする アイテムを選択し、アイテムのコーナーのハンドルをドラッグします。 ■ Grouping Items in a Form --- フォームのアイテムをグループ化する プッシュ ボタン、グラフィック プッシュ ボタン、チェック ボックスなどをグループ化することで、一度にコントロールすることができます。 To create an object group: --- オブジェクトのグループ化をする ・同じグループにしたいアイテムを全て選択します ・「Arrange」>「Make Object Group」を選びます FrmSetControlGroupSelection と FrmGetCntorolGroupSelection でグループ化されたオブジェクトを扱うことができます。より詳しい情報については「Palm OS Programmer's API Reference」をご覧ください。 ■ Deleting Items in a Form --- フォームのアイテムを削除する フォームからアイテムを削除するには、まずそのアイテムを選択します。アイテムを選択したら、以下のどれかを行います。 ・Delete キーか Backspace キーを押します ・「Edit」>「Clear」を選びます ・「Edit」>「Cut」を選びます ・デスクトップのゴミ箱までドラッグします(Macintosh のみ)