Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Пользователь


Сообщения: 76
Благодарности: 2

Профиль | Отправить PM | Цитировать


Здравствуйте. Прошу помощи. Есть функция "размер места на диске для выбранных компонентов"
Код: Выделить весь код
function GetComponentSpace(): Currency; 
var 
  ComponentSpace, LabelSpace: string; 
  StartLen, EndLen, SpaceLen: integer; 
  begin 
    ComponentSpace:= SetupMessage(msgComponentsDiskSpaceMBLabel); 
    LabelSpace:= WizardForm.ComponentsDiskSpaceLabel.Caption; 

    StartLen:= Pos('[mb]', ComponentSpace); 
    SpaceLen:= Length(LabelSpace) - Length(ComponentSpace) + 4; 
    ComponentSpace:= Copy(LabelSpace, StartLen, SpaceLen); 

    Result:= StrToFloat(Trim(ComponentSpace)); 
end;
Как мне перенести "Текущий выбор требует не менее ??? Мб на диске" на лейбл. Пробовал так
Код: Выделить весь код
[Setup]
AppName=My Program
AppVerName=My Program v 1.5
DefaultDirName={pf}\My Program

[Languages]
Name: rus; MessagesFile: compiler:Languages\Russian.isl

[Types]
Name: custom; Description: Выборочная; Flags: iscustom

[Components]
Name: a; Description: Моя программа; ExtraDiskSpaceRequired: 15000000; Types: custom
Name: aa; Description: Руководство пользователя; ExtraDiskSpaceRequired: 2655285235; Types: custom
Name: aaa; Description: Русский; ExtraDiskSpaceRequired: 5587282385; Types: custom

[ Code]
var
  SpaceComponentsLabel: TLabel;

function GetComponentSpace(): Currency;
var
ComponentSpace, LabelSpace: string;
StartLen, EndLen, SpaceLen: integer;
begin
ComponentSpace:= SetupMessage(msgComponentsDiskSpaceMBLabel);
LabelSpace:= SpaceComponentsLabel.Caption;

StartLen:= Pos('[mb]', ComponentSpace);
SpaceLen:= Length(LabelSpace) - Length(ComponentSpace) + 4;
ComponentSpace:= Copy(LabelSpace, StartLen, SpaceLen);

Result:= StrToFloat(Trim(ComponentSpace));
end;

procedure InitializeWizard();
begin
  WizardForm.ComponentsDiskSpaceLabel.Hide;

  SpaceComponentsLabel:= TLabel.Create(WizardForm);
  with SpaceComponentsLabel do
  begin
    Parent := WizardForm.SelectComponentsPage;
    AutoSize := False;
    Left := ScaleX(0);
    Top := ScaleY(216);
    Width := ScaleX(417);
    Height := ScaleY(14);
  end;
end;
ничего невыходит

Отправлено: 16:09, 20-10-2013 | #1312