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

📄 main.pas

📁 一个很不错的系统信息控件
💻 PAS
字号:
unit Main;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, ExtCtrls, ComCtrls, MSI_Common, MSI_Monitor,
  MSI_USB, MSI_Storage, MSI_Printers, MSI_Media, MSI_Network, MSI_Display,
  MSI_Memory, MSI_CPU, MSI_OS, MSI_Machine;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Label1: TLabel;
    Tree: TTreeView;
    Button2: TButton;
    CPU: TMiTeC_CPU;
    Memory: TMiTeC_Memory;
    Display: TMiTeC_Display;
    Network: TMiTeC_Network;
    Media: TMiTeC_Media;
    Printers: TMiTeC_Printers;
    StorDevs: TMiTeC_Storage;
    USB: TMiTeC_USB;
    Monitor: TMiTeC_Monitor;
    bSave: TButton;
    bLoad: TButton;
    od: TOpenDialog;
    sd: TSaveDialog;
    OS: TMiTeC_OperatingSystem;
    Machine: TMiTeC_Machine;
    procedure bLoadClick(Sender: TObject);
    procedure bSaveClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure cmRefresh(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure FormActivate(Sender: TObject);
    procedure TreeCustomDrawItem(Sender: TCustomTreeView; Node: TTreeNode;
      State: TCustomDrawState; var DefaultDraw: Boolean);
  private
  public
    procedure RefreshData;
  end;

var
  Form1: TForm1;

implementation

uses MiTeC_USB, MiTeC_Routines;

{$R *.DFM}

procedure TForm1.FormCreate(Sender: TObject);
begin
  Caption:=cCompname+' '+cVersion;
  cmRefresh(nil);
end;

procedure TForm1.cmRefresh(Sender: TObject);
begin
  Screen.Cursor:=crHourglass;
  try
    Machine.RefreshData;
    OS.RefreshData;
    CPU.RefreshData;
    Memory.RefreshData;
    StorDevs.RefreshData;
    USB.RefreshData;
    Display.RefreshData;
    Monitor.RefreshData;
    Media.RefreshData;
    Network.RefreshData;
    Printers.RefreshData;
    RefreshData;
  finally
    Screen.Cursor:=crDefault;
  end;
end;

procedure TForm1.bLoadClick(Sender: TObject);
begin
  if not od.execute then
    Exit;
  CPU.LoadFromStorage(od.Filename);
  Memory.LoadFromStorage(od.Filename);
  Display.LoadFromStorage(od.Filename);
  Network.LoadFromStorage(od.Filename);
  Media.LoadFromStorage(od.Filename);
  Printers.LoadFromStorage(od.Filename);
  StorDevs.LoadFromStorage(od.Filename);
  USB.LoadFromStorage(od.Filename);
  Monitor.LoadFromStorage(od.Filename);
  Machine.LoadFromStorage(od.Filename);
  OS.LoadFromStorage(od.Filename);
  RefreshData;
end;

procedure TForm1.bSaveClick(Sender: TObject);
begin
  if not sd.execute then
    Exit;
  CPU.SaveToStorage(sd.Filename);
  Memory.SaveToStorage(sd.Filename);
  Display.SaveToStorage(sd.Filename);
  Network.SaveToStorage(sd.Filename);
  Media.SaveToStorage(sd.Filename);
  Printers.SaveToStorage(sd.Filename);
  StorDevs.SaveToStorage(sd.Filename);
  USB.SaveToStorage(sd.Filename);
  Monitor.SaveToStorage(sd.Filename);
  OS.SaveToStorage(sd.Filename);
  Machine.SaveToStorage(sd.Filename);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Close;
end;

procedure TForm1.RefreshData;
var
  i,j: Integer;
  r,n,c: TTreeNode;
  di: TDiskInfo;
  s: string;
begin
  Screen.Cursor:=crHourglass;
  Tree.Hide;
  Tree.Items.BeginUpdate;
  Update;
  try
    Tree.Items.Clear;

    r:=Tree.Items.AddChild(nil,'Computer');
    n:=Tree.Items.AddChild(r,Format('%s - %s',[Machine.MachineName,Machine.User]));

    r:=Tree.Items.AddChild(nil,'Opera鑞

⌨️ 快捷键说明

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