⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gainlist.pas

📁 16 relay output channels and 16 isolated digital input channels LED indicators to show activated
💻 PAS
字号:
unit GainList;

interface

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

type
  TfrmGainList = class(TForm)
    grpChl0: TGroupBox;
    cmbGain0: TComboBox;
    grpChl1: TGroupBox;
    cmbGain1: TComboBox;
    grpChl2: TGroupBox;
    cmbGain2: TComboBox;
    grpChl3: TGroupBox;
    cmbGain3: TComboBox;
    grpChl4: TGroupBox;
    cmbGain4: TComboBox;
    grpChl5: TGroupBox;
    cmbGain5: TComboBox;
    grpChl6: TGroupBox;
    cmbGain6: TComboBox;
    grpChl7: TGroupBox;
    cmbGain7: TComboBox;
    grpChl8: TGroupBox;
    cmbGain8: TComboBox;
    grpChl9: TGroupBox;
    cmbGain9: TComboBox;
    grpChl10: TGroupBox;
    cmbGain10: TComboBox;
    grpChl11: TGroupBox;
    cmbGain11: TComboBox;
    grpChl12: TGroupBox;
    cmbGain12: TComboBox;
    grpChl13: TGroupBox;
    cmbGain13: TComboBox;
    grpChl14: TGroupBox;
    cmbGain14: TComboBox;
    grpChl15: TGroupBox;
    cmbGain15: TComboBox;
    butCancel: TButton;
    butOk: TButton;
    procedure butCancelClick(Sender: TObject);
    procedure butOkClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);

    Function ClearGainComb(iStart : integer; iStop : integer) : integer;
    Function EnableGainComb(iStart : integer; iStop : integer;
                            bEnable : boolean) : integer;
  private
    { Private declarations }
  public
    { Public declarations }
    gcmbGain   : array [0..15] of ^TComboBox;
    gbOkPushed : Boolean;      {Does press th OK button}
  end;

var
  frmGainList: TfrmGainList;

implementation

uses Init;

{$R *.DFM}
{***********************************************************
 * Function : clear the containt of selected combo box.
 * Input    : iStar, Input, the start one for clearing. Between 0 to 15
 *            iStop, Input, the stop one for clearing. this iStop one included.
 *                   The value between 0 to 15.

 * return   : the total number of combo box cleared.
 ************************************************************}
Function TfrmGainList.ClearGainComb(iStart : integer; iStop : integer): integer;
var
  i : integer;
begin
  if iStop > 15 then iStop := 15;
  i := 0;
  while iStart <= iStop do
  begin
    gcmbGain[iStart]^.Clear;
    iStart := iStart + 1;
    i := i + 1;
  end;
  ClearGainComb := i;
end;

{******************************************************************************
 * Function : Enable/disable the gain code selection combo box.
 * Paramater: iStar, input, start working channel. start from 0
 *            iStop, input, stop active channel(included). between 0 to 15.
 *            bEnable, input, Enable or disable the combo boxes.
 * retunrn:   Count of action combo boxes
 ******************************************************************************}
Function TfrmGainList.EnableGainComb( iStart : integer;
                                      iStop : integer;
                                      bEnable : boolean ) : integer;
var
  i : integer;
begin
  if iStop > 15 then iStop := 15;
  i := 0;

  while iStart <= iStop do
  begin
    gcmbGain[iStart]^.Enabled := bEnable;
    iStart := iStart + 1;
    i := i + 1;
  end;
  EnableGainComb := i;
end;



procedure TfrmGainList.butCancelClick(Sender: TObject);
begin
  gbOkPushed := False;
  close;
end;

procedure TfrmGainList.butOkClick(Sender: TObject);
begin
  gbOkPushed := True;
  close;
end;

procedure TfrmGainList.FormCreate(Sender: TObject);
begin
  {Setting the Gain control list}
  gcmbGain[0]  := @cmbGain0;
  gcmbGain[1]  := @cmbGain1;
  gcmbGain[2]  := @cmbGain2;
  gcmbGain[3]  := @cmbGain3;
  gcmbGain[4]  := @cmbGain4;
  gcmbGain[5]  := @cmbGain5;
  gcmbGain[6]  := @cmbGain6;
  gcmbGain[7]  := @cmbGain7;
  gcmbGain[8]  := @cmbGain8;
  gcmbGain[9]  := @cmbGain9;
  gcmbGain[10] := @cmbGain10;
  gcmbGain[11] := @cmbGain11;
  gcmbGain[12] := @cmbGain12;
  gcmbGain[13] := @cmbGain13;
  gcmbGain[14] := @cmbGain14;
  gcmbGain[15] := @cmbGain15;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -