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

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

?? aled.~pas

?? 動態紅綠燈控件
?? ~PAS
字號:
unit ALed;

{ Original by Chang-Ting SU.  E-mail:ctsu@ms12.hinet.net }

{ Modified by H.J. Harvey     E-mail:hharvey@dove.net.au }
{ Version 1.10c  24/MAY/99 }

{ Now provides 6 different LED styles:
      Large Round (the original)
      Small Round
      Large Square
      Small Square
      Vertical Rect
      Horizontal Rect }

interface

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

type
  TLEDStyle = (LEDSmall,LEDLarge,LEDSqSmall,LEDSqLarge,LEDVertical,LEDHorizontal) ;
  ThhALed = class(TGraphicControl)
  private
    { Private declarations }
  protected
    { Protected declarations }
    fLedBitmap    : Array[0..1] of TBITMAP;
    fLedTimer     : TTimer;
    fTrueColor    : TColor;
    fFalseColor   : TColor;
    fBordColor    : TColor;
    fBordered     : Boolean;
    fBlink        : Boolean;
    fLEDStyle     : TLEDStyle;
    fInterval     : longint;
    fValue        : Boolean;
    ColorTemp     : Boolean;
    fOnTimer      : TNotifyEvent;
    fOnMouseEnter : TNotifyEvent;
    fOnMouseLeave : TNotifyEvent;
    procedure Paint;override;
    procedure OnLedTimer(Sender : TObject);
    procedure CMMouseEnter(var Message:TMessage);message CM_MOUSEENTER;
    procedure CMMouseLeave(var Message:TMessage);message CM_MOUSELEAVE;
  public
    { Public declarations }
    constructor Create(AOwner:TComponent);override;
    destructor  Destroy;override;
    procedure CreateLedBitmap;
    procedure FreeLedBitmap;
    procedure ChangeValue(V : Boolean);
    procedure ChangeBlink(V : Boolean);
    procedure ChangeBorder(V : Boolean);
    procedure ChangeStyle(V : TLEDStyle);
    procedure SetTrueColor(V : TColor);
    procedure SetFalseColor(V : TColor);
    procedure SetBordColor(V : TColor);
    procedure SetInterval(V : longint);
    procedure SetToTrueColor;
    procedure SetToFalseColor;
    procedure SetLedTimer;
    procedure ResetLedTimer;
  published
    { Published declarations }
    property TrueColor  : TColor  read fTrueColor write SetTrueColor default clLime;
    property FalseColor : TColor  read fFalseColor write SetFalseColor default clSilver;
    property BorderColor: TColor  read fBordColor write SetBordColor default clBtnFace;
    property Blink      : Boolean read fBlink write ChangeBlink default true;
    property Bordered   : Boolean read fBordered write ChangeBorder default true;
    property Value      : Boolean read fValue write ChangeValue default false;
    property Interval   : longint read fInterval write SetInterval default 1000;
    property LEDStyle   : TLEDStyle read fLEDStyle write ChangeStyle default LEDSmall;
    property OnTimer    : TNotifyEvent read fOnTimer write fOnTimer;
    property OnMouseEnter : TNotifyEvent read fOnMouseEnter write fOnMouseEnter;
    property OnMouseLeave : TNotifyEvent read fOnMouseLeave write fOnMouseLeave;
    property OnClick;
    property ShowHint;
  end;

procedure Register;

implementation
{$R ALed.res}

constructor ThhALed.Create(AOwner:TComponent);
begin
  inherited Create(AOwner);
  Height      := 16;
  Width       := 16;
  fTrueColor  := clLime;
  fFalseColor := clSilver;
  fBordColor  := clBtnFace;
  fBlink      := true;
  fBordered   := true;
  fValue      := false;
  fLEDStyle   := LEDSmall ;
  fInterval   := 1000;
  fLedTimer   := nil;
  fLedBitmap[0] := nil;
  fLedBitmap[1] := nil;
  ColorTemp   := true;
  CreateLedBitmap;
end;

destructor ThhALed.Destroy;
begin
  ResetLedTimer;
  FreeLedBitmap;
  inherited;
end;

procedure ThhALed.CreateLedBitmap;
var
  BitmapName : Pchar ;
  Xloc : integer ;
begin
  FreeLedBitmap;
  fLedBitmap[0] := TBitmap.Create;
  fLedBitmap[1] := TBitmap.Create;
  case fLEDStyle of
  LEDLarge:
    begin
      Width := 22 ;
      Height := 22 ;
      if fBordered then BitmapName := 'BLG' else BitmapName := 'NLG' ;
    end;
  LEDSmall:
    begin
      Width := 16 ;
      Height := 16 ;
      if fBordered then BitmapName := 'BSM' else BitmapName := 'NSM' ;
    end ;
  LEDSqLarge:
    begin
      Width := 22 ;
      Height := 22 ;
      if fBordered then BitmapName := 'BSQLG' else BitmapName := 'NSQLG' ;
    end;
  LEDSqSmall:
    begin
      Width := 16 ;
      Height := 16 ;
      if fBordered then BitmapName := 'BSQSM' else BitmapName := 'NSQSM' ;
    end;
  LEDHorizontal:
    begin
      Width := 22 ;
      Height := 16 ;
      if fBordered then BitmapName := 'BHZ' else BitmapName := 'NHZ' ;
    end;
  LEDVertical:
    begin
      Width := 16 ;
      Height := 22 ;
      if fBordered then BitmapName := 'BVT' else BitmapName := 'NVT' ;
    end;
  end ;
  fLedBitmap[0].Handle := LoadImage(HINSTANCE,BitmapName,IMAGE_BITMAP,0,0,0);
  fLedBitmap[1].Handle := LoadImage(HINSTANCE,BitmapName,IMAGE_BITMAP,0,0,0);
  fLedBitmap[0].Canvas.Brush.Color := fTrueColor;
  fLedBitmap[0].Canvas.FloodFill(Width DIV 2,Height DIV 2, clLime, fsSurface);
  fLedBitmap[1].Canvas.Brush.Color := fFalseColor;
  fLedBitmap[1].Canvas.FloodFill(Width DIV 2, Height DIV 2, clLime, fsSurface);
  if (not fBordered)
  then begin
    Xloc := 0 ;
    fLedBitmap[0].Canvas.Brush.Color := fBordColor;
    fLedBitmap[0].Canvas.FloodFill(Xloc, Xloc, clSilver, fsSurface);
    fLedBitmap[1].Canvas.Brush.Color := fBordColor;
    fLedBitmap[1].Canvas.FloodFill(Xloc, Xloc, clSilver, fsSurface);
  end ;
end;

procedure ThhALed.FreeLedBitmap;
begin
  if (Assigned(fLedBitmap[0])) then fLedBitmap[0].Destroy;
  if (Assigned(fLedBitmap[1])) then fLedBitmap[1].Destroy;
  fLedBitmap[0] := nil;
  fLedBitmap[1] := nil;
end;

procedure ThhALed.Paint;
begin
  //Canvas.StretchDraw(Rect(0,0,Width,Height),fLedBitmap[integer(ColorTemp)]);
end;

procedure ThhALed.OnLedTimer(Sender: TObject);
begin
  ColorTemp := not ColorTemp;
  Canvas.StretchDraw(Rect(0,0,Width,Height),fLedBitmap[integer(ColorTemp)]);
  if (Assigned(OnTimer)) then fOnTimer(Self);
end;

procedure ThhALed.SetToTrueColor;
begin
  Canvas.StretchDraw(Rect(0,0,Width,Height),fLedBitmap[0]);
  ColorTemp := false;
end;

procedure ThhALed.SetToFalseColor;
begin
  Canvas.StretchDraw(Rect(0,0,Width,Height),fLedBitmap[1]);
  ColorTemp := true;
end;

procedure ThhALed.SetLedTimer;
begin
  if (Assigned(fLedTimer)) then Exit;
  if (csDesigning in ComponentState) then Exit;
  ColorTemp := false;
  fLedTimer := TTimer.Create(Self);
  fLedTimer.Interval := fInterval;
  fLedTimer.OnTimer  := OnLedTimer;
end;

procedure ThhALed.ResetLedTimer;
begin
  if (Assigned(fLedTimer)) then begin
    fLedTimer.Destroy;
    fLedTimer := nil;
  end;
end;

procedure ThhALed.ChangeStyle(V : TLEDStyle);
begin
  if (fLEDStyle <> V) then begin
    fLEDStyle := V ;
    CreateLedBitmap;
    Repaint;
  end;
end;

procedure ThhALed.ChangeBorder(V : Boolean);
begin
  if (fBordered <> V) then begin
    fBordered := V ;
    CreateLedBitmap;
    Repaint;
  end;
end;

procedure ThhALed.ChangeValue(V : Boolean);
begin
  if (fValue <> V)
  then begin
    fValue := V;
    if (fValue)
    then begin
      SetToTrueColor;
      if (fBlink)
      then
        SetLedTimer;
    end
    else begin
      ResetLedTimer;
      SetToFalseColor;
    end
       (* fValue == true or false *)
  end; (*(fValue <> V)*)
end;

procedure ThhALed.ChangeBlink(V : Boolean);
begin
  if (fBlink <> V)
  then begin
    if (fValue)
    then
      SetToTrueColor
    else
      SetToFalseColor;
      fBlink := V;
      if (V and fValue)
      then
        SetLedTimer
      else
        ResetLedTimer
  end;
end;

procedure ThhALed.SetTrueColor(V : TColor);
var
  Temp : Boolean;
begin
  if (fTrueColor <> V)
  then begin
    Temp := fBlink;
    if (fBlink) then Blink := false;
    fTrueColor := V;
    CreateLedBitmap;
    Blink := Temp;
    Repaint;
  end
end;

procedure ThhALed.SetFalseColor(V : TColor);
var
  Temp : Boolean;
begin
  if (fFalseColor <> V)
  then begin
    Temp := fBlink;
    if (fBlink) then Blink := false;
    fFalseColor := V;
    CreateLedBitmap;
    Blink := Temp;
    Repaint;
  end
end;

procedure ThhALed.SetBordColor(V : TColor);
var
  Temp : Boolean;
begin
  if (fBordColor <> V)
  then begin
    Temp := fBlink;
    if (fBlink) then Blink := false;
    fBordColor := V;
    CreateLedBitmap;
    Blink := Temp;
    Repaint;
  end
end;

procedure ThhALed.SetInterval(V : longint);
begin
  fInterval := V;
  if (Assigned(fLedTimer)) then
    fLedTimer.Interval := V;
end;

procedure ThhALed.CmMouseEnter(var Message:TMessage);
begin
  inherited;
  if (Assigned(fOnMouseEnter)) then fOnMouseEnter(Self);
end;

procedure ThhALed.CmMouseLeave(var Message:TMessage);
begin
  inherited;
  if (Assigned(fOnMouseLeave)) then fOnMouseLeave(Self);
end;

procedure Register;
begin
  RegisterComponents('Howie', [ThhALed]);
end;

end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
激情五月激情综合网| 日韩一级高清毛片| 精品一区二区三区久久久| 7777精品伊人久久久大香线蕉 | 在线观看区一区二| 国产在线观看免费一区| 亚洲国产欧美另类丝袜| 国产精品久久久久久久久免费樱桃 | 美脚の诱脚舐め脚责91| 亚洲激情av在线| 国产精品久久久久久久第一福利| 6080午夜不卡| 欧美三级乱人伦电影| 一本色道**综合亚洲精品蜜桃冫| 成人综合婷婷国产精品久久免费| 久久机这里只有精品| 五月天亚洲婷婷| 亚洲一区二区三区视频在线| 一区二区三区欧美日| 亚洲日本va午夜在线电影| 亚洲国产激情av| 国产精品色噜噜| 中文字幕中文字幕中文字幕亚洲无线| 精品第一国产综合精品aⅴ| 91精品国产综合久久香蕉麻豆 | 日韩一级欧美一级| 欧美一区二区三区四区五区| 在线成人av影院| 欧美精品色综合| 日韩一区二区麻豆国产| 日韩欧美国产高清| 国产亚洲欧美日韩日本| 精品国产欧美一区二区| 久久久久久久国产精品影院| 日本一区二区三区久久久久久久久不| 久久久国产精品午夜一区ai换脸| 欧美一级xxx| 久久看人人爽人人| 中文字幕在线播放不卡一区| 国产精品第13页| 亚洲国产一区在线观看| 裸体一区二区三区| 国产乱对白刺激视频不卡| 国产馆精品极品| 欧洲激情一区二区| 日韩欧美精品在线| 国产亚洲精品aa| 一区二区三区精密机械公司| 婷婷激情综合网| 丁香六月综合激情| 欧美高清你懂得| 国产欧美一区二区精品秋霞影院 | 一区二区视频在线| 日韩高清不卡一区二区三区| 精品一二线国产| 国产一区激情在线| av成人老司机| 日韩视频免费观看高清完整版在线观看 | 欧美xxxxx牲另类人与| 国产亚洲一区二区三区在线观看| 亚洲精品中文字幕在线观看| 久久精品国产成人一区二区三区| 国模无码大尺度一区二区三区| 99久久国产免费看| 欧美午夜精品一区二区三区 | 五月激情综合色| 国产成人在线视频网站| 91精品国产一区二区三区蜜臀| 国产丝袜欧美中文另类| 肉肉av福利一精品导航| 国产麻豆日韩欧美久久| 欧美电影一区二区| 国产精品进线69影院| 精品亚洲国产成人av制服丝袜| 91在线精品秘密一区二区| 久久久噜噜噜久噜久久综合| 国产精品美女久久久久久2018| 国产精品成人免费精品自在线观看 | 久久国产精品无码网站| 一道本成人在线| 亚洲国产成人一区二区三区| 亚洲已满18点击进入久久| 丁香婷婷综合激情五月色| 精品日韩一区二区三区免费视频| 亚洲国产中文字幕| 91麻豆成人久久精品二区三区| 国产欧美日韩视频一区二区| 美女视频网站黄色亚洲| 91精品久久久久久蜜臀| 性做久久久久久免费观看欧美| 99re亚洲国产精品| 国产精品初高中害羞小美女文| 国产精品12区| 欧美一级片在线看| 日本不卡在线视频| 欧美一区二区久久| 五月天网站亚洲| 丁香婷婷综合激情五月色| 五月天视频一区| 欧美日韩在线直播| 国产精品丝袜黑色高跟| 美女视频网站黄色亚洲| 亚洲国产精品久久人人爱蜜臀 | 99精品欧美一区二区三区小说 | 久久疯狂做爰流白浆xx| 欧美高清视频www夜色资源网| 夜夜夜精品看看| 欧美午夜影院一区| 日韩和欧美的一区| 欧美精品国产精品| 麻豆精品一区二区三区| 国产午夜精品一区二区三区四区 | 欧美成人一区二区三区片免费 | 国产精品美女视频| 日韩视频免费观看高清完整版 | 国产精品久久久久毛片软件| 欧美影片第一页| 精品综合久久久久久8888| 亚洲日本一区二区三区| 精品裸体舞一区二区三区| 一本色道久久综合亚洲91| 麻豆国产一区二区| 亚洲精品国产品国语在线app| 精品88久久久久88久久久| 不卡电影一区二区三区| 六月婷婷色综合| 一区二区不卡在线播放| 国产精品三级在线观看| 337p亚洲精品色噜噜狠狠| 欧美成人video| 色婷婷综合久久久中文一区二区| 免费观看91视频大全| 亚洲精品国产a| 国产精品嫩草影院av蜜臀| 日韩女优毛片在线| 欧美日韩一区成人| 色婷婷av一区二区三区大白胸| 国产一区二区在线视频| 日本午夜一区二区| 亚洲成a人片在线不卡一二三区| 中文字幕欧美国产| 久久久www免费人成精品| 在线播放/欧美激情| 一本到不卡免费一区二区| 粉嫩高潮美女一区二区三区 | 国产偷v国产偷v亚洲高清| 日韩欧美黄色影院| 欧美一级高清片| 91麻豆精品国产自产在线观看一区| 在线观看免费亚洲| 色综合久久99| 欧美网站大全在线观看| 91久久精品网| 成人黄色综合网站| 成人va在线观看| 成人动漫在线一区| 99久精品国产| 97久久超碰精品国产| 色综合天天综合网国产成人综合天| 国产91精品一区二区麻豆网站| 国产乱码精品一区二区三区忘忧草 | 欧美亚洲自拍偷拍| 精品视频一区 二区 三区| 欧美系列在线观看| 制服丝袜亚洲色图| 日韩亚洲欧美综合| 久久品道一品道久久精品| 精品电影一区二区| 国产精品女主播av| 亚洲一区二区三区中文字幕在线| 亚洲免费伊人电影| 亚洲综合激情网| 日本aⅴ免费视频一区二区三区| 免费视频最近日韩| 国产在线看一区| 粉嫩高潮美女一区二区三区| 日本韩国精品在线| 日韩一级大片在线| 国产日韩影视精品| 国产精品久久久久久久久久免费看 | 亚洲视频图片小说| 亚洲午夜激情av| 久久精品国产久精国产| 国产精一品亚洲二区在线视频| 成人少妇影院yyyy| 欧美午夜精品久久久久久超碰| 欧美一区二区视频在线观看2022| 久久久天堂av| 亚洲福利视频三区| 国产一区二区0| 色婷婷一区二区| 日韩欧美中文字幕制服| 国产精品久久久久久亚洲伦| 亚洲一区二区三区国产| 国产一区二区在线观看视频| 欧洲精品中文字幕| 久久精品亚洲精品国产欧美kt∨| 国产精品女人毛片| 免费视频一区二区| 色婷婷av一区二区三区大白胸 |