Changeset 5 for trunk/Forms/FormMemory.pas
- Timestamp:
- Apr 18, 2026, 7:24:02 PM (8 days ago)
- File:
-
- 1 edited
-
trunk/Forms/FormMemory.pas (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Forms/FormMemory.pas
r2 r5 5 5 uses 6 6 Classes, SysUtils, Forms, Controls, Graphics, Dialogs, ComCtrls, ExtCtrls, 7 Memory;7 StdCtrls, Memory, Generics.Collections; 8 8 9 9 type … … 13 13 14 14 TFormMemory = class(TForm) 15 ComboBoxArea: TComboBox; 16 Label1: TLabel; 15 17 ListViewMemory: TListView; 16 18 Timer1: TTimer; 19 procedure ComboBoxAreaSelect(Sender: TObject); 20 procedure FormCreate(Sender: TObject); 21 procedure FormDestroy(Sender: TObject); 17 22 procedure FormShow(Sender: TObject); 18 23 procedure ListViewMemoryData(Sender: TObject; Item: TListItem); 19 24 procedure Timer1Timer(Sender: TObject); 20 p ublic25 private 21 26 Memory: TMemory; 22 27 Size: Integer; 28 public 29 Areas: TObjectList<TMemory>; 30 procedure ReloadAreas; 23 31 procedure Reload; 24 32 end; … … 65 73 procedure TFormMemory.FormShow(Sender: TObject); 66 74 begin 75 ReloadAreas; 76 ComboBoxAreaSelect(nil); 77 end; 78 79 procedure TFormMemory.FormCreate(Sender: TObject); 80 begin 81 Areas := TObjectList<TMemory>.Create(False); 82 end; 83 84 procedure TFormMemory.ComboBoxAreaSelect(Sender: TObject); 85 begin 86 if ComboBoxArea.ItemIndex >= 0 then begin 87 Memory := TMemory(ComboBoxArea.Items.Objects[ComboBoxArea.ItemIndex]); 88 Size := Memory.Size; 89 end else begin 90 Memory := nil; 91 Size := 0; 92 end; 67 93 Reload; 94 end; 95 96 procedure TFormMemory.FormDestroy(Sender: TObject); 97 begin 98 FreeAndNil(Areas); 68 99 end; 69 100 … … 73 104 end; 74 105 106 procedure TFormMemory.ReloadAreas; 107 var 108 I: Integer; 109 begin 110 ComboBoxArea.Items.BeginUpdate; 111 try 112 while ComboBoxArea.Items.Count > Areas.Count do 113 ComboBoxArea.Items.Delete(ComboBoxArea.Items.Count - 1); 114 while ComboBoxArea.Items.Count < Areas.Count do 115 ComboBoxArea.Items.Add(''); 116 for I := 0 to Areas.Count - 1 do begin 117 ComboBoxArea.Items.Strings[I] := Areas[I].Title; 118 ComboBoxArea.Items.Objects[I] := Areas[I]; 119 end; 120 if (ComboBoxArea.ItemIndex = -1) and (ComboBoxArea.Items.Count > 0) then 121 ComboBoxArea.ItemIndex := 0; 122 finally 123 ComboBoxArea.Items.EndUpdate; 124 end; 125 end; 126 75 127 end. 76 128
Note:
See TracChangeset
for help on using the changeset viewer.
![(please configure the [header_logo] section in trac.ini)](/mzxemu/chrome/site/your_project_logo.png)