お知らせ

電子会議

ライブラリ

パレット

Delphi FAQ検索

Delphi FAQ一覧

サンプル蔵





FDelphi FAQ
16番会議室「玉石混淆みんなで作るSample蔵」に寄せられたサンプル

"イメージのFadeOut"



  画像のフェードアウトを作ってみました。
うーんfadeOutってこんな感じでいいのかな?
かなり処理速度が速いのと、かっちょいいので感動しました。(^^;
フォームにボタンとTPaintBoxを一つおいて画像ファイルのパスを妥当なものに
変えてやって下さい。


procedure TForm1.Button1Click(Sender: TObject);
const
   max=255;
   step=10;
   waittime=10;
var
   y,x,i:integer;
   bmp:TBitmap;
   theLine:Integer;
begin
   bmp:=TBitmap.create;
   bmp.LoadFromFile(
       'D:\DELP\Delphi 3\Images\SPLASH\256COLOR\CHEMICAL.BMP'
                    );
   paintBox1.BoundsRect:=Rect(0,0,bmp.width,bmp.height);
   bmp.PixelFormat:=pf24bit;
   for i:= 0 to Trunc(max/step) do
   begin
      for y:=0 to bmp.height-1 do
      begin
         theLine:=integer(bmp.scanLine[y]);
         for x:=0 to bmp.width-1 do
         begin
            if pbyte(theLine+x*3)^>max-step then 
               pbyte(theLine+x*3)^:=max else
               pbyte(theLine+x*3)^:=pbyte(theLine+x*3)^+step;
            if pbyte(theLine+x*3+1)^>max-step then         
               pbyte(theLine+x*3+1)^:=max else
               pbyte(theLine+x*3+1)^:=pbyte(theLine+x*3+1)^+step;
            if pbyte(theLine+x*3+2)^>max-step then 
               pbyte(theLine+x*3+2)^:=max else
               pbyte(theLine+x*3+2)^:=pbyte(theLine+x*3+2)^+step;
         end;
      end;
      PaintBox1.canvas.draw(0,0,bmp);
      sleep(waittime);
   end;
   bmp.free;
end;
☆☆☆ サンプル蔵ブラウザUp!see nifty:FDELPHI/LIB/5/116  ☆☆☆
                                 98/04/14(火) 00:41 凛(MXB01744)

Original document by 凛              氏 ID:(MXB01744)


ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum の16番会議室「玉石混淆みんなで作るSample蔵」に投稿されたサンプルです。これらのサンプルはボーランド株式会社がサポートする公式のものではありません。また、必ずしも動作が検証されているものではありません。これらのサンプルを使用したことに起因するいかなる損害も投稿者、およびフォーラムスタッフはその責めを負いません。使用者のリスクの範疇でご使用下さい。

Copyright 1996-2002 Delphi Users' Forum