Tjeyn
Новичок
При нехватки места на диске как обычно кнопка "Далее" не активна, но если на эдите (он выделяемый) написать любой символ, кнопка "Далее" стает активной.
Помогите решить проблему
Помогите решить проблему
Код:
function NumToStr(Float: Extended): String;
begin
Result:= format('%.2n', [Float]); StringChange(Result, ',', '.');
while ((Result[Length(Result)] = '0')or(Result[Length(Result)] = '.'))and(Pos('.', Result) > 0) do
SetLength(Result, Length(Result)-1);
end;
function MbOrTb(Float: Extended): String;
begin
if Float < 1024 then Result:= NumToStr(Float)+' Ìá' else
if Float/1024 < 1024 then Result:= NumToStr(Float/1024)+' Ãá' else
Result:= NumToStr(Float/(1024*1024))+' Òá';
end;
procedure ObjectFunc(Sender: TObject);
var
Drive: String;
begin
case Sender of
WizardForm.DirEdit: begin
Drive:= ExtractFileDrive(WizardForm.DirEdit.Text);
GetSpaceOnDisk(Drive, True, FreeMB, TotalMB);
InstallSpacelabel.Caption:=ExpandConstant('{cm:InstallSpaceLabel}')+' '+MbOrTb({#NeedInstallSize});
NeedSpaceLabel.Caption:= ExpandConstant('{cm:NeedSpaceLabel}')+' '+MbOrTb({#NeedSize});
WizardForm.NextButton.Enabled:= (FreeMB>{#NeedInstallSize})and(FreeMB>{#NeedSize}) ;
BtnSetEnabled(hNextBtn, true);
if (FreeMB>{#NeedInstallSize})and(FreeMB>{#NeedSize}) then InstallSpaceLabel.Font.Color:=$FFFFFF else InstallSpaceLabel.Font.Color:=$0000FF;
end;
NoIconsLabel: begin
BtnSetChecked(NoIconsCheck, not BtnGetChecked(NoIconsCheck));
NoIconsClick(NoIconsCheck);
end;
end;
end;