如何在 Inno Setup 中在斜角线上创建标签

问题描述 投票:0回答:1

昨天我发现了一个新设置。它在斜线上有一个标签。那么,如何在 Inno Setup 中像这样在斜角线上创建和设置标签呢?

Like this Picture

label inno-setup
1个回答
6
投票

看起来像一个 组框控件(在 Delphi/VCL 中称为

TGroupBox
),而不是斜角。

但是 Inno Setup 中没有暴露组框控件。

作为替代方案,只需将

TLabel
放在
TBevel
之上。确保将标签的
Transparent
属性设置为
False

在 Windows Vista 及更高版本中,您还可以在周围添加 hair space 作为填充。为此,您需要 Inno Setup 的 Unicode 版本(截至 Inno Setup 6 的唯一版本)。

procedure InitializeWizard;
var
  Page: TWizardPage;
  Bevel: TBevel;
  Caption: TLabel;
begin
  Page := CreateCustomPage(wpWelcome, '', '');

  Bevel := TBevel.Create(WizardForm);
  with Bevel do
  begin
    Parent := Page.Surface;
    Shape := bsFrame;
    Left := ScaleX(0);
    Top := ScaleY(8);
    Width := ScaleX(417);
    Height := ScaleY(220);
  end;

  Caption := TLabel.Create(WizardForm);
  with Caption do
  begin
    Parent := Page.Surface;
    Left := Bevel.Left + ScaleX(8);
    Top := Bevel.Top - ScaleY(6);
    Transparent := False;
    Caption := 'Caption';

    // On Vista and newer, add padding using a hair space
    if GetWindowsVersion >= $06000000 then
      Caption := #$200A + Caption + #$200A;
  end;
end;

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.