@Dean_Huntley asked some days ago if theres a way to implement a guided tour in your Xojo app.
I’ve done something like that already on the (old) Webframework.
But I was curious if I can bring some the functionality to desktop apps. It turned out, that it isn’t so hard, so I made this little project called “Intro”.
Result is a very easy to use set of classes, which you can simply drag onto your project. After that you’ll be able to develop your own tours though your app.
It is very rough and simple, but maybe someone has more patience and time to give to improve this little library.
Usage as multiple step intro
Multiple step intros provide a simple UI to step-by-step describe your controls and functionalities.
- copy the folder “Intro” into your project
- Drag the class Intro->Classes
IntroHandler
onto your Window - Add in the window
open
event your steps (code see below) - Call your intro with
Self.introHandler1.start
SampleCode:
Usage as multiple step intro
Multiple step intros provide a simple UI to step-by-step describe your controls and functionalities.
- copy the folder “Intro” into your project
- Drag the class Intro->Classes
IntroHandler
onto your Window - Add in the window
open
event your steps (code see below) - Call your intro with
Self.introHandler1.start
SampleCode:
Sub ShowMultipleIntro()
// you can use every regular Control (which inherits from RectControl)
Self.introHandler1.addStep(New introStep(Self.ComboBox1, "Combobox", "The combobox combines a textarea and a listbox"))
Self.introHandler1.addStep(New introStep(Self.GroupBox1, "Groupbox", "Groupboxes are used to group multiple controls"))
Self.introHandler1.addStep(New introStep(Self.PushButton1, "PushButton", "This is a button which fires some code."))
// you can also use a Window
Self.introHandler1.addStep(New introStep(Self, "Window", "Windows are the basic user interface structures where you can place your controls onto"))
// also embedded ContainerControls are possible
Self.introHandler1.addStep(New introStep(Self.TestContainer1, "ContainerControl", "ContainerControls are structures to be embedded into a layout. You can nest Controls."))
// and also controls inside embedded ContainerControls
Self.introHandler1.addStep(New introStep(Self.TestContainer1.Label2, "Nested Controls", "With this library you can even focus on controls which are placed inside Containers."))
// And new: You can also highlight multiple controls at once, by using an array of controls:
Var rArr() As RectControl
rArr.Add(Self.ComboBox1)
rArr.Add(Self.PushButton2)
Self.introHandler1.addStep(New introStep(rArr, "ControlArray", "You can also highlight multiple Controls at once"))
Self.introHandler1.start
End Sub
Usage as single
Single steps simply show your description next to your control.
Sub ShowSingleStep()
Var d As New introStep(GroupBox1, "hallo", "yay")
d.showSingle
End Sub
See the test project, this should give you everthing you need.