Krinkels
Advanced Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору [Setup] AppName=My Program AppVerName=My Program v 1.5 DefaultDirName={pf}\My Program Compression=lzma/ultra SolidCompression=yes [Code] var NewPage: TWizardPage; TopText: TLabel; Edit1,Edit2,Edit3,Edit4,Edit5: TEdit; procedure EditChange(Sender: TObject); begin if Length(TEdit(Sender).Text) = TEdit(Sender).MaxLength then case TObject(Sender) of Edit1: WizardForm.ActiveControl:= Edit2; Edit2: WizardForm.ActiveControl:= Edit3; Edit3: WizardForm.ActiveControl:= Edit4; Edit4: WizardForm.ActiveControl:= Edit5; Edit5: WizardForm.ActiveControl:= WizardForm.NextButton; end; end; procedure SerialPage; begin NewPage:=CreateCustomPage(wpWelcome, 'Ввод кода', 'бла бла бла и т.д. ') TopText:=TLabel.Create(NewPage) TopText.Left:=0 TopText.Top:=0 TopText.Width:=417 TopText.Height:=28 TopText.AutoSize:=False TopText.WordWrap:=True TopText.Caption:='Введите код, отпечатанный на последней странице обложки Руководства пользователя или на упаковке диска.' TopText.Parent:=NewPage.Surface Edit1:=TEdit.Create(NewPage) Edit1.Left:=0 Edit1.Top:=60 Edit1.Width:=60 Edit1.Height:=21 Edit1.AutoSize:=False Edit1.MaxLength:=5 //максимальное количество символов Edit1.Font.Size:=12 Edit1.Font.Style:=[fsBold] Edit1.Font.Name:='Arial' Edit1.Parent:=NewPage.Surface Edit1.OnChange:=@EditChange; Edit2:=TEdit.Create(NewPage) Edit2.Left:=70 Edit2.Top:=60 Edit2.Width:=60 Edit2.Height:=21 Edit2.AutoSize:=False Edit2.MaxLength:=5 Edit2.Font.Size:=12 Edit2.Font.Style:=[fsBold] Edit2.Font.Name:='Arial' Edit2.Parent:=NewPage.Surface Edit2.OnChange:=@EditChange; Edit3:=TEdit.Create(NewPage) Edit3.Left:=140 Edit3.Top:=60 Edit3.Width:=60 Edit3.Height:=21 Edit3.AutoSize:=False Edit3.MaxLength:=5 Edit3.Font.Size:=12 Edit3.Font.Style:=[fsBold] Edit3.Font.Name:='Arial' Edit3.Parent:=NewPage.Surface Edit3.OnChange:=@EditChange; Edit4:=TEdit.Create(NewPage) Edit4.Left:=210 Edit4.Top:=60 Edit4.Width:=60 Edit4.Height:=21 Edit4.AutoSize:=False Edit4.MaxLength:=5 Edit4.Font.Size:=12 Edit4.Font.Style:=[fsBold] Edit4.Font.Name:='Arial' Edit4.Parent:=NewPage.Surface Edit4.OnChange:=@EditChange; Edit5:=TEdit.Create(NewPage) Edit5.Left:=280 Edit5.Top:=60 Edit5.Width:=60 Edit5.Height:=21 Edit5.AutoSize:=False Edit5.MaxLength:=5 Edit5.Font.Size:=12 Edit5.Font.Style:=[fsBold] Edit5.Font.Name:='Arial' Edit5.Parent:=NewPage.Surface Edit1.OnChange:=@EditChange; end; procedure InitializeWizard(); begin SerialPage end; function NextButtonClick(CurPageID: Integer): Boolean; begin Result:=True if CurPageID = NewPage.ID then begin Result:=Edit1.Text = '11111' //серийный номер Result:=Edit2.Text = '22222' Result:=Edit3.Text = '33333' Result:=Edit4.Text = '44444' Result:=Edit5.Text = '55555' if not Result then begin MsgBox('Неверный серийный номер.', mbError, mb_Ok) Result:=False end end end; |