📄 sysmain.pas
字号:
unit SysMain;
interface
uses
SysUtils, Windows, Classes, Controls, Forms, Dialogs, Menus,
ExtCtrls, TlHelp32, StdCtrls, Buttons, ComCtrls, ImgList, InfoInt;
type
TMainForm = class(TForm)
FontDialog: TFontDialog;
mmMainMenu: TMainMenu;
Options1: TMenuItem;
N2: TMenuItem;
ExitItem: TMenuItem;
PropertiesItem: TMenuItem;
Help1: TMenuItem;
AboutItem: TMenuItem;
InfoItem: TMenuItem;
System2: TMenuItem;
Memory1: TMenuItem;
Environment1: TMenuItem;
Panel1: TPanel;
btnClose: TButton;
lvProcList: TListView;
ilProcIcons: TImageList;
View1: TMenuItem;
N1: TMenuItem;
FontItem: TMenuItem;
RefreshItem: TMenuItem;
procedure ExitItemClick(Sender: TObject);
procedure FontItemClick(Sender: TObject);
procedure RefreshItemClick(Sender: TObject);
procedure Memory1Click(Sender: TObject);
procedure System2Click(Sender: TObject);
procedure Environment1Click(Sender: TObject);
procedure btnCloseClick(Sender: TObject);
procedure AboutItemClick(Sender: TObject);
procedure lvProcListDblClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
FWinInfo: IWin32Info;
end;
var
MainForm: TMainForm;
implementation
{$R *.DFM}
uses W9xInfo, WNTInfo, InfoU, AboutU;
procedure TMainForm.ExitItemClick(Sender: TObject);
begin
Close;
end;
procedure TMainForm.FontItemClick(Sender: TObject);
begin
if FontDialog.Execute then Font := FontDialog.Font;
end;
procedure TMainForm.RefreshItemClick(Sender: TObject);
begin
Screen.Cursor := crHourGlass;
lvProcList.Items.BeginUpdate;
try
FWinInfo.FillProcessInfoList(lvProcList, ilProcIcons);
finally
Screen.Cursor := crDefault;
lvProcList.Items.EndUpdate;
end;
end;
procedure TMainForm.Memory1Click(Sender: TObject);
begin
ShowInformation(ivMemory);
end;
procedure TMainForm.System2Click(Sender: TObject);
begin
ShowInformation(ivSystem);
end;
procedure TMainForm.Environment1Click(Sender: TObject);
begin
ShowInformation(ivEnvironment);
end;
procedure TMainForm.btnCloseClick(Sender: TObject);
begin
Close;
end;
procedure TMainForm.AboutItemClick(Sender: TObject);
begin
ShowAboutBox;
end;
procedure TMainForm.lvProcListDblClick(Sender: TObject);
var
LI: TListItem;
begin
LI := lvProcList.ItemFocused;
if LI <> nil then
FWinInfo.ShowProcessProperties(LI.Data);
end;
procedure TMainForm.FormCreate(Sender: TObject);
begin
if Win32Platform = VER_PLATFORM_WIN32_WINDOWS then
FWinInfo := TWin9xInfo.Create
else if Win32Platform = VER_PLATFORM_WIN32_NT then
FWinInfo := TWinNTInfo.Create
else
raise Exception.Create('This application must be run on Win32');
RefreshItemClick(nil);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -