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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? jkdvc.pas

?? 程序主要是在監(jiān)控系統(tǒng)中的車輛檢測與其他設(shè)備協(xié)議的測試程序
?? PAS
字號:
unit JKDvc;

interface
uses ExtCtrls,Dialogs,SysUtils,Classes,controls,windows,messages,Graphics,Grids,
     stdctrls, Buttons,cmsitemDefine,forms;

type
  TDvc = class
  private
    FID:string;
    FCName :string;
    FEName :string;
    FLocation :string;
    FFactory  :string;
     
    procedure setID(const Value: string);
    procedure setCName(const Value: string);
    procedure setEName(const Value: string);
    procedure setFactory(const Value: string);
    procedure setLocation(const Value: string);
  public
    property  ID :string read FID write setID;
    property  CName :string read FCName write setCName;
    property  EName :string read FEName write setEName;
    property  Location :string  read FLocation write setLocation;
    property  Factory  :string  read FFactory  write setFactory;
  end;


  //////////////////////////////////////////////////////////////////////////////
  //情報板數(shù)據(jù)顯示面板
  TCMSPanel = class(TPanel)
  private
    pBwidth:integer;
    fCMSwidth :integer;
    fCMSheight :integer;
    Fcmssize:string;
    fDvcinfo    :TDvc;
    PanelCap: TPanel;
    PanelMoNi: TPanel;

    TimerCMSPlay: TTimer;
    bCmsInfoIsNull:boolean;
    CurPlayNo :integer;
    fCMSPubInfo:TCMSPublishInfo;

    oldwinProc: TWndMethod;
    procedure myWindowProc(var msg:TMessage);
    procedure setCMSSize(const Value: string);
    procedure setDvcinfo(const Value: TDvc);
    procedure setCMSPubInfo(const Value: TCMSPublishInfo);
  public
    CMSbmpPath :string;
    gpath      :string;
    Caption    :string;
    Constructor Create(AOwner:TComponent);override;
    destructor  Destroy;override;
    procedure myMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
    procedure createPlayText(fcmstxt :TCMSTXT;fNo:integer;fPanel:TPanel);
    procedure createPlayBmp(myCmsbmp :TCMSBMP; fNo: integer;fPanel:TPanel);
    procedure CmsPreviewPlay( fCMSPlayLeaf :TCMSDisplayLeaf;fPanel:TPanel;fModify:boolean);
    procedure FlashPlay(Sender: TObject);
  published
    property  CMSSize  :string  read fCMSSize write setCMSSize ;
    property  CMSwidth  :integer  read fCMSwidth  ;
    property  CMSheight  :integer  read fCMSheight  ;
    property  Dvcinfo:TDvc read fDvcinfo write setDvcinfo;
    property  CMSPubInfo :TCMSPublishInfo read fCMSPubInfo write setCMSPubInfo;
  end;

  //////////////////////////////////////////////////////////////////////////////
  //車檢器數(shù)據(jù)顯示面板
  TVDPanel = class(TPanel)
    private
      fDvcinfo :TDvc;
      PanelCap: TPanel;
      SGridVD: TStringGrid;
      oldwinProc: TWndMethod;
      procedure  myWindowProc(var msg:TMessage);
    procedure setDvcinfo(const Value: TDvc);
    public
      Constructor Create(AOwner:TComponent);override;
      destructor Destroy;override;
      procedure  myMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
    published
      property  Dvcinfo:TDvc read fDvcinfo write setDvcinfo;
  end;


implementation

{ TDvc }

procedure TDvc.setCName(const Value: string);
begin
  FCName := Value;
end;

procedure TDvc.setEName(const Value: string);
begin
  FEName := Value;
end;

procedure TDvc.setFactory(const Value: string);
begin
  FFactory := Value;
end;

procedure TDvc.setID(const Value: string);
begin
  FID := Value;
end;

procedure TDvc.setLocation(const Value: string);
begin
  FLocation := Value;
end;

{ TCMSDvc }

constructor TCMSPanel.Create(AOwner:TComponent );
begin
  inherited;

   PanelCap :=TPanel.Create(self);
   PanelCap.Parent:=self;
   PanelCap.Color :=clBlue;
   PanelCap.Font.Color :=clWhite;
   PanelCap.Height :=25;
   PanelCap.ShowHint :=true;


   PanelCap.OnMouseDown := myMouseDown;
   oldwinProc:= PanelCap.WindowProc;       //**********************************
   PanelCap.WindowProc:= myWindowProc ;    //*********************************

   PanelMoNi :=TPanel.Create(self);
   PanelMoNi.Parent:=self;
   PanelMoNi.Color :=clBlack;
   PanelMoNi.Left:=0;

   PanelMoNi.OnMouseDown := myMouseDown;

   TimerCMSPlay :=TTimer.create(self);
   TimerCMSPlay.Interval:=2000;
   TimerCMSPlay.Enabled :=false;
   TimerCMSPlay.OnTimer:=   FlashPlay ;

   CurPlayNo:=1;
   self.Hide;
   pBwidth:=  PanelMoNi.BevelWidth;
   fDvcinfo:=TDvc.Create;
end;

destructor TCMSPanel.Destroy;
begin
  PanelCap.OnMouseDown :=nil;   //否則在雙擊關(guān)閉的時候, 會報異常。
  PanelMoNi.OnMouseDown :=nil;  //否則會報異常。
  PanelMoNi.Free;
  PanelCap.free;
  fDvcinfo.Free;
  inherited;
end;
 
 



procedure TCMSPanel.myMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
 if (button =mbleft) and ( handle >0)  then
 begin
    ReleaseCapture;
    if handle >0 then SendMessage(handle, WM_NCLBUTTONDOWN, HTCAPTION, 0);
 end;
end;



 

procedure TCMSPanel.setDvcinfo(const Value: TDvc);
begin
  fDvcinfo := Value;
  PanelCap.Hint :='設(shè)備 ID :'+ Value.ID+#13#10+
                  '設(shè)備名稱:'+ Value.CName+#13#10+
                  '設(shè)備名稱:'+ Value.Location;
  PanelCap.Caption :=Value.Location;
end;

procedure TCMSPanel.setCMSSize(const Value: string);
begin
  if Pos('*',Value)=0 then   exit; 
  if  fCMSSize <> Value  then
  begin
    fCMSSize := Value;
    fCMSwidth := strtoint(copy(fCMSSize,1,pos('*',fCMSSize)-1));
    fCmsHeight := strtoint(copy(fCMSSize,pos('*',fCMSSize)+1,length(fCMSSize)-pos('*',fCMSSize)));
    PanelMoNi.Width := CMSwidth  + pBwidth*2;
    PanelMoNi.Height:= CmsHeight + pBwidth*2;
    
    PanelMoNi.Top :=PanelCap.Height;
    PanelCap.Width := PanelMoNi.Width;
    self.AutoSize :=true;
    
    if CmsHeight=32 then   CMSbmpPath:= gpath+'MCMSBMP\'
    else if CmsHeight=48   then   CMSbmpPath:=gpath+'SCMSBMP\'
    else if CmsHeight=96   then   CMSbmpPath:=gpath+'TCMSBMP\'; 
  end;

end;

procedure TCMSPanel.myWindowProc(var msg: TMessage);
begin
  oldwinProc(msg);
  if  msg.Msg= WM_LBUTTONDBLCLK   then
  begin
      self.Free;
  end;
end;

 
////////////////////////////////////////////////////////////////////////////////
// 函數(shù)名稱:  createPlayBmp
// 函數(shù)參數(shù):  fbmpFile: 圖片文件名稱; fNo -圖片編號     mycmsbmp :TCMSBMP;
// 函數(shù)返回值:
// 編寫日期:  2006-01-08
// 編寫作者:  djh
// 函數(shù)功能:  創(chuàng)建一個圖片在可變信息標志上
////////////////////////////////////////////////////////////////////////////////
procedure TCMSPanel.createPlayBmp(myCmsbmp :TCMSBMP; fNo: integer;fPanel:TPanel);
var bmpFile:string;
begin
  with Timage.Create(fPanel) do
  begin
    Parent := fPanel;
    Name :='imageCMS'+ inttostr(fNo);
    Left := pBwidth + myCmsbmp.X;
    top  := pBwidth + myCmsbmp.Y ;
   // Transparent :=true;
    AutoSize :=true;
    bmpFile := CMSBmpPath+myCmsbmp.BmpName+'.bmp';
    Picture.LoadFromFile(bmpFile);
    Hint  :=myCmsbmp.BmpName;
  end;
end;


 
////////////////////////////////////////////////////////////////////////////////
// 函數(shù)名稱:  createPlayText
// 函數(shù)參數(shù): fcmstxt : 圖片文件名稱; fNo -圖片編號
// 函數(shù)返回值:
// 編寫日期:  2006-01-08
// 編寫作者:  djh
// 函數(shù)功能:  創(chuàng)建一個字符串圖 在可變信息標志上
////////////////////////////////////////////////////////////////////////////////
procedure TCMSPanel.createPlayText(fcmstxt :TCMSTXT;fNo:integer;fPanel:TPanel);
var
  i,rows,cols:integer;
  ss,fPlaytxt:string;
begin
  for i :=1  to fcmstxt.Txtcount   do
    fPlaytxt:= fPlaytxt+fcmstxt.Txtstring[i];
  with  TLabel.Create(PanelMoNi) do
  begin
     if fNo>0 then  Name := 'labelCMS'+inttostr(fNo);
     Parent := PanelMoNi;
     Left := pBwidth+ fcmstxt.XPos;
     top  := pBwidth+ fcmstxt.YPos;
     Width := CMSwidth  - Left;
     Height:= CmsHeight - top;
 
     cols := CMSwidth div (fcmstxt.FSize div 2);
     Caption :=fPlaytxt; 

     AutoSize := true;
     ParentFont := false;
     font.Charset :=  DEFAULT_CHARSET;
     Font.Color :=fcmstxt.FColor;
     if fcmstxt.FStype=1 then Font.Name :='黑體'
     else if fcmstxt.FStype=2 then Font.Name :='楷體_GB2312'
     else if fcmstxt.FStype=3 then Font.Name :='宋體';
     Font.Size  := round(fcmstxt.FSize/1.35 );
     Transparent :=true;
     Tag :=fcmstxt.FSize;
  end;
end;



procedure TCMSPanel.CmsPreviewPlay( fCMSPlayLeaf :TCMSDisplayLeaf;fPanel:TPanel;fModify:boolean);
var i, j:integer;
  mycmstxt :TCMSTXT;
  mycmsbmp :TCMSBMP;
begin
  while fPanel.ComponentCount>0 do  fPanel.Components[0].Free;
  j:=0;
  while j< fCMSPlayLeaf.BmpCount do
  begin
     inc(j);
     mycmsbmp:=  fCMSPlayLeaf.cmsbmpItem[j];
     if fModify then
       createPlayBmp(mycmsbmp,j,fPanel)
     else
       createPlayBmp(mycmsbmp,0,fPanel);
  end;
  ////////////////////////////////////////////////////////
  j:=0;
  while j < fCMSPlayLeaf.TxtCount do
  begin
     inc(j);
     mycmstxt:= fCMSPlayLeaf.cmsTxtItem[j];
     if fModify then
       createPlayText(mycmstxt,j,fPanel)
     else
       createPlayText(mycmstxt,0,fPanel);
  end;
end;


procedure TCMSPanel.setCMSPubInfo(const Value: TCMSPublishInfo);
begin
  fCMSPubInfo := Value;
  if fCMSPubInfo.LeafCount>0 then    TimerCMSPlay.Enabled:=true;
end;


procedure TCMSPanel.FlashPlay(Sender: TObject);
begin
  if  CurPlayNo > fCMSPubInfo.LeafCount then CurPlayNo :=1;
  CmsPreviewPlay( fCMSPubInfo.CMSPlayItems[CurPlayNo],PanelMoNi,false);
  Inc(CurPlayNo );
  Application.ProcessMessages;
end;


/////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////
////////////////////////////車輛檢測器顯示面板定義///////////////////////////////
/////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////
{ TVDPanel }

constructor TVDPanel.Create(AOwner: TComponent);
var i:integer;
begin
  inherited;
    PanelCap:=TPanel.Create(self);
    PanelCap.Parent:=self;
    PanelCap.Color :=clBlue;
    PanelCap.Font.Color :=clWhite;
    PanelCap.ShowHint :=true;
    PanelCap.SetBounds(0,0,290,26) ;
    PanelCap.OnMouseDown := myMouseDown;

    oldwinProc:= PanelCap.WindowProc;       //**********************************
    PanelCap.WindowProc:= myWindowProc ;    //*********************************

    SGridVD :=TStringGrid.Create( self);
    SGridVD.Parent :=self;
    SGridVD.SetBounds(0,PanelCap.Height,290,110) ;
    SGridVD.Color := clGreen;
    SGridVD.FixedColor := clGreen;
    SGridVD.Options := [goFixedVertLine, goFixedHorzLine, goVertLine, goHorzLine, goRowSelect];
    SGridVD.Font.Size :=10;
    SGridVD.Font.Color:=clWhite;
    SGridVD.FixedRows :=1;
    SGridVD.FixedCols :=1;
    SGridVD.RowCount:=4;
    SGridVD.ColCount:=4;
    SGridVD.ColWidths[0] :=40 ;
    SGridVD.Cells[0,1] :=' 上行';
    SGridVD.Cells[0,2] :=' 下行';
    SGridVD.Cells[0,3] :=' 合計';

    SGridVD.Cells[1,0] :=' 車流量(輛)';
    SGridVD.Cells[2,0] :=' 平均速度(KM/H)';
    SGridVD.Cells[3,0] :=' 占有率(%)';

    SGridVD.ColWidths[1] := 70;
    SGridVD.ColWidths[2] := 100;
    SGridVD.ColWidths[3] := 70;
    for i:=1 to 3 do
    begin
      SGridVD.Cells[1,i] :=' 10';
      SGridVD.Cells[2,i] :=' 20';
      SGridVD.Cells[3,i] :=' 5';
    end;

    self.AutoSize :=true;
    fDvcinfo:=TDvc.Create;

end;

destructor TVDPanel.Destroy;
begin
  PanelCap.Free;
  SGridVD.Free;
  inherited;
end;



procedure TVDPanel.myMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
 if (button =mbleft) and ( handle >0)  then
 begin
    ReleaseCapture;
    if handle >0 then SendMessage(handle, WM_NCLBUTTONDOWN, HTCAPTION, 0);
 end;
end;

procedure TVDPanel.setDvcinfo(const Value: TDvc);
begin
  fDvcinfo := Value;
  PanelCap.Hint :='設(shè)備 ID :'+ Value.ID+#13#10+
                  '設(shè)備名稱:'+ Value.CName+#13#10+
                  '設(shè)備名稱:'+ Value.Location;
  PanelCap.Caption :=Value.Location;
end;



procedure TVDPanel.myWindowProc(var msg: TMessage);
begin
  oldwinProc(msg);
  if  msg.Msg= WM_LBUTTONDBLCLK   then
  begin
      self.Free;
  end;
end;


end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲品质自拍视频| 91精品婷婷国产综合久久| 亚洲国产精品成人综合| 丁香婷婷深情五月亚洲| 亚洲欧洲另类国产综合| 亚洲精品免费在线播放| 欧美少妇一区二区| 麻豆视频一区二区| 色综合久久久久综合99| 亚洲亚洲人成综合网络| av电影在线不卡| 亚洲国产人成综合网站| av在线这里只有精品| 亚洲日本丝袜连裤袜办公室| 狠狠色丁香久久婷婷综合_中 | 日韩精品视频网| 制服丝袜亚洲色图| 国产精品一卡二卡在线观看| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆 | 日日夜夜免费精品视频| 日韩视频一区二区在线观看| 国产精品夜夜爽| 亚洲精品ww久久久久久p站| 7777精品伊人久久久大香线蕉| 国产精品的网站| 欧美日韩高清一区二区三区| 国产在线视频精品一区| 亚洲日本护士毛茸茸| 欧美一级国产精品| 99精品视频在线免费观看| 午夜激情一区二区| 中文字幕欧美三区| 91麻豆精品国产91久久久久久| 亚洲啪啪综合av一区二区三区| 99久久综合国产精品| 青青青伊人色综合久久| 日韩欧美中文字幕一区| 美女被吸乳得到大胸91| 中文字幕在线不卡国产视频| 欧美一二三四区在线| 99久久精品免费看| 麻豆国产欧美一区二区三区| 亚洲精品成人悠悠色影视| 色悠悠亚洲一区二区| 国产一区二区在线观看视频| 中文一区二区完整视频在线观看| 国产成人av一区二区| 日韩中文字幕麻豆| 一区二区三区日韩精品视频| 欧美性大战久久| 成人激情图片网| 狠狠色丁香久久婷婷综合丁香| 久久精品欧美日韩精品| 日韩精品一区二区三区在线播放| 国产一区二区h| 蜜桃久久精品一区二区| 午夜精品久久久久久久久久久 | 亚洲欧美日韩国产中文在线| 精品美女一区二区| 欧美日韩的一区二区| 欧美影视一区二区三区| 日韩精品一区二区三区四区视频| 国产一区二区不卡老阿姨| 免费在线观看视频一区| 视频在线在亚洲| 午夜久久福利影院| 亚洲 欧美综合在线网络| 亚洲精品国产第一综合99久久| 欧美人妇做爰xxxⅹ性高电影| 日本亚洲三级在线| 日韩成人精品在线观看| 日韩精品电影在线观看| 日韩制服丝袜av| 午夜精品成人在线视频| 日韩高清欧美激情| 久久精品无码一区二区三区| 欧洲生活片亚洲生活在线观看| 美洲天堂一区二卡三卡四卡视频 | 久久精品视频在线看| 91一区在线观看| 日本伦理一区二区| 欧美三级一区二区| 欧美久久久久久久久中文字幕| 丁香网亚洲国际| 不卡的av网站| 蜜桃精品视频在线观看| 老色鬼精品视频在线观看播放| 中文字幕视频一区二区三区久| 亚洲一区二区高清| 亚洲精品免费在线观看| 亚洲va欧美va国产va天堂影院| 久久蜜臀中文字幕| 日本一区二区三级电影在线观看 | 国产精品私房写真福利视频| 国产日韩欧美综合在线| 91麻豆精品国产91久久久资源速度| 成人午夜短视频| av一区二区久久| 欧美性欧美巨大黑白大战| 欧美另类videos死尸| 精品久久久久一区二区国产| 久久久www免费人成精品| 欧美一区二区三区爱爱| 久久久777精品电影网影网| 亚洲欧洲av在线| 亚洲大尺度视频在线观看| 久久精品国产亚洲一区二区三区 | 青青国产91久久久久久 | 91麻豆免费看片| 欧美另类高清zo欧美| 久久九九国产精品| 洋洋av久久久久久久一区| 国产精品护士白丝一区av| 国产日韩欧美精品在线| 亚洲精品videosex极品| 亚洲免费观看高清完整| 青青草国产成人99久久| 成人av资源下载| 日韩一区二区在线看片| 成人欧美一区二区三区1314| 国产欧美日本一区二区三区| 久久久久国产精品人| 一区二区三区四区不卡在线| 国产主播一区二区三区| 欧美吞精做爰啪啪高潮| 久久精品一区蜜桃臀影院| 国产女主播视频一区二区| 午夜欧美一区二区三区在线播放| 亚洲va国产va欧美va观看| 国产suv精品一区二区883| 欧美三日本三级三级在线播放| 欧美日韩午夜在线| 国产精品三级视频| 日本不卡视频在线观看| 蜜臀精品一区二区三区在线观看 | 亚洲美女在线国产| 国产毛片精品一区| 91精品婷婷国产综合久久性色| 欧美一区二区三区爱爱| 亚洲黄色免费网站| 成人国产视频在线观看| 日韩精品中文字幕一区 | 国产aⅴ精品一区二区三区色成熟| 国产乱码精品1区2区3区| 欧美精品123区| 国产精品久久国产精麻豆99网站| 亚洲精品日日夜夜| 不卡大黄网站免费看| 久久久www免费人成精品| 麻豆成人免费电影| 成人久久18免费网站麻豆 | 国产成人精品免费一区二区| 91在线精品一区二区| 日本一区二区三级电影在线观看| 亚洲色欲色欲www在线观看| 成人性色生活片免费看爆迷你毛片| av在线综合网| 91精品久久久久久久99蜜桃| 亚洲大片一区二区三区| 欧美无砖专区一中文字| 一区二区高清在线| 欧美亚洲国产一区在线观看网站| 日韩免费观看2025年上映的电影| 国产欧美综合在线观看第十页| 一区二区在线免费| 一本大道av伊人久久综合| 亚洲精品视频免费观看| 欧美亚洲精品一区| 亚洲第一二三四区| 8v天堂国产在线一区二区| 中文字幕第一区综合| 日韩高清不卡一区二区三区| 成人性生交大片免费看在线播放| 欧美日韩另类国产亚洲欧美一级| 久久久久久久综合| 国产馆精品极品| 国产精品久久久久精k8| 91在线精品一区二区| 亚洲一卡二卡三卡四卡无卡久久| 国产一区二区伦理片| 国产欧美一区二区精品性| 天堂成人免费av电影一区| 成人黄色一级视频| 日韩毛片一二三区| 国产98色在线|日韩| 欧美一区二区三区在线视频| 久久成人精品无人区| 国产欧美综合色| 91精彩视频在线观看| 日韩电影在线看| 久久青草欧美一区二区三区| 波多野结衣中文字幕一区二区三区 | 亚洲丝袜精品丝袜在线| 欧美综合亚洲图片综合区| 日韩电影在线一区| 亚洲国产精品高清| 欧美裸体bbwbbwbbw| 国产毛片一区二区| 亚洲一二三四在线观看| 精品粉嫩超白一线天av|