Go Back   FileForums > Game Backup > PC Games > PC Games - CD/DVD Conversions > Conversion Tutorials

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 13-03-2017, 02:09
Gupta Gupta is offline
Banned
 
Join Date: Aug 2016
Location: https://t.me/pump_upp
Posts: 399
Thanks: 139
Thanked 715 Times in 231 Posts
Gupta is on a distinguished road
Send a message via ICQ to Gupta Send a message via AIM to Gupta Send a message via Yahoo to Gupta
Someone via PM asked me:
How to Create Buttons in Installers?
Actually, there can be two ways:
First, Playing with pascal and use panels or listviews to create buttons and use ONMOUSEDOWN event to trigger events
For example, See WPI Script of BLUR or Flat Modules(Module\Form.Functions.iss)

Second, can be using libraries to create buttons such as botva2 or ISab.dll
btnprint.iss (botva2.dll)
Code:
;Created by South.Tver 02.2010

;пример работы с BtnGetText, BtnSetText, BtnSetFontColor, BtnSetTextAlignment

#include "Modules\botva2.iss"

[Setup]
AppName=BtnPrint by South.Tver
AppVerName=BtnPrint by South.Tver
DefaultDirName={pf}\BtnPrint
OutputBaseFilename=setup

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

[;Code]
type
  TTimerProc = procedure(HandleW, msg, idEvent, TimeSys: LongWord);

var
  hBtn:HWND;
  CurSimbol:integer;
  TimerID:Longword;
  TestText:ansistring;

function SetTimer(hWnd, nIDEvent, uElapse, lpTimerFunc: LongWord): LongWord; external '[email protected] stdcall';
function KillTimer(hWnd, nIDEvent: LongWord): LongWord; external '[email protected] stdcall';
function WrapTimerProc(callback:TTimerProc; paramcount:integer):LongWord; external 'wrapcallbackaddr@files:CallbackCtrl.dll stdcall';

procedure OnTimer(HandleW, msg, idEvent, TimeSys: LongWord);
begin
  CurSimbol:=CurSimbol+1;
  if CurSimbol>Length(TestText) then begin
    KillTimer(0, TimerID);
    Exit;
  end;
  BtnSetText(hBtn,PAnsiChar(BtnGetText(hBtn)+TestText[CurSimbol]));
end;

procedure BtnClick(hBtn:HWND);
begin
  if not BtnGetChecked(hBtn) then begin
    KillTimer(0, TimerID);
    BtnSetText(hBtn,'');
    CurSimbol:=0;
  end else TimerID:=SetTimer(0, 0, 100, WrapTimerProc(@OnTimer, 4));
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 InitializeWizard;
begin
  with WizardForm do begin
    InnerNotebook.Hide;
    OuterNotebook.Hide;
    Bevel.Hide;
    Width:=700;
    Height:=700;
    NextButton.Top:=ClientHeight-50;
    CancelButton.Top:=ClientHeight-50;
  end;

  hBtn:=BtnCreate(WizardForm.Handle,-50,-50,WizardForm.ClientWidth+100,WizardForm.ClientHeight+100,'button2.png',18,True);
  CurSimbol:=0;

  TestText:='ЛИЦЕНЗИОННОЕ СОГЛАШЕНИЕ '+
            'Эта лицензия действительна только для граждан стран бывшего СССР. '+
            'Граждане других стран обязаны пользоваться shareware-версией '+
            'программы, которую можно бесплатно скачать с сайта '+
            'http://www.ice-graphics.com/ICEReader '+
            'Программа ICE Book Reader Professional Russian Edition '+
            'распространяется как freeware. '+
            'Все авторские права на программу ICE Book Reader Professional Russian '+
            'Edition принадлежат ICE Graphics. '+
            'Граждане стран бывшего СССР имеют право использовать данную версию '+
            'программы ICE Book Reader Professional Russian Edition в '+
            'некоммерческих целях бесплатно. '+
            'Если условия данной лицензии не устраивают попадающих под ее действие '+
            'лиц, они имеют право воспользоваться на общих основаниях лицензией, '+
            'приведенной в файле License.txt. Для коммерческого использования '+
            'программой ICE Book Reader Professional Russian Edition необходимо '+
            'получить письменное разрешение ICE Graphics ([email protected]). '+
            'ICE Graphics не гарантирует оперативной технической поддержки. '+
            'ICE Graphics оставляет за собой право отменить действие данной '+
            'лицензии для любой из следующих версий программы ICE Book Reader '+
            'Professional Russian Edition. '+
            'Программа ICE Book Reader Professional Russian Edition '+
            'распространяется свободно, при условии того, что настоящий дистрибутив '+
            'не изменен. Ни одно частное лицо или организация не может брать плату '+
            'за распространение ICE Book Reader Professional Russian Edition без '+
            'письменного разрешения ICE Graphics. '+
            'ПРОГРАММА ICE Book Reader Professional Russian Edition ПОСТАВЛЯЕТСЯ ПО '+
            'ПРИНЦИПУ "КАК ЕСТЬ" ("AS IS"). НИКАКИХ ГАРАНТИЙ НЕ ПРИЛАГАЕТСЯ И НЕ '+
            'ПРЕДУСМАТРИВАЕТСЯ. ВЫ ИСПОЛЬЗУЕТЕ ЭТО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ НА СВОЙ '+
            'РИСК. ICE Graphics НЕ БУДЕТ ОТВЕЧАТЬ НИ ЗА КАКИЕ ПОТЕРИ ИЛИ ИСКАЖЕНИЯ '+
            'ДАННЫХ, ЛЮБУЮ УПУЩЕННУЮ ВЫГОДУ В ПРОЦЕССЕ ИСПОЛЬЗОВАНИЯ ИЛИ '+
            'НЕПРАВИЛЬНОГО ИСПОЛЬЗОВАНИЯ ЭТОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ. ';

  BtnSetTextAlignment(hBtn,40,30,balLeft);
  BtnSetFontColor(hBtn,$DAE369,$FF0000,$00FF00,$0000FF);
  BtnSetEvent(hBtn,BtnClickEventID,WrapBtnCallback(@BtnClick,1));
end;

procedure DeinitializeSetup;
begin
  KillTimer(0, TimerID);
  gdipShutdown;
end;
botva2_0.9.9 attached ( Open to see more )
Attached Files
File Type: 7z botva2_0.9.9.156.7z (1.29 MB, 180 views)
Reply With Quote
The Following 6 Users Say Thank You to Gupta For This Useful Post:
Cesar82 (28-03-2017), EzzEldin16 (05-01-2018), Razor12911 (14-03-2017), Simorq (27-02-2018), TheTimickRus (13-03-2017), TWOELV (13-03-2017)
Sponsored Links
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
BlackBox v2 y_thelastknight Conversion Tutorials 567 11-03-2025 07:16
INNO TROUBLESHOOT - Tutorials and Answers about INNO Setup REV0 Conversion Tutorials 129 21-05-2021 05:51
Inno Setup: Additional Libraries altef_4 Conversion Tutorials 50 21-10-2020 09:59
Useful Dll for Inno Setup users peterf1999 Conversion Tutorials 88 01-12-2017 16:00
INNO TUTORIAL - Using Unicode and ANSI Versions of INNO Setup REV0 Conversion Tutorials 51 26-03-2015 06:57



All times are GMT -7. The time now is 23:39.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2026, vBulletin Solutions Inc.
FileForums @ https://fileforums.com