亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? lightspd.pas

?? 一個產生放煙火效果的控件
?? PAS
字號:
unit LightSpd;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, ExtCtrls ;

type
  PStar =^TStar;
  TStar =record
    C,         {color}
    X,Y,       {center X,Y}
    W :integer;{width}
    L,T,R,B,   {coordiants}
    S :single; {step}
  end;

  TLightSpeedSpeed =(lsSlower,lsSlow,lsNormal,lsFast,lsFaster,lsLight);
  TLightSpeedOption =(loColored,loMultiplay);
  TLightSpeedOptions = set of TLightSpeedOption;

  TLightSpeed = class(TGraphicControl)
  private
    FStarsCount :byte;
    FBrightness :byte;
    FSpeed :TLightSpeedSpeed;
    FOptions :TLightSpeedOptions;
    FInterval :integer;
    FCenterX,FCenterY :integer;
    FActive :boolean;

    Timer: TTimer;
    Stars: array[1..255] of tStar;
    LX,LY,LS :integer;

    procedure SetInterval (Value :integer);
    procedure SetActive (Value :boolean);

  protected
    procedure Go(Sender: TObject);
    procedure Paint; override;

  public
    constructor Create(aOwner: TComponent); override;
    destructor Destroy; override;

  published
    property StarsCount :byte read FStarsCount write FStarsCount default 100;
    property Brightness :byte read FBrightness write FBrightness default 96;
    property Speed :TLightSpeedSpeed read FSpeed write FSpeed default lsNormal;
    property Options :TLightSpeedOptions read FOptions write FOptions;
    property Interval :integer read FInterval write SetInterval default 50;
    property Active :boolean read FActive write SetActive default false;
    property ParentShowHint;
    property ShowHint;
    property Color default clBlack;
    property ParentColor;
    property Width default 200;
    property Height default 160;
    property Align default alNone;
    property Visible;
    property CenterX :integer read FCenterX write FCenterX;
    property CenterY :integer read FCenterY write FCenterY;
  end;

procedure Register;

implementation

function Min (X,Y :integer) :integer;
begin
  if X<Y then Min:=X else Min:=Y;
end;

constructor TLightSpeed.Create(aOwner: TComponent);
begin
  inherited Create(aOwner);
  ControlStyle := ControlStyle + [csReplicatable];
  FStarsCount:=100;
  FBrightness:=96;
  FSpeed:=lsNormal;
  FOptions:=[loColored,loMultiplay];
  FInterval:=50;
  FActive:=false;

  Width:=200;
  Height:=160;
  Align:=alNone;
  Color:=clBlack;

  FCenterX:=Width div 2; FCenterY:=Height div 2;
  LX:=Min(FCenterX,FCenterY); LY:=LX;
  LS:=round(sqrt(LX*LX/2));

  randomize;
  fillchar(Stars,sizeof(Stars),$FF);

  Timer:=TTimer.Create(Self);
  Timer.Interval:=0;
  Timer.OnTimer:=Go;
end;

destructor TLightSpeed.Destroy;
begin
  Timer.Free;
  inherited;
end;

procedure TLightSpeed.SetInterval(Value :integer);
begin
  if Value<>FInterval then begin
    FInterval:=Value;
    Timer.Interval:=FInterval;
  end;
end;

procedure TLightSpeed.SetActive(Value :boolean);
begin
  if Value<>FActive then begin
    FActive:=Value;
    if FActive then Timer.Interval:=FInterval
    else Timer.Interval:=0;
  end;
end;

{procedure TLightSpeed.SetColor(Value :tColor);
begin
  if Value<>Color then begin
    Canvas.Brush.Color:=Value;
    Repaint;
  end;
  inherited;
end;
}
procedure TLightSpeed.Paint;
begin
  Canvas.Brush.Color := Color;
  Canvas.FillRect(Rect(0,0,Width,Height));

{  Canvas.Pen.Color := clBtnShadow;
  Canvas.PolyLine([Point(0,Height-1), Point(0,0), Point(Width-1,0)]);

  Canvas.Pen.Color := clBtnHighlight;
  Canvas.PolyLine([Point(Width-1,0), Point(Width-1,Height-1), Point(0,Height-1)]);}
end;

procedure TLightSpeed.Go(Sender: TObject);
var
  Dot :integer;
  red,green,blue :byte;
begin
  LX:=Min(Height div 4,Width div 4); LY:=LX;
  LS:=round(sqrt(LX*LX/2));
  if not Visible and not (csDesigning in ComponentState) then exit;
  for Dot:=1 to 255 do with Stars[Dot] do begin
    if C<>-1 then begin
      {clear line}
      Canvas.Pen.Width:=W;
      Canvas.Pen.Color:=Color;
      Canvas.MoveTo(round(X+L),round(Y+T));
      Canvas.LineTo(round(X+R),round(Y+B));
    end
    else begin
      {define new line}
      if Dot>FStarsCount then continue;
      repeat
        L:=random(LX)-LX div 2;
        T:=random(LY)-LY div 2;
        S:=sqrt(L*L+T*T);
      until (S>6);
      S:=1+succ(ord(FSpeed))/(S*S/LS*5);
      R:=L*S*1.01; B:=T*S*1.01;  {length 1 - 1.1}
      blue:=random($40);
      if loColored in FOptions then begin green:=random($40); red:=random($40); end
      else begin green:=blue; red:=blue; end;
      C:=FBrightness shl 16 + FBrightness shl 8 + FBrightness +
          blue shl 16 + green shl 8 + red;
      W:=1+byte(random(20)=0)+byte(random(20)=0);
    end;
    X:=FCenterX; Y:=FCenterY;
    {draw line}
    L:=L*S; R:=R*S;
    T:=T*S; B:=B*S;

    if loMultiplay in FOptions then begin
      blue := Min($FF, C shr 16          + random(round((S*S*S*S))));
      if loColored in FOptions then begin
        green:= Min($FF, C shr 8 and $FF + random(round((S*S*S*S))));
        red  := Min($FF, C and $FF       + random(round((S*S*S*S))));
      end
      else begin green:=blue; red:=blue; end;
      C:=integer(blue) shl 16 + green shl 8 + red;
    end;

    Canvas.Pen.Width:=W; Canvas.Pen.Color:=C;
    Canvas.MoveTo(round(X+L),round(Y+T));
    Canvas.LineTo(round(X+R),round(Y+B));

    if ((X+L<-5) or (X+L>ClientWidth+5))
    or ((Y+T<-5) or (Y+T>ClientHeight+5))
    then C:=-1;
  end;
end;

procedure Register;
begin
  RegisterComponents('Samples', [TLightSpeed]);
end;

end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久精品av麻豆的观看方式| 亚洲天堂2014| 国产欧美日韩久久| 樱桃视频在线观看一区| 美女尤物国产一区| 国产98色在线|日韩| 欧美中文字幕一区二区三区 | 亚洲国产成人午夜在线一区| 亚洲男人天堂av网| 美美哒免费高清在线观看视频一区二区| 欧美日韩国产一二三| 国产一区二区三区日韩| 男女男精品网站| 91网址在线看| 日韩欧美一区中文| 亚洲欧美日韩久久| 麻豆成人免费电影| 91在线视频网址| 欧美一区二区福利在线| 亚洲男同性视频| 狠狠色丁香婷综合久久| 欧美性生活影院| 国产精品热久久久久夜色精品三区| 偷拍与自拍一区| 91一区在线观看| xfplay精品久久| 亚洲成在人线免费| 成人激情校园春色| 日韩一区二区不卡| 一区2区3区在线看| 高清国产一区二区| 欧美一级午夜免费电影| 一区二区三区久久久| 国产一区二区三区电影在线观看 | 国产一区二区三区四| 91麻豆精品在线观看| 精品国产青草久久久久福利| 一区二区三区四区蜜桃 | 国产精品久久毛片av大全日韩| 日韩激情视频网站| 在线观看一区日韩| 中文字幕在线一区| 国产精品一级二级三级| 在线成人免费视频| 亚洲综合成人在线视频| 9i在线看片成人免费| 久久久精品国产免大香伊| 免费成人在线视频观看| 欧美精品自拍偷拍动漫精品| 亚洲综合成人在线| 91久久精品午夜一区二区| 中文字幕视频一区| 播五月开心婷婷综合| 国产亚洲制服色| 韩国三级在线一区| 日韩欧美一区二区久久婷婷| 日韩avvvv在线播放| 欧美日韩视频在线观看一区二区三区| 中文字幕在线不卡一区| 不卡影院免费观看| 国产精品久久久久久妇女6080| 国产suv一区二区三区88区| 久久人人爽人人爽| 国产精品一区二区久激情瑜伽 | 国产伦精品一区二区三区视频青涩 | 久久久久久久久久久电影| 美国十次综合导航| 日韩美女一区二区三区四区| 免费在线观看成人| 日韩欧美激情在线| 久久精品国产99| 久久久美女毛片| 国产成人在线视频播放| 国产精品视频九色porn| 成人自拍视频在线观看| 国产精品国产三级国产a| 97久久超碰精品国产| 亚洲欧美日本在线| 91福利小视频| 亚洲aⅴ怡春院| 欧美一区二区三区男人的天堂 | 久久久久久综合| 国产精品69毛片高清亚洲| 国产女同性恋一区二区| 成人av中文字幕| 伊人色综合久久天天人手人婷| 欧美无乱码久久久免费午夜一区| 午夜视频在线观看一区二区三区| 欧美喷水一区二区| 蜜桃视频免费观看一区| 久久综合九色综合97婷婷| 福利91精品一区二区三区| 国产精品超碰97尤物18| 欧洲一区在线电影| 日韩成人免费在线| 久久蜜臀精品av| 91免费看片在线观看| 亚洲国产一区二区在线播放| 欧美精品一二三| 黑人巨大精品欧美黑白配亚洲| 久久精品夜色噜噜亚洲aⅴ| www.欧美日韩国产在线| 亚洲一区二区三区视频在线| 337p亚洲精品色噜噜噜| 国产一区二区三区免费观看| ...xxx性欧美| 9191久久久久久久久久久| 韩国一区二区在线观看| 亚洲免费视频成人| 制服视频三区第一页精品| 国产高清精品网站| 亚洲国产va精品久久久不卡综合 | 国产一区二区福利视频| 亚洲天堂成人网| 日韩欧美一区中文| 99久久综合狠狠综合久久| 午夜精品久久一牛影视| 国产午夜精品久久久久久久 | 亚洲chinese男男1069| 久久久午夜电影| 色综合激情五月| 国内精品视频666| 亚洲在线免费播放| 久久久久久久久久久久久久久99 | 亚洲第一在线综合网站| 国产亚洲制服色| 在线成人午夜影院| av中文字幕在线不卡| 日韩和欧美一区二区| 国产精品美女久久久久久2018| 制服丝袜日韩国产| 91视频观看免费| 国产精品99精品久久免费| 午夜激情综合网| 日韩成人av影视| 亚洲精品国久久99热| 久久久国产一区二区三区四区小说| 欧美色视频一区| 成人黄色大片在线观看| 欧美aaa在线| 亚洲宅男天堂在线观看无病毒 | 色综合天天天天做夜夜夜夜做| 免费在线观看不卡| 一卡二卡欧美日韩| 中文字幕国产精品一区二区| 日韩欧美国产一区二区在线播放 | 日韩在线一二三区| 亚洲精品va在线观看| 国产精品久久毛片av大全日韩| 精品国产免费一区二区三区四区| 欧美性视频一区二区三区| av电影在线观看完整版一区二区| 精品一区二区在线看| 亚洲va欧美va人人爽| 亚洲欧美福利一区二区| 国产欧美日韩不卡免费| 欧美sm美女调教| 91精品国产综合久久精品图片 | 日本视频一区二区| 亚洲精品老司机| 亚洲三级在线免费| 国产精品午夜久久| 久久精品亚洲麻豆av一区二区| 欧美一区二区三区四区五区| 精品视频在线免费| 欧美伊人久久久久久午夜久久久久| 不卡一区中文字幕| 波多野结衣中文一区| 国产老女人精品毛片久久| 久久草av在线| 日本麻豆一区二区三区视频| 五月天激情综合网| 午夜国产精品一区| 亚洲图片自拍偷拍| 亚洲成人免费观看| 午夜一区二区三区视频| 亚洲无线码一区二区三区| 亚洲香肠在线观看| 亚洲国产综合人成综合网站| 亚洲动漫第一页| 日日夜夜精品视频天天综合网| 亚洲第一在线综合网站| 天天色天天爱天天射综合| 午夜激情久久久| 蜜臀久久久99精品久久久久久| 日韩电影在线观看电影| 日本免费在线视频不卡一不卡二| 日韩av一二三| 久久se精品一区精品二区| 欧美丰满嫩嫩电影| 91精品婷婷国产综合久久性色 | 久久99最新地址| 国产自产2019最新不卡| 国产a级毛片一区| 99re免费视频精品全部| 色婷婷av久久久久久久| 欧美午夜寂寞影院| 91精品婷婷国产综合久久性色| 日韩免费看的电影| 久久免费的精品国产v∧|