📄 memform.pas
字号:
unit MemForm;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls, MemMan;
type
TForm1 = class(TForm)
BtnRefresh: TButton;
BtnCreateNil: TButton;
BtnCreateOwner: TButton;
BtnFreeLast: TButton;
LblResult: TLabel;
Bevel1: TBevel;
BtnFreeAll: TButton;
procedure BtnRefreshClick(Sender: TObject);
procedure BtnCreateNilClick(Sender: TObject);
procedure BtnCreateOwnerClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure BtnFreeLastClick(Sender: TObject);
procedure BtnFreeAllClick(Sender: TObject);
public
Cbutton: TCountButton;
procedure Refresh;
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Refresh;
begin
LblResult.Caption :=
'Allocated: ' + IntToStr (AllocCount) + #13 +
'Free: ' + IntToStr (FreeCount) + #13 +
'Existing: ' + IntToStr (AllocCount - FreeCount);
end;
procedure TForm1.BtnRefreshClick(Sender: TObject);
begin
Refresh;
end;
procedure TForm1.BtnCreateNilClick(Sender: TObject);
begin
Cbutton := TCountButton.Create (nil);
Refresh;
end;
procedure TForm1.BtnCreateOwnerClick(Sender: TObject);
begin
Cbutton := TCountButton.Create (self);
Refresh;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Refresh;
end;
procedure TForm1.BtnFreeLastClick(Sender: TObject);
begin
if Assigned (Cbutton) then
begin
Cbutton.Free;
Cbutton := nil;
end;
Refresh;
end;
procedure TForm1.BtnFreeAllClick(Sender: TObject);
var
I: Integer;
begin
for I := AllocatedList.Count - 1 downto 0 do
TCountButton (AllocatedList[I]).Free;
Cbutton := nil;
Refresh;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -