ホーム
|
アプリケーション | Tips | ダウンロード | プログラム
| コラム

CBアプリ工房


Tips >   

画像を残してフォームを消す 

更新 : 2010/05/11

 



解説:
フォームに貼り付けた画像だけを残して、それ以外の部分を見えなくしてみます。こうすることで、画像以外の場所が透明化したように見えます。やっていることは簡単で、Form の BorderStyle プロパティにフォームの境界の体裁と動作を指定してやるだけです。

使用例:
Form
の BorderStyle プロパティを操作して、画像だけを残して他を消します。

コンポーネントは、 Image, PopupMenu, Button を適当な大きさで配置します。
PopupMenu1 には、Close というメニューを作って、Form の PopupMenu プロパティに割り当てておきます。
Image1 に表示する画像は、適当な名前(サンプルでは"test.bmp")でアプリケーションと同じフォルダに用意しておいてください。

コーディングは、Button の OnClick で、BorderStyle プロパティを bsNone に設定して、Image1 をフォームいっぱいに広げ、画像を読み込んでいます。Botton1 は隠しています。
このままではフォームが閉じられないので、PopupMenu の OnClick で Close メソッドを実行しています(このイベントは忘れずに用意しておいてください)。


//-------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
    // Form1 に貼り付けた Bitmap を残して、それ以外の部分を見えなくする。
    // (Bitmap 以外の場所を透明化したように見えます)
    BorderStyle = bsNone; //サイズ変更不可。可視境界線なし
    Image1->Stretch = true;
    Image1->Align = alClient;
    Image1->Picture->Bitmap->LoadFromFile("test.bmp");

    Button1->Visible = false;
}
//-------------------------------------------------------------------
void __fastcall TForm1:::Close1Click(TObject *Sender)
{
    Close();
}
//-------------------------------------------------------------------



[ ホーム | ページトップ | ブック | リンク | サイトマップ ]
Copyright(c) 2003 Shibu All rights reserved.