![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Информация о памяти.
V.Turecky © (2002-07-31 12:53:00)Добрый день.
На основе инфы, взятой из Инета я создал свою процедуру для отображения информации о памяти, файле подкачки, которая отображает инфу в реальном времени. Но у меня возник вопрос по поводу вот этого - "%.0f MB". Некоторые используют вот так "%0.0f", а некторые так "%.1f". Так что же оно такое и как будет правильно для нормального отображения информации?
Привожу код, на всяк пожарный:
procedure TForm1.Timer1Timer(Sender: TObject);
var
MemInfo : TMemoryStatus;
begin
MemInfo.dwLength := Sizeof (MemInfo);
GlobalMemoryStatus (MemInfo);
{
dwMemoryLoad; // занято памяти (в процентах)
dwTotalPhys; // общее колличество памяти (в байтах)
dwAvailPhys; // свободной памяти (в байтах)
dwTotalPageFile; // файл подкачки (в байтах)
dwAvailPageFile; // свободно файла подкачки (в байтах)
dwTotalVirtual; // общее олличесвто виртуальной памяти (в байтах)
dwAvailVirtual; // свободной фиртуальной памяти (в байтах)
}
RamGauge.Progress := MemInfo.dwAvailPhys div(MemInfo.dwTotalPhys div 100);
Label1.Caption := Format("%.0f MB",[MemInfo.dwAvailPhys div 1024 / 1024]);
Label4.Caption := Format("%.0f MB",[MemInfo.dwTotalPhys div 1024 / 1024]);
VirtualGauge.Progress := MemInfo.dwAvailPageFile div(MemInfo.dwTotalPageFile div 100);
Label2.Caption := Format("%.0f MB",[MemInfo.dwAvailPageFile div 1024 / 1024]);
Label3.Caption := Format("%.0f MB",[MemInfo.dwTotalPageFile div 1024 / 1024]);
Label5.Caption := Format("%.0f MB",[MemInfo.dwTotalVirtual div 1024 / 1024]);
Label6.Caption := Format("%.0f MB",[MemInfo.dwAvailVirtual div 1024 / 1024]);
Caption := Format("Memory:= %d - %d",[RamGauge.Progress, VirtualGauge.Progress]);
end;
Jeer (2002-07-31 14:05:00) [1]Да ладно - не бери в голову.
Если основной ответ понятен, то Ок.
V.Turecky (2002-07-31 13:57:00) [2]
> P.S. Раскажите об ощущениях ? Как это ? Когда в голове компилиться
> и исполняется ?
Непонимаю.
Jeer (2002-07-31 13:54:00) [3]Может Вы еще в голове компилите и исполняете ? :))
"Толково" объясняю
"%.0f MB" - вывод в формате с фиксированной точкой.
В данном случае точность после запятой 0, т.е. будет вывод только целых чисел. Для Вашей задачи то, что надо.
P.S. Раскажите об ощущениях ? Как это ? Когда в голове компилиться и исполняется ?
V.Turecky (2002-07-31 13:08:00) [4]
> А на help по FormatString взглянуть ?
> Точность вывода задают таким образом.
В данный момент под рукой у меня нет ни Delphi и соответственно его файла справки. А обьяснить толково нельзя?
Jeer (2002-07-31 13:04:00) [5]А на help по FormatString взглянуть ?
Точность вывода задают таким образом.