AFsoft WebSite(エーエフソフト・ウェブサイト)
 

オペレーティング・システムについて

プログラミングについて
ホームページについて
キャドについて
電子カタログについて
書籍・雑誌
イベント
リンク集
Delphi2010 フレーム(Frame) 2010/08/14
 
それでは各コンポーネントを見ていきます。
お約束通り、まずは標準[Standard]内のものから見ていきますが、その最初にある「Frame」(フレーム)コンポーネントです。フレームは Delphi6 にもあります。フレームは何個も作ってその中から選ぶという感じで複数形の「s」が付いてますね。

 
フレームは、幾つかのコンポーネントをまとめて1つのコンポーネントのように扱いたい場合、自作のコンポーネントのようなものを簡単に作りたい場合、などで利用出来る機能です。
 
コンポーネントの決まり決まった組み合わせを何個も使いたい場合に利用出来ます。それでリソース軽減に繋がるのかどうかは知りませんけれど〜。
 
フレームを作っていない場合は、選択のしようがないので、まずはフレームを作る事から始めます。
 
メニュー「ファイル」→「その他」を選択します。

 
[新規作成]画面が表示されるので、「Delphiプロジェクト」内の「Delphiファイル」の中にある「フレーム」を選択します。

 
フレーム作成用の画面が表示されます。
デフォルトのファイル名は Unit1.pasが既に使われていますので、Unit2.pasになります。

 
必要なコンポーネントを貼り付けます。
ここでは、ラベル(Label)・ラジオボタン(RadioButton)・チェックボックス(CheckBox)を付けてみました。

 
フレームのNameプロパティはデフォルトで Unit2.pasからの影響か何故か「Frame2」になりますが、Frame1と書き換えて、UnitFrame1.pasという名前で保存をしています。このファイルを閉じます。
 
再度、[Standard]内の「Frames」を選択します。

 
[挿入するフレームの選択]画面が表示され、先程作成した Frame1(UnitFrame1.pas)が表示されますので、これを選択します。

 
フレームが貼り付きました。
<構造>画面を見ると、Form1内に「Frame11」という名前のものが付いている事が分かりますね。これは「Frame1」の 1つめ、という感じです。

 
あと2回貼り付けて3つにしてしまいます。
それぞれ、Frame12、Frame13、になってます。

その Frame11の中に更に CheckBox1、Label1、RadioButton1があるのが分かります。この親である Form1 からその Frame11内の CheckBox1へアクセスするっていう事も出来ますが、何個もあるとややこしくなりますし、オブジェクト指向っぽくないので、普通はたぶん、Frame1 (UnitFrame1.pas)内で、仲介する手続きや関数・変数等を用意し、CheckBox1などの中の物はフレーム内でのみ処理するようにして、親となる Form1 などから中のものへ直接アクセスさせないようにして、Form1からはフレーム内の手続き・関数を実行して挙動させたり状態を確認したりする、という風にするんじゃないかと思います。
 
最初はややこしいと感じるかもしれませんし、二度手間って思われるかもしれませんが、あとで利用する際になってくると、そういうものはカプセル化しておいた方が後々便利になってきます。ブラックボックス化になる可能性もありますが、その辺は、仕様説明などコメントでも書いておくと良いと思われます。
 
バッチファイル
BASIC
C言語のお勉強
拡張子な話
DOSプログラム
Delphi
>Delphi入門編
>Delphi2010
▲2010/08/13
 2010/08/14
▼2010/08/15
 
シェアウェア
Script!World
データベース
 
お問い合わせ 
本サイトはリンクフリーです
リンクバナー
(C)Copyright 1999-2015. By AFsoft All Rights Reserved.