フォーム デザイナを使用してコンポーネントを追加する(IDE チュートリアル)
RAD Studio アプリケーションを初めて作成する(IDE チュートリアル):インデックス への移動
これでメイン フォームのセットアップが完了したので、次に、テキスト エディタ アプリケーションの作成に必要なコンポーネントを配置します。まず、ファイル操作や編集のための基本オプションとワードラップの切り替えなどのその他のオプションを提供するメニュー バーを追加する必要があります。
目次
アクション リストの追加
アプリケーションの基本機能を自動的に提供するため、フォームにアクション リストを追加します。それには、[デザイン]タブが選択されていることを確認したうえで、[ツール パレット]に移動し、検索ボックスに「action」と入力します。その結果、TActionList コンポーネントなど、名前に "action" という文字列が含まれるコンポーネントのみ表示されます。[ツール パレット]は次のようになります。
[TActionList]をダブルクリックして、フォームに追加します。次に、この TActionList の名前をアプリケーションに合わせて変更します。TActionList のアイコン()をクリックしてアクティブにします。[オブジェクト インスペクタ]で、[Name]プロパティをクリックしその値を
ActionList
に変更します。
- ヒント: コードでは名前を使ってコンポーネントにアクセスしなければならない場合があるため、コンポーネントに適切な名前を付けることは非常に重要です。覚えやすい名前を設定すると役に立ちます。
メイン メニューの追加
次に、フォームにメイン メニュー バーを配置します。それには、[ツール パレット]の検索ボックスに「menu」と入力すると、TMainMenu コンポーネントが簡単に見つかります。このフィルタを使用した場合、[ツール パレット]は次のようになります。
[TMainMenu]をダブルクリックしてフォームに追加し、[オブジェクト インスペクタ]を使用してその Name プロパティの値を MainMenu
に変更します。
ステータス バーの追加
次に、フォームにステータス バーを配置します。それには、[ツール パレット]の検索ボックスに「status」と入力すると、TStatusBar コンポーネントが簡単に見つかります。このフィルタを使用した場合、[ツール パレット]は次のようになります。
これまでのコンポーネントの場合と同様に、[TStatusBar]をダブルクリックしてフォームに追加し、[オブジェクト インスペクタ]を使用してその Name プロパティの値を StatusBar
に変更します。
テキスト ボックスの追加
追加する必要がある最も重要なコンポーネントは、アプリケーションの主要機能つまりテキスト エディタの機能を提供するテキスト ボックスです。[ツール パレット]の検索ボックスに「memo」と入力すると、TMemo コンポーネントが簡単に見つかります。このフィルタを使用した場合、[ツール パレット]は次のようになります。
[ツール パレット]で memo フィルタを使用して TMemo を選択する
[TMemo]をダブルクリックしてフォームに追加し、[オブジェクト インスペクタ]を使用してその Name プロパティの値を Editor
に変更します。
ファイルを開くおよび保存するためのダイアログの追加
追加するコンポーネントはあと、ファイルを開いたり保存するためのダイアログ ボックスを実現する非ビジュアル コンポーネントだけです。これらは、エディタの基本的なファイル オープン/保存機能を実装するために必要になります。[ツール パレット]の[Dialogs]カテゴリをクリックします。
[TOpenDialog]と[TSaveDialog]の両方をダブルクリックして、それぞれのコンポーネントのインスタンスを 1 つずつフォームに追加します。そのあと、[オブジェクト インスペクタ]を使用して、それらの Name プロパティの値をそれぞれ OpenFileDialog
と SaveFileDialog
に変更します。
これで、メイン フォームには、フォームに追加したアクション リスト、メイン メニュー バー、ステータス バー、メモ、ダイアログ ボックスの各 コンポーネントが表示されます。
アクションの定義
フォームの設計を完了するために、メイン メニューに項目を追加する必要があります。まず、フォーム上のアクション リスト コンポーネントをダブルクリックして、アクション リスト エディタを開きます。
これで、メイン メニューに項目を作成できるようになりました。
テキスト エディタにはファイル操作機能が少し必要なので、アクションをいくつか定義しなければなりません。[新規アクション]ボタンをクリックして、カスタム アクションを新しく作成します。
その新規アクションが選択された状態で、[オブジェクト インスペクタ]でその Category プロパティの値を File
に変更します。この新しいカテゴリは RAD Studio のアクション リスト エディタの[カテゴリ]リストに表示され、その新規カテゴリ内に新しいアクションが表示されます。新規アクションがまだ選択されている状態で、その Name プロパティの値を NewAction
に、Text プロパティの値を New
に、ShortCut プロパティの値を Ctrl+N
にそれぞれ変更します。
アクション リスト エディタで File カテゴリが使用可能になったので、[カテゴリ]リストからこのカテゴリを選択し、[新規アクション]ボタンを 4 回クリックして[File]メニューに追加アクションを 4 つ作成します。次に、新しく作成したアクションをカスタマイズします。
- [Action1]を選択し、その Name プロパティの値を
OpenAction
に、Text プロパティの値をOpen...
に、ShortCut プロパティの値をCtrl+O
にそれぞれ変更します。 - [Action2]を選択し、その Name プロパティの値を
SaveAction
に、Text プロパティの値をSave
に、ShortCut プロパティの値をCtrl+S
にそれぞれ変更します。 - [Action3]を選択し、その Name プロパティの値を
SaveAsAction
に、Text プロパティの値をSave As...
にそれぞれ変更します。 - [Action4]を選択し、その Name プロパティの値を
ExitAction
に、Text プロパティの値をExit
にそれぞれ変更します。
アクション リスト エディタは次のようになります。
テキスト エディタには編集機能も少し必要です。
[カテゴリ]リストから[(カテゴリなし)]を選択し、[新規アクション]ボタンをクリックしてカスタム アクションを新しく作成します。その新規アクションが選択された状態で、[オブジェクト インスペクタ]でその Category プロパティの値を Edit
に、Name プロパティの値を CutAction
に、Text プロパティの値を Cut
に、ShortCut プロパティの値を Ctrl+X
にそれぞれ変更します。
[カテゴリ]リストで[Edit]カテゴリがまだ選択されている状態で、[新規アクション]ボタンを 5 回クリックして[Edit]メニューに追加アクションを 5 つ作成します。次に、新しく作成したアクションをカスタマイズします。
- [Action1]を選択し、その Name プロパティの値を
CopyAction
に、Text プロパティの値をCopy
に、ShortCut プロパティの値をCtrl+C
にそれぞれ変更します。 - [Action2]を選択し、その Name プロパティの値を
PasteAction
に、Text プロパティの値をPaste
に、ShortCut プロパティの値をCtrl+V
にそれぞれ変更します。 - [Action3]を選択し、その Name プロパティの値を
SelectAllAction
に、Text プロパティの値をSelect All
に、ShortCut プロパティの値をCtrl+A
にそれぞれ変更します。 - [Action4]を選択し、その Name プロパティの値を
UndoAction
に、Text プロパティの値をUndo
に、ShortCut プロパティの値をCtrl+Z
にそれぞれ変更します。 - [Action5]を選択し、その Name プロパティの値を
DeleteAction
に、Text プロパティの値をDelete
に、ShortCut プロパティの値をDel
にそれぞれ変更します。
さらに、テキスト エディタのワードラップ機能を実現するアクションが必要です。[カテゴリ]リストから[(カテゴリなし)]を選択し、[新規アクション]ボタンをクリックしてカスタム アクションを新しく作成します。その新規アクションが選択された状態で、[オブジェクト インスペクタ]でその Category プロパティの値を Format
に、Name プロパティの値を WordWrapAction
に、Text プロパティの値を Word Wrap
にそれぞれ変更します。
使用するアクションがこれで定義されました。アクション リスト エディタを閉じて、先に進みます。
メイン メニューへのアクションの追加
フォーム デザイナで、メイン メニュー コンポーネントをダブルクリックして[項目デザイナ]を開きます。
[項目デザイナ]で、上記で定義したアクションを表すビジュアル項目を定義する必要があります。[項目の追加]ボタンを 3 回クリックして、[File]、[Edit]、[Format]の各メニュー項目の TMenuItem インスタンスを追加します。次に、追加したそれぞれの TMenuItem インスタンスをリストから選択し、[子項目の追加]ボタンを、1 番目のメニュー項目の場合には 5 回、2 番目のメニュー項目の場合には 6 回、3 番目のメニュー項目の場合には 1 回、それぞれクリックします。
これらのビジュアルなメニュー項目とそれらのアクションを関連付けるには:
- 3 つのメイン メニュー項目をそれぞれ選択し、[オブジェクト インスペクタ]で以下を行います。
- 各メニュー項目のサブメニュー項目を 1 つずつ選択し、[オブジェクト インスペクタ]で、それぞれに適切な名前を付け、Action プロパティの値を対応するアクションに変更します。たとえば、[項目デザイナ]内のリストで[File]下の最初のサブメニュー項目を選択し、[オブジェクト インスペクタ]で、その Name プロパティの値を
NewMenu
に、Action プロパティの値をNewAction
にそれぞれ変更します。
次の図は、この時点で[項目デザイナ]内のリストがどう表示されるかを示しています。
[項目デザイナ]を閉じます。