Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus / 2008-08

How to create a Wizard (InstallShield type) interface

8 messages · 4 people ·

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Graeme Geldenhuys

Hi,

May applications, but mostly installations packages like InstallShield use a Wizard style interface. Start application, click Next, Next, Next, Finish. :-)

How do you create such a Wizard interface?

* Is in a lot of forms, displayed over eachother?
* Is it a tab type component, with the tabs set to invisible?
* Does it use one Form and a bunch of Frames?
* ???

Anybody have some hints on this? How to recreate such an GUI interface.

Regards,
- Graeme -

_______________________________________________
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

Reply by email

Michael Van Canneyt
to Graeme Geldenhuys
Graeme Geldenhuys wrote 14 lines
Hi, May applications, but mostly installations packages like InstallShield use a Wizard style interface. Start application, click Next, Next, Next, Finish. :-) How do you create such a Wizard interface? * Is in a lot of forms, displayed over eachother? * Is it a tab type component, with the tabs set to invisible? * Does it use one Form and a bunch of Frames? * ??? Anybody have some hints on this? How to recreate such an GUI interface.

At work, we routinely use a TPageControl with all tabs set to invisible. The TTabsheet pages are filled with TFrames (actually, there is always a TWizardFrame, and all TFrames descend from this) - to ensure the various steps are truly independent.

It keeps it RAD, and lets the various tabs be developed independently. TWizardFrame has methods and properties such as 'NextButtonEnabled' 'PreviousButtonEnabled', 'NextButtonCaption' and so in, making the wizard itself pretty generic.

Michael.

Reply by email

Burkhard Carstens
to Michael Van Canneyt
Michael Van Canneyt wrote 26 lines
On Fri, 29 Aug 2008, Graeme Geldenhuys wrote: > Hi, > > May applications, but mostly installations packages like > InstallShield use a Wizard style interface. Start application, > click Next, Next, Next, Finish. :-) > > How do you create such a Wizard interface? > > * Is in a lot of forms, displayed over eachother? > * Is it a tab type component, with the tabs set to invisible? > * Does it use one Form and a bunch of Frames? > * ??? > > Anybody have some hints on this? How to recreate such an GUI > interface. At work, we routinely use a TPageControl with all tabs set to invisible. The TTabsheet pages are filled with TFrames (actually, there is always a TWizardFrame, and all TFrames descend from this) - to ensure the various steps are truly independent. It keeps it RAD, and lets the various tabs be developed independently. TWizardFrame has methods and properties such as 'NextButtonEnabled' 'PreviousButtonEnabled', 'NextButtonCaption' and so in, making the wizard itself pretty generic.

Unfortunately, this does not work with gtk1, at least it didn't a year ago when I ported my wizard app from D7 to lazarus. It was impossible to hide the tabs, and worse: I couldn't find a way to prevent selecting a page by clicking the tabs (i.e. user could circumvent the "next" button) ..

regards
Burkhard

Reply by email

Reenen Laurie
to Michael Van Canneyt: At work, we routinely use a TPageControl with all tabs set to invisible. The TTabsheet…

On Windows, I use InnoSetup to create those wizards. And I am very happy with it.

I have not used Nullsoft or any other compiler creator, but Inno has a very good balance between power and ease.

Regards,
-Reenen

On Fri, Aug 29, 2008 at 10:29 AM, Michael Van Canneyt <

Show quoted text 37 lines
wrote: On Fri, 29 Aug 2008, Graeme Geldenhuys wrote: > Hi, > > May applications, but mostly installations packages like InstallShield > use a Wizard style interface. Start application, click Next, Next, > Next, Finish. :-) > > How do you create such a Wizard interface? > > * Is in a lot of forms, displayed over eachother? > * Is it a tab type component, with the tabs set to invisible? > * Does it use one Form and a bunch of Frames? > * ??? > > Anybody have some hints on this? How to recreate such an GUI interface. At work, we routinely use a TPageControl with all tabs set to invisible. The TTabsheet pages are filled with TFrames (actually, there is always a TWizardFrame, and all TFrames descend from this) - to ensure the various steps are truly independent. It keeps it RAD, and lets the various tabs be developed independently. TWizardFrame has methods and properties such as 'NextButtonEnabled' 'PreviousButtonEnabled', 'NextButtonCaption' and so in, making the wizard itself pretty generic. Michael. _______________________________________________ Lazarus mailing list http://www.lazarus.freepascal.org/mailman/listinfo/lazarus
o__ ,_.>/ _ (_)_\(_)_______ ...speed is good _______________ I believe five out of four people have a problem with fractions. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.lazarus.freepascal.org/pipermail/lazarus/attachments/20080829/0c161ae1/attachment.html

Reply by email

Graeme Geldenhuys
to Michael Van Canneyt: At work, we routinely use a TPageControl with all tabs set to invisible. The TTabsheet…
Michael Van Canneyt wrote 6 lines
> Anybody have some hints on this? How to recreate such an GUI interface. At work, we routinely use a TPageControl with all tabs set to invisible. The TTabsheet pages are filled with TFrames (actually, there is always a TWizardFrame, and all TFrames descend from this) - to ensure the various steps are truly independent.

I would have thought this to be the easiest solution as well. A tab/page control seems to fit the design. Thanks for the feedback Michael.

Regards,
- Graeme -

_______________________________________________
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

Reply by email

Graeme Geldenhuys
to Reenen Laurie: On Windows, I use InnoSetup to create those wizards. And I am very happy with it. I have…

2008/8/29 Reenen Laurie :

Show quoted text 5 lines
On Windows, I use InnoSetup to create those wizards. And I am very happy with it. I have not used Nullsoft or any other compiler creator, but Inno has a very good balance between power and ease.

:-) I don't want to create a Setup, I want to create the Wizard/Assistant interface in my own applications.

Regards,
- Graeme -

_______________________________________________
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/

Reply by email

Reenen Laurie
to Graeme Geldenhuys

Why do you need a PageControl?

I created a "questionaire" thing once, which would have a "mainpanel"

And each "page" is a separate form. Then on the "next" button all you do is

Make the panel the "parent" of the form, and make the form visible. (remember to align the form AlClient) (or is it maximized)? Hide the previous one, and set the parent to nil (or you could probably leave it as a child to the panel).

Regards,
-Reenen

On Fri, Aug 29, 2008 at 10:58 AM, Graeme Geldenhuys <

Show quoted text 26 lines
wrote: 2008/8/29 Reenen Laurie : > On Windows, I use InnoSetup to create those wizards. And I am very happy > with it. > > I have not used Nullsoft or any other compiler creator, but Inno has a very > good balance between power and ease. :-) I don't want to create a Setup, I want to create the Wizard/Assistant interface in my own applications. Regards, - Graeme - _______________________________________________ fpGUI - a cross-platform Free Pascal GUI toolkit http://opensoft.homeip.net/fpgui/ _______________________________________________ Lazarus mailing list http://www.lazarus.freepascal.org/mailman/listinfo/lazarus
o__ ,_.>/ _ (_)_\(_)_______ ...speed is good _______________ I believe five out of four people have a problem with fractions. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.lazarus.freepascal.org/pipermail/lazarus/attachments/20080829/067eeb5c/attachment.html

Reply by email

Michael Van Canneyt
to Burkhard Carstens: Unfortunately, this does not work with gtk1, at least it didn't a year ago when I ported…
Burkhard Carstens wrote 33 lines
Am Freitag, 29. August 2008 10:29 schrieb Michael Van Canneyt: > On Fri, 29 Aug 2008, Graeme Geldenhuys wrote: > > Hi, > > > > May applications, but mostly installations packages like > > InstallShield use a Wizard style interface. Start application, > > click Next, Next, Next, Finish. :-) > > > > How do you create such a Wizard interface? > > > > * Is in a lot of forms, displayed over eachother? > > * Is it a tab type component, with the tabs set to invisible? > > * Does it use one Form and a bunch of Frames? > > * ??? > > > > Anybody have some hints on this? How to recreate such an GUI > > interface. > > At work, we routinely use a TPageControl with all tabs set to > invisible. The TTabsheet pages are filled with TFrames (actually, > there is always a TWizardFrame, and all TFrames descend from this) - > to ensure the various steps are truly independent. > > It keeps it RAD, and lets the various tabs be developed > independently. TWizardFrame has methods and properties such as > 'NextButtonEnabled' 'PreviousButtonEnabled', 'NextButtonCaption' and > so in, making the wizard itself pretty generic. Unfortunately, this does not work with gtk1, at least it didn't a year ago when I ported my wizard app from D7 to lazarus. It was impossible to hide the tabs, and worse: I couldn't find a way to prevent selecting a page by clicking the tabs (i.e. user could circumvent the "next" button) ..

Well, the tabs can be hidden now in GTK 1 ?

Michael.

Reply by email