• Что бы вступить в ряды "Принятый кодер" Вам нужно:
    Написать 10 полезных сообщений или тем и Получить 10 симпатий.
    Для того кто не хочет терять время,может пожертвовать средства для поддержки сервеса, и вступить в ряды VIP на месяц, дополнительная информация в лс.

  • Пользаватели которые будут спамить, уходят в бан без предупреждения. Спам сообщения определяется администрацией и модератором.

  • Гость, Что бы Вы хотели увидеть на нашем Форуме? Изложить свои идеи и пожелания по улучшению форума Вы можете поделиться с нами здесь. ----> Перейдите сюда
  • Все пользователи не прошедшие проверку электронной почты будут заблокированы. Все вопросы с разблокировкой обращайтесь по адресу электронной почте : info@guardianelinks.com . Не пришло сообщение о проверке или о сбросе также сообщите нам.

Определение Свободного Места На Жестком Диске C:

  • Автор темы Автор темы Sascha
  • Дата начала Дата начала

Sascha

Заместитель Администратора
Команда форума
Администратор
Регистрация
9 Май 2015
Сообщения
1,551
Баллы
155
Вид самой программы:



Создаем Форму и кидаем на нее 13x Label, 1x Timer, 2 x PaintBox, 1x Gauge.
Я взял в даном примере не стандартный Gauge а из AlphaControls sArcGauge.



на Gauge в разделе BaseColor ставим цвет clFuchsia и в ProgressColor цвет clBlue.
PaintBox1 Color ставим clBlue и PaintBox2 Color ставим clFuchsia .
Label1.Caption заменяем на Занято: , Label2.Caption заменяем на Свободно: , Label3.Caption заменяем на Ёмкость:, Label4.Caption заменяем на Диск С:
Нажимаем PaintBox(1,2) в разделе Events: OnPaint и пишем код:

Код:
procedure TForm1.PaintBoxPaint(Sender: TObject);
var
R: TRect;
begin
with Sender as TPaintBox do
begin
R := ClientRect;
Frame3D(Canvas, R, clDkGray, clWhite, 1);
Canvas.FillRect(R);
end;
end;
Нажимаем два раза на Timer и пишем код:
Код:
procedure TForm1.Timer1Timer(Sender: TObject);
var
Free, Used : Int64;
begin
Free := DiskFree(3);
Used := DiskSize(3) - Free;
sArcGauge.Progress :=  Used div 1024;
Label5.Caption := IntToStr(Used) +  ' байт';
Label8.Caption := IntToStr(Used div 1048676 ) + ' Мбайт';
Label11.Caption := IntToStr(Used div 1073741824 ) + ' Гбайт';
Label6.Caption := IntToStr(Free) +  ' байт';
Label9.Caption := IntToStr(Free div 1048676 ) + ' Мбайт';
Label12.Caption := IntToStr(Free div 1073741824 ) + ' Гбайт';
end;

Нажимаем два раза по форме или в Events жмем OnCreate и пишем код:
Код:
procedure TForm1.FormCreate(Sender: TObject);
var
Size : Int64;
begin
Size:= DiskSize(3);
sArcGauge.Max := Size div 1024;
Label7.Caption := IntToStr(Size) +  ' байт';
Label10.Caption := IntToStr(Size div 1048576 ) + ' Мбайт';
Label13.Caption := IntToStr(Size div 1073741824 ) + ' Гбайт';
Timer1Timer(Timer1);
end;

Сам исходник данного примера:
 

Вложения

  • Disk.zip
    Disk.zip
    5.2 КБ · Просмотры: 3
Вверх Снизу