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

📄 readdata.pas

📁 Monitor.dfm Meter.dpr pasMain.pas
💻 PAS
📖 第 1 页 / 共 2 页
字号:
unit ReadData;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Grids, DBGrids, Db, DBTables, StdCtrls, ExtCtrls, ImgList, ComCtrls,
  ToolWin, Buttons, Menus;

type
    TfrmRead = class(TForm)
    DataListView: TListView;
    DataPanel: TPanel;
    Label9: TLabel;
    UNO_E: TEdit;
    Label10: TLabel;
    Label11: TLabel;
    ADDRESS_E: TEdit;
    NAME_E: TEdit;
    Label14: TLabel;
    Label15: TLabel;
    SCP_E: TEdit;
    FIG_E: TEdit;
    Label12: TLabel;
    Label13: TLabel;
    MODEL_E: TEdit;
    Label2: TLabel;
    Label3: TLabel;
    DNO_E: TEdit;
    Label4: TLabel;
    Label5: TLabel;
    MNO_E: TEdit;
    CNST_E: TEdit;
    Label6: TLabel;
    PHS_E: TComboBox;
    SpeedButton1: TSpeedButton;
    BY_E: TEdit;
    Label1: TLabel;
    ImageList1: TImageList;
    SavePanel: TPanel;
    btnSave: TSpeedButton;
    btnCancel: TSpeedButton;
    Label7: TLabel;
    AMP_E: TEdit;
    USG_E: TComboBox;
    Label8: TLabel;
    BYS_E: TComboBox;
    btnAppend: TSpeedButton;
    btnDelete: TSpeedButton;
    Bevel1: TBevel;
    Bevel2: TBevel;
    Bevel3: TBevel;
    Bevel4: TBevel;
    PanelID: TPanel;
    Label16: TLabel;
    Label17: TLabel;
    Label18: TLabel;
    PFIG_E: TEdit;
    GFIG_E: TEdit;
    JFIG_E: TEdit;
    Label19: TLabel;
    FFIG_E: TEdit;
    SpeedButton2: TSpeedButton;
    SpeedButton3: TSpeedButton;
    ampere_E: TEdit;
    procedure FormCreate(Sender: TObject);

    procedure DataListViewSelectItem(Sender: TObject; Item: TListItem;
      Selected: Boolean);
    procedure SpeedButton1Click(Sender: TObject);
    procedure DataListViewColumnClick(Sender: TObject;
      Column: TListColumn);
    procedure DataListViewCompare(Sender: TObject; Item1, Item2: TListItem;
      Data: Integer; var Compare: Integer);
    procedure N2Click(Sender: TObject);
    procedure N1Click(Sender: TObject);
    procedure btnCancelClick(Sender: TObject);
    procedure btnSaveClick(Sender: TObject);
    procedure btnDeleteClick(Sender: TObject);
    procedure btnAppendClick(Sender: TObject);
    procedure PanelIDDblClick(Sender: TObject);
    procedure DataListViewDblClick(Sender: TObject);
    procedure SpeedButton2Click(Sender: TObject);
    procedure SpeedButton3Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    TfrmRead: TForm;
  end;

var
  frmRead: TfrmRead;
  ColumnToSort: Integer;
  columntosortold:integer;
  addorinsert:integer;
implementation

uses pasMain, DM, Promot, Info, err, Global, Moduler, InterCom, find;

{$R *.DFM}

procedure TfrmRead.FormCreate(Sender: TObject);
begin
    // Setup windows size
    Left := frmInfo.Left + frmInfo.Width;
    Top := 0;
    Width := frmMain.Width - Left - 12;
    Height := frmMain.StatusBar.Top - frmMain.CoolBar1.Height - 5;
    columntosortold:=0;
    columntosort:=0;
end;

procedure TfrmRead.DataListViewSelectItem(Sender: TObject; Item: TListItem;
  Selected: Boolean);
var
  i: Integer;
begin
    if Selected = FALSE then exit;

    if ChartFlag = COMMANDTN0 then exit;
    if chartflag=9 then exit;
    with DataListView do
    begin
    //Disable selected arrow
    for i := 0 to Items.Count - 1 do
        Items[i].ImageIndex := -1;
    //Enable selected arrow
    Items[Selected.index].ImageIndex := 3;
    end;

    if (RUNFLAG =USEREDIT) and (MonitorFlag=False)  then
    with DataListview do
    begin
        UNO_E.Text := Items[Selected.index].Caption;
        MNO_E.Text := Items[Selected.index].SubItems.Strings[0];
        NAME_E.Text :=Items[Selected.index].SubItems.Strings[1];
        ADDRESS_E.Text := Items[Selected.index].SubItems.Strings[2];
        FIG_E.Text := Trim(Items[Selected.index].SubItems.Strings[3]);
        FFIG_E.Text := Trim(Items[Selected.index].SubItems.Strings[4]);
        PFIG_E.Text := Trim(Items[Selected.index].SubItems.Strings[5]);
        GFIG_E.Text := Trim(Items[Selected.index].SubItems.Strings[6]);
        JFIG_E.Text := Trim(Items[Selected.index].SubItems.Strings[7]);
        SCP_E.Text := Items[Selected.index].SubItems.Strings[8];
        CNST_E.Text := Items[Selected.index].SubItems.Strings[9];
        AMP_E.Text := Items[Selected.index].SubItems.Strings[10];
        MODEL_E.Text := Items[Selected.index].SubItems.Strings[11];
        USG_E.Text := Items[Selected.index].SubItems.Strings[12];
        PHS_E.Text := Items[Selected.index].SubItems.Strings[13];
        BYS_E.Text := Items[Selected.index].SubItems.Strings[14];
        BY_E.Text := Items[Selected.index].SubItems.Strings[15];
    end;

    //Load data
    IF RUNFLAG<>SEARCHRDT then
    begin
            UNOstr := DataListView.Items[DataListView.Selected.index].Caption;
            NameStr :=DataListView.Items[DataListView.Selected.index].SubItems.Strings[1];
            AddressStr := DataListView.Items[DataListView.Selected.index].SubItems.Strings[2];
    end;

    //Selecttion for monitoring
    if RUNFLAG = MONITORING then
    begin
        frmInfo.MeterID.Caption := UNOstr;
        frmInfo.ShowLab.Caption := 'ID: ' + UNOstr;
        if SearchFlag=False then
        begin
        frmInfo.lMAX.Caption := DataListView.Items[DataListView.Selected.index].SubItems.Strings[8];
        frmInfo.rkWh.Caption := DataListView.Items[DataListView.Selected.index].SubItems.Strings[9];
        end;
        exit;
    end;

    if RUNFLAG <> ANALYZING then exit;

end;


procedure TfrmRead.SpeedButton1Click(Sender: TObject);
begin
    DataPanel.Visible := False;
end;

procedure TfrmRead.DataListViewColumnClick(Sender: TObject;
  Column: TListColumn);
begin

    ColumnToSort := Column.Index;

    if ColumnToSort <> ColumnToSortOld then  DataListView.Column[ColumnToSortOld].ImageIndex := -1;

    ColumnToSortOld := ColumnToSort;

    if SortFlag = 0 then
    begin
        SortFlag := 1;
        DataListView.Column[ColumnToSort].ImageIndex := 0;
    end
    else
    begin
        SortFlag := 0;
        DataListView.Column[ColumnToSort].ImageIndex := 1;
    end;
    (Sender as TCustomListView).AlphaSort;

end;


procedure TfrmRead.DataListViewCompare(Sender: TObject; Item1,
  Item2: TListItem; Data: Integer; var Compare: Integer);
var
  ix: Integer;
begin

    if ColumnToSort = 0 then
    begin
        if SortFlag = 0 then
        Compare := CompareText(Item1.Caption,Item2.Caption)
        else
        Compare := -CompareText(Item1.Caption,Item2.Caption)
    end
    else
    begin
        ix := ColumnToSort - 1;
        if SortFlag = 0 then
            Compare := CompareText(Item1.SubItems[ix],Item2.SubItems[ix])
        else
            Compare := -CompareText(Item1.SubItems[ix],Item2.SubItems[ix]);
    end;

end;


procedure TfrmRead.N2Click(Sender: TObject);
begin
        sortflag:=0;
        //frmRead.DataListViewColumnClick(sender,listcolumn);
end;

procedure TfrmRead.N1Click(Sender: TObject);
begin
        sortflag:=1;
        frmRead.DataListView.ColumnClick:=true;
end;

procedure TfrmRead.btnCancelClick(Sender: TObject);
begin
    SavePanel.Visible := FALSE;
    frmRead.DataListView.Color := clWhite;
    ChartFlag:=9 ;//temp
    activecommand:=false;
end;


procedure TfrmRead.btnSaveClick(Sender: TObject);
begin
    frmMain.SaveData(Sender);

⌨️ 快捷键说明

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