gpt4 book ai didi

inno-setup - Inno Setup - 如何使用我想要的名称创建个性化的 FilenameLabel?

转载 作者:行者123 更新时间:2023-12-04 01:00:02 27 4
gpt4 key购买 nike

如何打造个性化FilenameLabel用我想要的名字?如何落实Inno Setup - How to hide certain filenames while installing? (FilenameLabel)的建议(第三个选项,CurInstallProgressChanged,复制文件名,你想从隐藏到自定义标签显示¨)。

我看到这个代码:

procedure InitializeWizard;
begin
with TNewStaticText.Create(WizardForm) do
begin
Parent := WizardForm.FilenameLabel.Parent;
Left := WizardForm.FilenameLabel.Left;
Top := WizardForm.FilenameLabel.Top;
Width := WizardForm.FilenameLabel.Width;
Height := WizardForm.FilenameLabel.Height;
Caption := ExpandConstant('{cm:InstallingLabel}');
end;
WizardForm.FilenameLabel.Visible := False;
end;

但是,如果可能的话,如何定义我想要的文件名 CurInstallProgressChanged ?

最佳答案

正如您链接的答案中所述:

  • 创建一个新的自定义“文件名”标签;
  • 隐藏原版FilenameLabel ;
  • 实现 CurInstallProgressChanged 将文件名映射到您想要显示的任何内容并将其显示在自定义标签上。

  • [Files]
    Source: "data1.dat"; DestDir: {app}
    Source: "data2.dat"; DestDir: {app}
    Source: "data3.dat"; DestDir: {app}

    [Code]

    var
    MyFilenameLabel: TNewStaticText;

    procedure InitializeWizard();
    begin
    MyFilenameLabel := TNewStaticText.Create(WizardForm);
    { Clone the FilenameLabel }
    MyFilenameLabel.Parent := WizardForm.FilenameLabel.Parent;
    MyFilenameLabel.Left := WizardForm.FilenameLabel.Left;
    MyFilenameLabel.Top := WizardForm.FilenameLabel.Top;
    MyFilenameLabel.Width := WizardForm.FilenameLabel.Width;
    MyFilenameLabel.Height := WizardForm.FilenameLabel.Height;
    MyFilenameLabel.AutoSize := WizardForm.FilenameLabel.AutoSize;

    { Hide real FilenameLabel }
    WizardForm.FilenameLabel.Visible := False;
    end;

    procedure CurInstallProgressChanged(CurProgress, MaxProgress: Integer);
    var
    Filename: string;
    begin
    Filename := ExtractFileName(WizardForm.FilenameLabel.Caption);

    { Map filenames to descriptions }
    if CompareText(Filename, 'data1.dat') = 0 then Filename := 'Some hilarious videos'
    else
    if CompareText(Filename, 'data2.dat') = 0 then Filename := 'Some awesome pictures'
    else
    if CompareText(Filename, 'data3.dat') = 0 then Filename := 'Some cool music';

    MyFilenameLabel.Caption := Filename;
    end;

    Description instead of filename

    关于inno-setup - Inno Setup - 如何使用我想要的名称创建个性化的 FilenameLabel?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43748508/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com