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

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

?? qithermometer.pas

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

{$ifdef iVCL}unit  iThermometer;{$endif}
{$ifdef iCLX}unit QiThermometer;{$endif}

interface

uses
  {$I iIncludeUses.inc}
  {$IFDEF iVCL} iTypes,  iGPFunctions,  iScaleComponent;{$ENDIF}
  {$IFDEF iCLX}QiTypes, QiGPFunctions, QiScaleComponent;{$ENDIF}

type
  TiThermometerIndicatorStyle = (itisBulb, itisBar, itisBarSunken, itisBarRaised);

  TiThermometer = class(TiScaleComponent)
  private
    FBarRect                     : TRect;
    FCenterPoint                 : TPoint;

    FIndicatorColor              : TColor;
    FIndicatorWidth              : Integer;
    FOrientation                 : TiOrientation;
    FOrientationTickMarks        : TiOrientationSide;
    FEndsMargin                  : Integer;
    FIndicatorBulbSize           : Integer;
    FIndicatorBackGroundColor    : TColor;

    FCurrentMaxRect              : TRect;
    FCurrentMinRect              : TRect;
    FMovingMin                   : Boolean;
    FMovingMax                   : Boolean;
    FMouseDownX                  : Integer;
    FMouseDownY                  : Integer;
    FOldCurrentValue             : Double;

    FIndicatorStyle              : TiThermometerIndicatorStyle;
    FAutoCenter                  : Boolean;
    FReverseScale                : Boolean;
    FIndicatorFillReferenceStyle : TiPointerFillReferenceStyle;
    FIndicatorFillReferenceValue : Double;
    FOnAutoSize                  : TNotifyEvent;

    procedure SetOrientationTickMarks       (const Value: TiOrientationSide);
    procedure SetOrientation                (const Value: TiOrientation);
    procedure SetEndsMargin                 (const Value: Integer);
    procedure SetIndicatorWidth             (const Value: Integer);
    procedure SetIndicatorColor             (const Value: TColor);
    procedure SetIndicatorBulbSize          (const Value: Integer);
    procedure SetIndicatorBackGroundColor   (const Value: TColor);
    procedure SetIndicatorStyle             (const Value: TiThermometerIndicatorStyle);
    procedure SetAutoCenter                 (const Value: Boolean);
    procedure SetReverseScale               (const Value: Boolean);
    procedure SetIndicatorFillReferenceStyle(const Value: TiPointerFillReferenceStyle);
    procedure SetIndicatorFillReferenceValue(const Value: Double);
  protected
    procedure DrawTicks        (Canvas: TCanvas);
    procedure DrawIndicatorBulb(Canvas: TCanvas);
    procedure DrawIndicatorBox (Canvas: TCanvas);
    procedure DrawLimits       (Canvas: TCanvas);
    procedure DrawPointer      (Canvas: TCanvas; Position: Double; Margin, Size: Integer; DrawScaleSide: Boolean; AColor: TColor; var PositionRect: TRect);

    procedure iPaintTo(Canvas: TCanvas);                                            override;
    procedure iMouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer);  override;
    procedure iMouseUp  (Button: TMouseButton; Shift: TShiftState; X, Y: Integer);  override;
    procedure iMouseMove(                      Shift : TShiftState; X, Y: Integer); override;
    procedure CalcPoints;

    function  GetCenterPoint(Canvas: TCanvas): TPoint;                              override;
    function  GetPositionPixels(Value : Double) : Integer;
    function  GetTravelRange : Integer;

    property OnAutoSize                  : TNotifyEvent                read FOnAutoSize                  write FOnAutoSize;
  public
    constructor Create(AOwner: TComponent); override;
  published
    property IndicatorWidth              : Integer                     read FIndicatorWidth              write SetIndicatorWidth           default 2;
    property IndicatorBulbSize           : Integer                     read FIndicatorBulbSize           write SetIndicatorBulbSize        default 6;
    property IndicatorStyle              : TiThermometerIndicatorStyle read FIndicatorStyle              write SetIndicatorStyle           default itisBulb;
    property EndsMargin                  : Integer                     read FEndsMargin                  write SetEndsMargin               default 10;
    property IndicatorColor              : TColor                      read FIndicatorColor              write SetIndicatorColor           default clRed;
    property IndicatorBackGroundColor    : TColor                      read FIndicatorBackGroundColor    write SetIndicatorBackGroundColor default clMaroon;
    property Orientation                 : TiOrientation               read FOrientation                 write SetOrientation              default ioVertical;
    property OrientationTickMarks        : TiOrientationSide           read FOrientationTickMarks        write SetOrientationTickMarks     default iosBottomRight;
    property AutoCenter                  : Boolean                     read FAutoCenter                  write SetAutoCenter               default True;
    property ReverseScale                : Boolean                     read FReverseScale                write SetReverseScale             default False;

    property IndicatorFillReferenceStyle : TiPointerFillReferenceStyle read FIndicatorFillReferenceStyle write SetIndicatorFillReferenceStyle;
    property IndicatorFillReferenceValue : Double                      read FIndicatorFillReferenceValue write SetIndicatorFillReferenceValue;

    property BackGroundColor;
    property BorderStyle;
    property OffsetX;
    property OffsetY;
    property CachedDrawing;
    property Transparent;

    property ShowTicksMajor;
    property ShowTicksMinor;
    property ShowTickLabels;
    property TickMajorCount;
    property TickMajorColor;
    property TickMajorLength          default 10;
    property TickMajorStyle;
    property TickMinorAlignment;
    property TickMinorCount;
    property TickMinorColor;
    property TickMinorLength          default 6;
    property TickMinorStyle;
    property TickMargin               default 8;
    property TickLabelMargin;
    property TickLabelFont;
    property TickLabelPrecision;
    property PrecisionStyle;
    property OnCustomizeTickLabel;

    property ShowTicksMajorFirstLast;
    property ShowMaxPointer;
    property ShowMinPointer;
    property MinMaxPointerSize;
    property MinMaxPointerMargin      default 5;
    property MaxPointerColor;
    property MinPointerColor;
    property BackGroundPicture;
    property MinMaxUserCanMove;

    property AutoScaleEnabled;
    property AutoScaleDesiredTicks;
    property AutoScaleMaxTicks;
    property AutoScaleStyle;
    property Width                    default 100;
    property Height                   default 150;
  end;

implementation
//*************************************************************************************************************************************
constructor TiThermometer.Create(AOwner: TComponent);
begin
  inherited Create(AOwner);

  Width               := 100;
  Height              := 150;
  TickMajorLength     := 10;
  TickMinorLength     := 6;
  TickMargin          := 8;
  MinMaxPointerMargin := 5;

  FEndsMargin               := 10;
  FAutoCenter               := True;

  FIndicatorWidth           := 2;
  FIndicatorColor           := clRed;
  FIndicatorBulbSize        := 6;
  FIndicatorBackGroundColor := clMaroon;

  CreateBackGroundPicture;
end;
//****************************************************************************************************************************************************
procedure TiThermometer.SetIndicatorWidth             (const Value:Integer);begin SetIntegerProperty(Value,FIndicatorWidth,             irtBackGround);end;
procedure TiThermometer.SetIndicatorColor             (const Value:TColor); begin SetColorProperty  (Value,FIndicatorColor,             irtBackGround);end;
procedure TiThermometer.SetEndsMargin                 (const Value:Integer);begin SetIntegerProperty(Value,FEndsMargin,                 irtBackGround);end;
procedure TiThermometer.SetAutoCenter                 (const Value:Boolean);begin SetBooleanProperty(Value,FAutoCenter,                 irtBackGround);end;
procedure TiThermometer.SetIndicatorBulbSize          (const Value:Integer);begin SetIntegerProperty(Value,FIndicatorBulbSize,          irtBackGround);end;
procedure TiThermometer.SetIndicatorBackGroundColor   (const Value:TColor); begin SetColorProperty  (Value,FIndicatorBackGroundColor,   irtBackGround);end;
procedure TiThermometer.SetReverseScale               (const Value:Boolean);begin SetBooleanProperty(Value,FReverseScale,               irtBackGround);end;
procedure TiThermometer.SetIndicatorFillReferenceValue(const Value:Double );begin SetDoubleProperty (Value,FIndicatorFillReferenceValue,irtBackGround);end;
//****************************************************************************************************************************************************
procedure TiThermometer.SetOrientationTickMarks(const Value: TiOrientationSide);
begin
  if FOrientationTickMarks<>Value then
    begin
      FOrientationTickMarks := Value;
      BackGroundChange;
    end;
end;
//****************************************************************************************************************************************************
procedure TiThermometer.SetIndicatorStyle(const Value: TiThermometerIndicatorStyle);
begin
  if FIndicatorStyle <> Value then
    begin
      FIndicatorStyle := Value;
      BackGroundChange;
    end;
end;
//****************************************************************************************************************************************************
procedure TiThermometer.SetOrientation(const Value: TiOrientation);
var
  TempWidth : Integer;
begin
  if FOrientation <> Value then
    begin
      FOrientation := Value;
      if not Loading then
        begin
          TempWidth := Width;
          Width     := Height;
          Height    := TempWidth;
          if Assigned(FOnAutoSize) then FOnAutoSize(Self);
        end;
      BackGroundChange;
    end;
end;
//****************************************************************************************************************************************************
procedure TiThermometer.SetIndicatorFillReferenceStyle(const Value: TiPointerFillReferenceStyle);
begin
  if FIndicatorFillReferenceStyle <> Value then
    begin
      FIndicatorFillReferenceStyle := Value;
      BackGroundChange;
    end;
end;
//****************************************************************************************************************************************************
function TiThermometer.GetPositionPixels(Value: Double): Integer;
begin
  with FBarRect do
    case FOrientation of
      ioVertical   : begin
                       case FReverseScale and (FIndicatorStyle <> itisBulb) of
                         False : Result := Bottom - Round((Bottom - Top) * ValuePercent(Value));
                         else    Result := Top    + Round((Bottom - Top) * ValuePercent(Value));
                       end;
                     end;
      else           begin
                       case FReverseScale and (FIndicatorStyle <> itisBulb) of
                         False : Result := Left  + Round((Right - Left) * ValuePercent(Value));
                         else    Result := Right - Round((Right - Left) * ValuePercent(Value));
                       end;
                     end;
    end;
end;
//****************************************************************************************************************************************************
function TiThermometer.GetTravelRange : Integer;
var
  DrawRect : TRect;
begin
  DrawRect := Rect(0, 0 ,Width, Height);
  with DrawRect do

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
九色porny丨国产精品| 国产丝袜欧美中文另类| 成人黄动漫网站免费app| 久久99精品久久久久久久久久久久| 亚洲一区二区在线免费观看视频| 一区二区三区在线看| 亚洲激情综合网| 一区二区在线看| 一区二区免费在线| 日韩中文字幕不卡| 蜜臀久久久99精品久久久久久| 日韩精品欧美成人高清一区二区| 三级成人在线视频| 韩国三级电影一区二区| 国产一区二区三区蝌蚪| 成人福利在线看| 色94色欧美sute亚洲线路二| 欧美欧美午夜aⅴ在线观看| 欧美丰满高潮xxxx喷水动漫| 精品久久一二三区| 亚洲国产精品v| 一区二区三区加勒比av| 美女在线一区二区| 成人av资源站| 欧美日韩国产综合草草| 2023国产一二三区日本精品2022| 久久国产成人午夜av影院| 日韩一区二区三区四区| 国产精品久久久久久福利一牛影视| 久久在线观看免费| 中文字幕在线观看不卡| 午夜a成v人精品| 极品销魂美女一区二区三区| 99在线精品免费| 欧美一区永久视频免费观看| 欧美极品美女视频| 午夜精品福利一区二区三区av| 极品瑜伽女神91| 欧美人与性动xxxx| 国产精品女上位| 欧美a级一区二区| 91在线无精精品入口| 欧美tickle裸体挠脚心vk| 亚洲同性同志一二三专区| 蜜桃91丨九色丨蝌蚪91桃色| 91九色02白丝porn| 日本一区二区三区四区| 蜜臀va亚洲va欧美va天堂 | 免费久久99精品国产| 岛国精品在线播放| 日韩丝袜美女视频| 一区二区三区四区五区视频在线观看 | 不卡一区二区在线| 在线不卡a资源高清| 国产精品福利一区二区三区| 日本伊人色综合网| 欧美日韩在线播放三区四区| 成人欧美一区二区三区| 国产精品一区二区久久精品爱涩| 欧美老肥妇做.爰bbww视频| 自拍偷拍亚洲欧美日韩| 国产91综合一区在线观看| 欧美一区二区三区视频免费| 亚洲免费av网站| 99精品国产99久久久久久白柏| 国产视频亚洲色图| 国产精品综合av一区二区国产馆| 91精品国产手机| 午夜精品成人在线| 欧美日韩国产小视频在线观看| 亚洲人成网站色在线观看 | 亚洲一区二区在线视频| 91九色02白丝porn| 一区二区欧美国产| 欧美亚洲日本国产| 亚洲一二三四久久| 欧美午夜片在线看| 性欧美大战久久久久久久久| 欧美在线一二三| 性久久久久久久久久久久 | 国产v日产∨综合v精品视频| 精品国产乱子伦一区| 韩国av一区二区| 亚洲精品一线二线三线 | 亚洲男同性视频| 91在线免费视频观看| 亚洲欧美电影一区二区| 在线观看成人免费视频| 午夜av一区二区| 精品国产不卡一区二区三区| 国产精品888| 亚洲精品一二三| 91精品国产综合久久小美女| 亚洲国产成人av好男人在线观看| 欧美群妇大交群的观看方式| 久久国产剧场电影| 国产亚洲一本大道中文在线| 91小视频免费观看| 午夜精品在线视频一区| 精品免费一区二区三区| 国产精品456| 亚洲精品视频免费观看| 欧美电影影音先锋| 国产福利91精品一区| 亚洲精品五月天| 538在线一区二区精品国产| 精品综合久久久久久8888| 国产精品美女久久久久久久久 | 国产经典欧美精品| 中文字幕在线视频一区| 在线观看91av| 99热精品国产| 精品一区二区三区不卡 | 欧美亚洲自拍偷拍| 国产一区91精品张津瑜| 亚洲精品欧美激情| www日韩大片| 欧美日韩和欧美的一区二区| 国产精品88av| 美腿丝袜一区二区三区| 亚洲人被黑人高潮完整版| 欧美一级高清片在线观看| 丁香六月久久综合狠狠色| 一区二区三区91| 欧美韩日一区二区三区四区| 欧美一区二区福利视频| 91女厕偷拍女厕偷拍高清| 韩国一区二区视频| 日韩av电影天堂| **欧美大码日韩| 国产婷婷色一区二区三区在线| 欧美日韩精品一区视频| 一本大道久久a久久精品综合| 激情综合网激情| 日本免费在线视频不卡一不卡二| 亚洲乱码日产精品bd| 国产精品久久免费看| wwwwxxxxx欧美| 精品国产一区a| 91麻豆精品国产自产在线观看一区| 成人精品免费网站| 国产福利一区二区| 国产成人在线色| 国模少妇一区二区三区| 九九精品一区二区| 老汉av免费一区二区三区| 日韩精品乱码免费| 亚洲成人免费视频| 天天爽夜夜爽夜夜爽精品视频| 又紧又大又爽精品一区二区| 亚洲色图欧美激情| 中文字幕在线一区| 国产精品短视频| 亚洲色图清纯唯美| 一区二区三区高清在线| 亚洲黄色小视频| 天天av天天翘天天综合网| 亚洲国产视频直播| 日本女优在线视频一区二区| 人人精品人人爱| 国产伦理精品不卡| 成人网男人的天堂| 91丨九色丨蝌蚪丨老版| 一本色道a无线码一区v| 欧美亚洲国产一区二区三区| 欧美在线观看视频一区二区 | 国产亚洲成av人在线观看导航| 久久老女人爱爱| 国产精品久久久99| 亚洲美女屁股眼交| 日韩高清一区在线| 狠狠色丁香九九婷婷综合五月| 国产999精品久久| 91啪亚洲精品| 制服丝袜中文字幕一区| 精品精品国产高清一毛片一天堂| 久久精品人人做人人爽人人| 亚洲欧美怡红院| 五月天丁香久久| 国产高清不卡二三区| 99riav久久精品riav| 欧美系列日韩一区| 久久综合99re88久久爱| 综合激情成人伊人| 日本中文在线一区| 成人国产电影网| 欧美日韩不卡在线| 国产亚洲综合av| 水蜜桃久久夜色精品一区的特点| 精品一区二区在线观看| 91在线观看下载| 日韩视频一区二区在线观看| 18成人在线观看| 精品一区二区在线视频| 在线一区二区三区四区五区| 精品国产一区久久| 亚洲综合精品久久| 成人少妇影院yyyy| 日韩欧美一区电影| 一区二区三区日韩欧美|