Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Inno Setup (создание инсталяционных пакетов)

Модерирует : gyra, Maz

articlebot (13-10-2013 23:33): продолжение темы - №15
 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

   

Nasgul1987

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
 
[Setup]
AppName=SlideShowOnBackground
AppVerName=SlideShowOnBackground
CreateAppDir=true
DefaultDirName={pf}\Test
 
[Code]
const
  Comp1Size = 100;
  Comp2Size = 200;
 
var
  FreeMB, TotalMB: Cardinal;
  NeedSize: Integer;
  NeedSpaceLabel, FreeSpaceLabel: TLabel;
  Comp1, Comp2: TCheckBox;
 
procedure GetFreeSpaceCaption(Sender: TObject);
var
  Path: String;
 
begin
Path := ExtractFileDrive(WizardForm.DirEdit.Text);
GetSpaceOnDisk(Path, True, FreeMB, TotalMB);
 
if FreeMB > 1024 then
   FreeSpaceLabel.Caption := 'Ñâîáîäíî íà âûáðàííîì äèñêå: ' + FloatToStr(round(FreeMB/1024*100)/100) + ' GB'
else
   FreeSpaceLabel.Caption := 'Ñâîáîäíî íà âûáðàííîì äèñêå: ' + IntToStr(FreeMB)+ ' MB';
 
if FreeMB < NeedSize then
   WizardForm.NextButton.Enabled := False
else
   WizardForm.NextButton.Enabled := True;
end;
 
procedure Comp1OnClick(Sender: TObject);
begin
   if Comp1.Checked then
      NeedSize := NeedSize + Comp1Size
   else
      NeedSize := NeedSize - Comp1Size;
 
   NeedSpaceLabel.Caption := '&#210;&#240;&#229;&#225;&#243;&#229;&#242;&#241;&#255; &#228;&#235;&#255; &#243;&#241;&#242;&#224;&#237;&#238;&#226;&#234;&#232;: ' + IntToStr(NeedSize) + ' MB';
 
  if FreeMB < NeedSize then
     WizardForm.NextButton.Enabled := False
   else
     WizardForm.NextButton.Enabled := True;
end;
 
procedure Comp2OnClick(Sender: TObject);
begin
   if Comp2.Checked then
      NeedSize := NeedSize + Comp2Size
   else
      NeedSize := NeedSize - Comp2Size;
 
   NeedSpaceLabel.Caption := '&#210;&#240;&#229;&#225;&#243;&#229;&#242;&#241;&#255; &#228;&#235;&#255; &#243;&#241;&#242;&#224;&#237;&#238;&#226;&#234;&#232;: ' + IntToStr(NeedSize) + ' MB';
 
   if FreeMB < NeedSize then
     WizardForm.NextButton.Enabled := False
   else
     WizardForm.NextButton.Enabled := True;
end;
 
procedure InitializeWizard();
begin
NeedSize := 0;
WizardForm.DiskSpaceLabel.Hide;
 
NeedSpaceLabel := TLabel.Create(WizardForm);
with NeedSpaceLabel do
begin
  Parent := WizardForm.SelectDirPage;
  Left := ScaleX(0);
  Top := ScaleY(198);
  Width := ScaleX(209);
  Height := ScaleY(13);
  Caption := '&#210;&#240;&#229;&#225;&#243;&#229;&#242;&#241;&#255; &#228;&#235;&#255; &#243;&#241;&#242;&#224;&#237;&#238;&#226;&#234;&#232;: ' + IntToStr(NeedSize) + ' MB';
end;
 
FreeSpaceLabel := TLabel.Create(WizardForm);
with FreeSpaceLabel do
begin
  Parent := WizardForm.SelectDirPage;
  Left := ScaleX(0);
  Top := ScaleY(216);
  Width := ScaleX(209);
  Height := ScaleY(13);
end;
 
Comp1 := TCheckBox.Create(WizardForm);
with Comp1 do
begin
  Parent := WizardForm.SelectDirPage;
  Caption := 'Component 1';
  Left := ScaleX(0);
  Top := ScaleY(136);
  Width := ScaleX(97);
  Height := ScaleY(17);
  TabOrder := WizardForm.DirBrowseButton.TabOrder + 1;
  OnClick := @Comp1OnClick;
end;
 
Comp2 := TCheckBox.Create(WizardForm);
with Comp2 do
begin
  Parent := WizardForm.SelectDirPage;
  Caption := 'Component 2';
  Left := ScaleX(0);
  Top := ScaleY(160);
  Width := ScaleX(97);
  Height := ScaleY(17);
  TabOrder := Comp1.TabOrder + 1;
  OnClick := @Comp2OnClick;
end;
 
WizardForm.DirEdit.OnChange := @GetFreeSpaceCaption;
WizardForm.DirEdit.Text := WizardForm.DirEdit.Text + #0;
end;
 
 

Всего записей: 48 | Зарегистр. 09-07-2011 | Отправлено: 04:03 29-02-2012 | Исправлено: Nasgul1987, 04:26 29-02-2012
   

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Программы » Inno Setup (создание инсталяционных пакетов)
articlebot (13-10-2013 23:33): продолжение темы - №15


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru