“多负载识别监控平台(上位机)”技术细节 之Unit3-Form3用户负载类型查询界面

下面介绍Unit3用户负载类型查询界面的实现。

“多负载识别监控平台(上位机)”技术细节 之Unit3-Form3用户负载类型查询界面_第1张图片

1.串口

同form2使用form1的DateSource一样,form3的串口也使用form1的串口来进行数据通信。

因为在打开form3时并不知道form1是否已经开启了串口,因此form3要先检验串口的状态,并在关闭form3时恢复初始状态,就像中断似的,中断、恢复现场。

使用一个flag标志位即可实现这个功能:

  if form1.ComPort1.Connected = false then
  begin
    flag := 0;//记录串口的初始状态 0表示初始串口关着呢
    comport1.connected := true;//开本窗口串口
  end
  else
  begin
    flag := 1;
    form1.comport1.connected := false; //关了主串口
    comport1.connected := true;  //开本窗口串口
  end;

2.动态GIF图的显示

使用动态GIF要使用GIFImg类,这个类delphi2010已经给包含好了。

我们直接在uses中输入GIFImg即可,如下:

unit Unit3;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, te_engine, te_forms, te_extctrls, ExtCtrls, te_controls, StdCtrls,
  GIFImg, CPort;

加入了GIFImg类之后,我们就可以添加Image控件来显示动态图片了。

代码如下:

  //先在窗体上放一个 TImage 组件:Image1;
  image1.Visible := true;
  Image1.Picture.LoadFromFile( GetCurrentDir+'\loading44.gif' );//GetCurrentDir可以获得当前文件的路径
  //AnimationSpeed 设定动画速度,值越大,速度越快;
  TGIFImage(Image1.Picture.Graphic).AnimationSpeed := 200;
  TGIFImage(Image1.Picture.Graphic).Animate := True;

其中,GetCurrentDir函数返回的是 当前操作目录。

你可能感兴趣的:(delphi)