Вопрос Как дублировать кнопку вперёд с другим текстом

MarsBar

Новичок
Собираю инсталл, нужно, что-бы были две кнопки вперёд, но с разным текстом и дизайном.
 

Nemko

Дилетант
Модератор
DICE,

Код:
[Setup]
AppName=Test
AppVerName=Test
CreateAppDir=no

[Files]
Source: Files\*; Flags: dontcopy

[Modules]
#include "Modules\botva2.iss"

[Code]
var
  BtnNext: hWnd;

procedure SetStateNewButtons;
begin
with WizardForm.NextButton do begin
  BtnSetVisibility(BtnNext, Visible);
  BtnSetEnabled(BtnNext, Enabled);
 end;
//или другая кнопка
end;

procedure BtnClick(hBtn: hWnd);
var
  Btn:TButton;
begin
  case hBtn of
    BtnNext: Btn:=WizardForm.NextButton;
  //или другая кнопка
  end;
  Btn.OnClick(Btn);
  SetStateNewButtons;
  BtnRefresh(hBtn);
end;

procedure InitializeWizard;
begin
with WizardForm do begin
  InnerNotebook.Hide;
  OuterNotebook.Hide;
  Bevel.Hide;
  //создание новой NextButton
  BtnNext:=BtnCreate(Handle, ScaleX(NextButton.Left), ScaleY(NextButton.Top - 28), ScaleX(NextButton.Width), ScaleY(NextButton.Height), 'button.png', 0, False);
  BtnSetEvent(BtnNext, BtnClickEventID, WrapBtnCallback(@BtnClick, 1));
  BtnSetFontColor(BtnNext, clBlack, clBlack, clBlack, clBlack);
 end;
end;

procedure CurPageChanged(CurPageID: Integer);
begin
case CurPageID of
  wpWelcome: BtnSetText(BtnNext, '----->');
  wpReady: BtnSetText(BtnNext, 'Install');
 end;
end;

function InitializeSetup:boolean;
begin
  if not FileExists(ExpandConstant('{tmp}\botva2.dll')) then ExtractTemporaryFile('botva2.dll');
  if not FileExists(ExpandConstant('{tmp}\CallbackCtrl.dll')) then ExtractTemporaryFile('CallbackCtrl.dll');
  Result:=True;
end;

procedure DeinitializeSetup;
begin
  gdipShutdown;
end; DICE,
 

sergey3695

Ветеран
Модератор
- лишний код
Код:
[Setup]
AppName=Test
AppVerName=Test
CreateAppDir=no

[Files]
Source: Files\*; Flags: dontcopy

[Modules]
#include "Modules\botva2.iss"

[Code]
var
  BtnNext: hWnd;

procedure BtnNextClick(hBtn: hWnd);
begin
  WizardForm.NextButton.OnClick(nil);
end;

procedure InitializeWizard;
begin
with WizardForm do begin
  InnerNotebook.Hide;
  OuterNotebook.Hide;
  Bevel.Hide;
  //создание новой NextButton
  BtnNext:=BtnCreate(Handle,  NextButton.Left, NextButton.Top - ScaleY(28), NextButton.Width, NextButton.Height, 'button.png', 0, False);
  BtnSetEvent(BtnNext, BtnClickEventID, CallbackAddr('BtnNextClick'));
  BtnSetFontColor(BtnNext, clBlack, clBlack, clBlack, clBlack);
end;
end;

procedure CurPageChanged(CurPageID: Integer);
begin
case CurPageID of
  wpWelcome: BtnSetText(BtnNext, '----->');
  wpReady: BtnSetText(BtnNext, 'Install');
end;
end;

function InitializeSetup:boolean;
begin
  if not FileExists(ExpandConstant('{tmp}\botva2.dll')) then ExtractTemporaryFile('botva2.dll');
  Result:=True;
end;

procedure DeinitializeSetup;
begin
  gdipShutdown;
end;
 
Сверху