VCL フォーム アプリケーションでのビットマップ画像の全体表示
グラフィックを使用する VCL フォーム アプリケーションの作成方法 への移動
ここでは、ファイルからビットマップ画像を読み込み、その全体を VCL フォームに表示します。Bitmap オブジェクトの Height プロパティおよび Width プロパティを使用して、画像全体を表示します。
- ボタン コントロールの付いた VCL フォームを作成します。
- ビットマップ画像を準備します。
- ボタンの onClick イベント ハンドラに、ビットマップ画像を読み込んで表示するコードを記述します。
- アプリケーションをビルドして実行します。
VCL フォームとボタンを作成するには:
- [ファイル|新規作成|その他...|Delphi プロジェクト] または[C++Builder プロジェクト]を選択し、[VCL フォーム アプリケーション]アイコンをダブルクリックします。VCL フォーム デザイナが開きます。
- [ツール パレット]の[Standard]ページから、ボタン コンポーネントをフォームに配置します。
- [オブジェクト インスペクタ]で、Caption プロパティに「Full View」、Name プロパティに「FullView」と入力します。
ビットマップ画像を準備するには:
- プロジェクト ファイルを格納するディレクトリを作成します。
- ローカル ドライブのビットマップ画像を探し、プロジェクト ディレクトリにコピーします。
- プロジェクト内のすべてのファイルをプロジェクト ディレクトリに保存します。
OnClick イベント ハンドラを記述するには:
- [オブジェクト インスペクタ]の[イベント]タブで、Button1 の OnClick イベントをダブルクリックします。コード エディタが開き、TForm1.FullViewClick(Delphi)または TForm1::FullViewClick(C++)のイベント ハンドラ ブロックにカーソルが置かれます。
- 以下のイベント ハンドラ コードを入力します。MyFile.bmp は、プロジェクト ディレクトリ内のビットマップ画像の名前に置き換えてください。
Bitmap := TBitmap.Create; try Bitmap.LoadFromFile('MyFile.bmp'); Form1.Canvas.Brush.Bitmap := Bitmap; Form1.Canvas.FillRect(Rect(0,0,Bitmap.Width,Bitmap.Height)); finally Form1.Canvas.Brush.Bitmap := nil; Bitmap.Free; end;
Graphics::TBitmap Bitmap = new Graphics::TBitmap(); try { Bitmap->LoadFromFile( "..\\MyFile.bmp" ); Form1->Canvas->Brush->Bitmap = Bitmap; Form1->Canvas->FillRect( Rect( 0, 0, Bitmap->Width, Bitmap->Height ) ); } __finally { Form1->Canvas->Brush->Bitmap = NULL; Bitmap->Free(); }
メモ: C++ プロジェクトのコードでは、対象の出力ディレクトリがプロジェクト ディレクトリ内にあることを想定しています。
- Delphi の場合、以下の変数宣言を var ブロックに追加します。
Bitmap : TBitmap;
プログラムを実行するには:
- [実行|実行]を選択します。
- ボタンをクリックして、画像のビットマップをフォーム左上の長方形に表示します。