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

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

?? qicomponent.pas

?? Iocomp Ultra Pack v3.0.2 Sources.For.Delphi 數(shù)據(jù)顯示編程插件,可用于工業(yè)控制
?? PAS
?? 第 1 頁 / 共 3 頁
字號:
{*******************************************************}
{                                                       }
{       TiComponent                                     }
{                                                       }
{       Copyright (c) 1997,2003 Iocomp Software         }
{                                                       }
{*******************************************************}
{$I iInclude.inc}

{$ifdef iVCL}unit  iComponent;{$endif}
{$ifdef iCLX}unit QiComponent;{$endif}

interface

uses
  {$I iIncludeUses.inc}
  {$IFDEF iVCL} iTypes, iGPFunctions,   iMath, ActiveX;{$ENDIF}
  {$IFDEF iCLX}QiTypes, QiGPFunctions, QiMath;         {$ENDIF}

type
  TiPaintEvent = procedure(Sender: TObject; Canvas: TCanvas) of object;

  TiComponent = class(TCustomControl)
  private
    FOnPaint                      : TiPaintEvent;
    FCreationTime                 : Double;
   {$IFDEF EVAL}
    FFirstEvalExpiredPainted      : Boolean;
    {$ENDIF}
    FUpdateActive                 : Boolean;
    FUpdateFrameRate              : Integer;
    FLastUpdate                   : Double;
    FNeedsInvalidateChange        : Boolean;
    FNeedsBackGroundChange        : Boolean;
    FBackGroundBitmap             : TBitmap;
    FOffScreenBitmap              : TBitmap;
    FBackGroundPicture            : TBitmap;
    FBackGroundColor              : TColor;
    FBackGroundChanged            : Boolean;
    FBorderStyle                  : TiBevelStyle;
    FOffsetY                      : Integer;
    FOffsetX                      : Integer;
    FHasFocus                     : Boolean;
    FOnChangeProtected            : TChangePropertyEvent;
    FOnRequestEdit                : TRequestEditEvent;
    FAutoFrameRate                : Boolean;
    FLoading                      : Boolean;
    FOnGetDesigning               : TGetDesigningEvent;
    FActiveXDesigning             : Boolean;
    FCachedDrawing                : Boolean;
    FOptionSaveAllProperties      : Boolean;
    FUserGenerated                : Boolean;

    FErrorActive                  : Boolean;
    FErrorText                    : String;
    FErrorBackGroundColor         : TColor;
    FErrorFont                    : TFont;
  protected
    function GetCenterPointDouble(Canvas:TCanvas): TPointDouble;
    function GetLoading           : Boolean;
    function GetBorderMargin      : Integer;
    function GetCenterPoint     (Canvas:TCanvas): TPoint;                    virtual;

    procedure SetOffsetX             (const Value: Integer);
    procedure SetOffsetY             (const Value: Integer);
    procedure SetBackGroundPicture   (const Value: TBitmap);
    procedure SetUpdateFrameRate     (const Value: Integer);
    procedure SetAutoFrameRate       (const Value: Boolean);
    procedure SetCachedDrawing       (const Value: Boolean);      virtual;
    procedure SetBorderStyle         (const Value: TiBevelStyle); virtual;
    procedure SetBackGroundColor     (const Value: TColor      ); virtual;

    procedure SetErrorActive         (const Value: Boolean);
    procedure SetErrorText           (const Value: String);
    procedure SetErrorBackGroundColor(const Value: TColor);
    procedure SetErrorFont           (const Value: TFont);

    procedure DrawBackGround      (Canvas: TCanvas; BackGroundColor: TColor); virtual;
    procedure DrawBorder          (Canvas: TCanvas);                          virtual;

    procedure CreateBackGroundBitmap;
    procedure CreateOffScreenBitmap;

    procedure ShowOffScreenBitmap (Bitmap: TBitmap);
    procedure ShowBackGround;

    procedure BackGroundChange;
    procedure InvalidateChange;                  
    procedure InvalidateNow;

    procedure BackGroundChangeEvent(Sender : TObject);
    procedure InvalidateChangeEvent(Sender : TObject);
    procedure InvalidateNowEvent   (Sender : TObject);

    function  GetIsDesigning: Boolean;
    function  GetBackGroundBitmap: TBitmap;
                                                      
    procedure ResetBackGroundChange;
    procedure TransferBackGround(Canvas: TCanvas);
    procedure DoRepaintType(Value : TiRepaintType);
    property  BackGroundBitmap  : TBitmap      read GetBackGroundBitmap;
    property  BackGroundChanged : Boolean      read FBackGroundChanged;

    procedure SetLoading(Value: Boolean);

    function  GetPropertyType(Instance: TPersistent; Path: String; PropertyName: String): TiTypeKind;

    procedure PropertyVarType(PropertyName: String; var AVarType: TiTypeKind);

    function  GetTimerRunning : Boolean;                   virtual; abstract;
    procedure TimerStart(InitialDelay, Interval: Integer); virtual; abstract;
    procedure TimerStop;                                   virtual; abstract;

    procedure MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer); override;
    procedure MouseUp  (Button: TMouseButton; Shift: TShiftState; X, Y: Integer); override;
    procedure MouseMove(                      Shift: TShiftState; X, Y: Integer); override;

    procedure DblClick;                                                           override;

    procedure KeyDown (var Key: Word; Shift: TShiftState); override;
    procedure KeyUp   (var Key: Word; Shift: TShiftState); override;
    procedure KeyPress(var Key: Char);                     override;

    function OPCOutputData(PropertyName: String; Value: OleVariant): Boolean; virtual;

    procedure iDoSetFocus;  virtual;
    procedure iDoKillFocus; virtual;

    procedure iWantSpecialKey(var CharCode: Word; var Result: Longint); virtual;
    procedure iKeyUp         (var CharCode: Word; Shift: TShiftState);  virtual;
    procedure iKeyDown       (var CharCode: Word; Shift: TShiftState);  virtual;
    procedure iKeyPress      (var Key: Char);                           virtual;

    procedure iMouseDown (Button: TMouseButton; Shift: TShiftState; X, Y: Integer         );          virtual;
    procedure iMouseUp   (Button: TMouseButton; Shift: TShiftState; X, Y: Integer         );          virtual;
    procedure iMouseMove (                      Shift: TShiftState; X, Y: Integer         );          virtual;

    procedure iDoubleClick;                                                                           virtual;

    function  iMouseWheel(WheelDelta: Integer;  Shift: TShiftState; const MousePos: TPoint): Boolean; virtual;

    function  GetXYRadPoint(AngleDegrees, Radius: Double; Offset : TPoint) : TPoint;

    procedure Paint;                     override;

    procedure PaintToDC;
    procedure PaintToMetaFile;
    procedure PaintEvalExpired;
    procedure iPaintTo(Canvas: TCanvas); virtual; abstract;

    procedure CreateBackGroundPicture;

    property  BackGroundColor   : TColor       read FBackGroundColor   write SetBackGroundColor    default clBtnFace;
    property  BackGroundPicture : TBitmap      read FBackGroundPicture write SetBackGroundPicture;
    property  OffsetX           : Integer      read FOffsetX           write SetOffsetX            default 0;
    property  OffsetY           : Integer      read FOffsetY           write SetOffsetY            default 0;

    property  CachedDrawing     : Boolean      read FCachedDrawing     write SetCachedDrawing      default True;

    procedure SetBooleanProperty(Value : Boolean; var FVariable : Boolean; RepaintType : TiRepaintType);
    procedure SetIntegerProperty(Value : Integer; var FVariable : Integer; RepaintType : TiRepaintType);
    procedure SetDoubleProperty (Value : Double;  var FVariable : Double;  RepaintType : TiRepaintType);
    procedure SetStringProperty (Value : String;  var FVariable : String;  RepaintType : TiRepaintType);
    procedure SetColorProperty  (Value : TColor;  var FVariable : TColor;  RepaintType : TiRepaintType);
    procedure SetWideStringProperty(Value: WideString; var FVariable: WideString; RepaintType: TiRepaintType);

    procedure DoRepaint;
    procedure DoFrameRate;
    procedure DoIsDesigning(Sender: TObject; var Designing: Boolean);

    property  HasFocus              : Boolean              read FHasFocus;
    property  Loading               : Boolean              read GetLoading;
    property  UpdateActive          : Boolean              read FUpdateActive;

    property OnRequestEditProtected : TRequestEditEvent    read FOnRequestEdit        write FOnRequestEdit;
    property OnChangeProtected      : TChangePropertyEvent read FOnChangeProtected    write FOnChangeProtected;

    property OnPaint                : TiPaintEvent         read FOnPaint              write FOnPaint;

    property BorderMargin           : Integer              read GetBorderMargin;

    property IsDesigning            : Boolean              read GetIsDesigning;
    property OnGetDesigning         : TGetDesigningEvent   read FOnGetDesigning       write FOnGetDesigning;
    property ActiveXDesigning       : Boolean              read FActiveXDesigning     write FActiveXDesigning;

    property UserGenerated          : Boolean              read FUserGenerated        write FUserGenerated;

    property ErrorActive            : Boolean              read FErrorActive          write SetErrorActive;
    property ErrorText              : String               read FErrorText            write SetErrorText;
    property ErrorFont              : TFont                read FErrorFont            write SetErrorFont;
    property ErrorBackGroundColor   : TColor               read FErrorBackGroundColor write SetErrorBackGroundColor;
  public
    property    BorderStyle         : TiBevelStyle         read FBorderStyle       write SetBorderStyle        default ibsNone;

    constructor Create(AOwner: TComponent);                       override;
    destructor  Destroy;                                          override;
    procedure   RepaintAll;  virtual;
    procedure   BeginUpdate; virtual;
    procedure   EndUpdate;   virtual;
    procedure   Lock;        virtual; abstract;
    procedure   Unlock;      virtual; abstract;

    procedure SaveImageToBitmap  (FileName: String);

    procedure SavePropertiesToFile  (FileName: String); virtual;
    procedure LoadPropertiesFromFile(FileName: String); virtual;
  published
    property Visible;
    property Enabled;
    property ShowHint;
    property PopupMenu;
    property OnClick;
    property OnDblClick;
    property OnDragDrop;
    property OnDragOver;
    property OnStartDrag;
    property OnEndDrag;
    property OnMouseDown;
    property OnMouseMove;
    property OnMouseUp;
    property OnKeyDown;
    property OnKeyPress;
    property OnKeyUp;
    property OnEnter;
    property OnExit;

    property OptionSaveAllProperties : Boolean read FOptionSaveAllProperties write FOptionSaveAllProperties default False;
    property AutoFrameRate           : Boolean read FAutoFrameRate           write SetAutoFrameRate         default False;
    property UpdateFrameRate         : Integer read FUpdateFrameRate         write SetUpdateFrameRate       default 60;
  end;

{$ifdef iVCL}{$R  iIocompCommon.res} {$endif}
{$ifdef iCLX}{$R QiIocompCommon.res}{$endif}

implementation

type
  TWinControlAccess = class(TWinControl) end;
//****************************************************************************************************************************************************
constructor TiComponent.Create(AOwner: TComponent);
begin
  inherited Create(AOwner);
  ControlStyle := [csCaptureMouse, csClickEvents, csDoubleClicks, csReplicatable, csOpaque];

  FCreationTime      := Now;
  FBackGroundColor   := clBtnFace;
  FBackGroundChanged := True;                                                   
  FLastUpdate        := Now;
  FCachedDrawing     := True;
  FUpdateFrameRate   := 60;
  FAutoFrameRate     := False;

  FErrorFont := TFont.Create;
  with FErrorFont do
    begin
      FErrorFont.Color := clRed;
      FErrorFont.Style := [fsBold];
      OnChange := InvalidateChangeEvent;
    end;

  FErrorText := 'Error';
end;
//****************************************************************************************************************************************************
destructor TiComponent.Destroy;
begin
  if Assigned(FBackGroundBitmap)  then FBackGroundBitmap.Free;
  if Assigned(FBackGroundPicture) then FBackGroundPicture.Free;

  FErrorFont.Free;
  inherited;
end;
//****************************************************************************************************************************************************
procedure TiComponent.SetBackGroundPicture(const Value: TBitmap);
begin
  FBackGroundPicture.Assign(Value);
end;
//****************************************************************************************************************************************************
procedure TiComponent.DoRepaint;
begin
  FNeedsBackGroundChange := False;
  FNeedsInvalidateChange := False;
  FLastUpdate            := Now;
  Invalidate;
end;
//****************************************************************************************************************************************************
procedure TiComponent.DoFrameRate;
var
  UpdateInterval : Double;
begin
  if not FAutoFrameRate   then
    begin
      DoRepaint;
      Exit;
    end;

  if FUpdateFrameRate = 0 then
    begin
      DoRepaint;
      Exit;
    end;

  UpdateInterval := 1/(FUpdateFrameRate *24*60*60);
  if Now > (FLastUpdate + UpdateInterval) then DoRepaint;
end;
//****************************************************************************************************************************************************
procedure TiComponent.BeginUpdate;
begin
  FUpdateActive := True;
end;
//****************************************************************************************************************************************************
procedure TiComponent.EndUpdate;
begin
  FUpdateActive := False;

  if FNeedsBackGroundChange or FNeedsInvalidateChange then DoFrameRate
end;
//****************************************************************************************************************************************************
procedure TiComponent.BackGroundChange;
begin
  FBackGroundChanged := True;

  if FUpdateActive then
    begin
      FNeedsBackGroundChange := True;
    end
  else if FAutoFrameRate then
    begin
      FNeedsBackGroundChange := True;
      DoFrameRate;
    end
  else DoRepaint;
end;
//****************************************************************************************************************************************************
procedure TiComponent.InvalidateChange;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色久优优欧美色久优优| 国产欧美日韩久久| 91精品麻豆日日躁夜夜躁| 在线中文字幕一区| 欧美日韩精品一区二区三区四区| 色婷婷精品大在线视频| 91蝌蚪porny成人天涯| 色综合天天综合给合国产| 91小宝寻花一区二区三区| 91成人网在线| 欧美精品久久一区| 日韩午夜精品视频| 亚洲精品一区二区三区在线观看| 欧美精品一区二区不卡| 久久久精品综合| 亚洲国产成人在线| 亚洲精品免费视频| 亚洲成a天堂v人片| 美女一区二区在线观看| 国产很黄免费观看久久| 北条麻妃一区二区三区| 色成人在线视频| 91精品在线免费观看| 欧美成人精精品一区二区频| 久久―日本道色综合久久| 国产精品毛片久久久久久| 亚洲精品视频在线观看网站| 午夜精品久久久久久久久久久| 奇米精品一区二区三区四区| 国产麻豆精品久久一二三| aaa欧美日韩| 91精品国产综合久久国产大片| 久久影院午夜片一区| 国产精品美女一区二区在线观看| 一区二区三区加勒比av| 麻豆成人久久精品二区三区红 | 日韩黄色免费电影| 精品一区二区在线视频| 菠萝蜜视频在线观看一区| 欧美日韩国产免费| 国产日本一区二区| 亚洲第一在线综合网站| 国产激情精品久久久第一区二区| 色老汉一区二区三区| 欧美精品一区二区三区很污很色的| 国产精品视频九色porn| 秋霞电影一区二区| av色综合久久天堂av综合| 欧美卡1卡2卡| 国产精品国产三级国产有无不卡| 舔着乳尖日韩一区| 成人黄页毛片网站| 欧美一区二区在线不卡| 粉嫩高潮美女一区二区三区| 在线免费视频一区二区| 久久久三级国产网站| 亚洲18女电影在线观看| k8久久久一区二区三区| 精品国产sm最大网站| 亚洲资源在线观看| 国产成人高清在线| 欧美一区三区四区| 亚洲一区二区三区在线看| 国产99精品国产| 欧美成人一级视频| 亚洲第一福利一区| 91网上在线视频| 中文字幕巨乱亚洲| 激情丁香综合五月| 欧美美女喷水视频| 亚洲美女在线国产| 成人午夜激情视频| 日韩欧美成人午夜| 亚洲福利国产精品| 97se亚洲国产综合在线| 国产色产综合色产在线视频| 免费高清成人在线| 欧美日韩免费观看一区二区三区 | 一区二区三区四区国产精品| 国产精品996| 日韩欧美国产三级电影视频| 亚洲一区二区在线播放相泽| av成人老司机| 国产精品日产欧美久久久久| 国产成人免费xxxxxxxx| 精品国产伦一区二区三区免费| 三级久久三级久久| 欧美三区在线观看| 亚洲一区二区免费视频| 91色婷婷久久久久合中文| 国产精品乱人伦一区二区| 国产一区二区福利视频| 精品国产污网站| 激情伊人五月天久久综合| 91精品国产色综合久久久蜜香臀| 亚洲成av人片在www色猫咪| 91在线视频在线| 亚洲视频一区在线观看| 一本久道久久综合中文字幕| ...xxx性欧美| 99久久99久久综合| 亚洲精品国产一区二区三区四区在线| 成人网男人的天堂| 中文字幕在线不卡一区| 波多野结衣精品在线| 亚洲欧洲av另类| 91免费视频网| 亚洲激情中文1区| 日本韩国一区二区三区视频| 亚洲一区二区欧美| 91精品国产一区二区三区香蕉| 美脚の诱脚舐め脚责91| 久久久久久久综合| voyeur盗摄精品| 亚洲午夜激情av| 777午夜精品视频在线播放| 免费观看日韩电影| 久久精品综合网| 99热99精品| 亚洲高清一区二区三区| 日韩欧美一级精品久久| 国产成人激情av| 一区二区三区精品视频在线| 欧美精品v日韩精品v韩国精品v| 免费成人av在线播放| 2021国产精品久久精品| 成人a级免费电影| 一区二区三区在线视频播放| 欧美丰满高潮xxxx喷水动漫 | 日韩一区二区麻豆国产| 精品亚洲欧美一区| 中文字幕永久在线不卡| 欧美三级电影精品| 久久超碰97人人做人人爱| 国产精品美女一区二区三区| 欧美色图在线观看| 精品一区二区三区欧美| 国产精品成人午夜| 欧美理论在线播放| 国产1区2区3区精品美女| 亚洲曰韩产成在线| 日韩女优电影在线观看| 97国产一区二区| 麻豆精品视频在线| 自拍偷拍亚洲欧美日韩| 欧美精品成人一区二区三区四区| 国产大陆a不卡| 亚洲国产裸拍裸体视频在线观看乱了| 精品免费一区二区三区| 色94色欧美sute亚洲线路二| 蜜桃av噜噜一区二区三区小说| 国产精品日产欧美久久久久| 91精品免费在线观看| 99re成人精品视频| 免费在线成人网| 亚洲欧美日韩综合aⅴ视频| 日韩欧美国产1| 欧美自拍偷拍一区| 国产精品123| 爽好久久久欧美精品| 国产精品毛片a∨一区二区三区| 91精品国产综合久久久久久久久久| 成人精品视频一区| 麻豆91精品91久久久的内涵| 亚洲精品视频在线看| 懂色av一区二区三区免费看| 日本成人中文字幕在线视频| 亚洲视频一区在线观看| 久久久久久久久久久久久女国产乱| 欧美三级在线看| 99精品黄色片免费大全| 国产精品69毛片高清亚洲| 三级影片在线观看欧美日韩一区二区 | 欧美极品另类videosde| 这里只有精品电影| 91久久香蕉国产日韩欧美9色| 国产精品99久久久久久久vr| 美腿丝袜亚洲综合| 午夜精品视频一区| 亚洲精品久久7777| 日韩美女久久久| 欧美激情综合网| 久久久www成人免费毛片麻豆| 日韩欧美一级二级三级久久久| 欧美日韩在线播放| 色哟哟一区二区三区| 成人精品一区二区三区四区 | 欧美日韩成人综合天天影院| 色综合天天综合色综合av| 懂色一区二区三区免费观看| 国产美女视频91| 激情综合色综合久久综合| 男人的天堂久久精品| 日韩av二区在线播放| 五月天激情综合| 丝袜美腿亚洲综合| 午夜电影一区二区| 舔着乳尖日韩一区| 日韩高清欧美激情| 免费在线成人网|