当前页面:
在线文档首页 >
NetBeans API Javadoc 4.1.0
NetBeans API Javadoc 4.1.0
Class
WizardDescriptor
allows developer to create wizard from supplied
WizardDescriptor.Iterator
or array of
WizardDesriptor.Panel
.
It also allows wizard developer to easy satisfy
UI Guidelines for Wizards
in NetBeans.
WizardDescriptor
can create wizard panel (steps, graphics, help on
the left; subtitle and user panel on the right). To achieve that, developer
have to use
WizardDescriptor.putProperty()
or
JComponent.putClientProperty()
in his/her panel to set needed properties (e.g.
String[]
for steps,
URL
for help, some
Boolean
for layout control, ...).
To create simple wizard try this:
WizardDescriptor wd = new WizardDescriptor(
new WizardDescriptor.Panel[] {
myPanel1,
myPanel2,
myPanel3,
myPanel4
});
It will create four steps wizard with no additional graphic.
To achieve creation of subtitle, steps pane, help tab, ... one have to
set initialization properties.
Wizard panel initialization
Use
WizardDescriptor.putProperty()
to set following initialization
properties.
-
Name
"WizardPanel_autoWizardStyle"
, type Boolean
Set to Boolean.TRUE
to turn on subtitle creation from
WizardDesriptor.Panel.getComponent()
.getName()
as first and
WizardDescriptor.Iterator.name()
as second parameter in subtitle
format set with
WizardDesriptor.setTitleFormat()
.
Default subtitle format is "{0} wizard ({1})"
and name of default
WizardDescriptor.ArrayIterator
is
"{0} of {1}"
where {0}
is number of current panel and {1}
is size of iterator.
Do not set or set to Boolean.FALSE
if wizard panel shouldn't be used at all.
-
Name
"WizardPanel_contentDisplayed"
, type Boolean
Set to Boolean.TRUE
to turn on displaying of steps pane
(content, behind which can be displayed image).
Content will be constructed from not initialization property "WizardPanel_contentData"
.
-
Name
"WizardPanel_helpDisplayed"
, type Boolean
Set to Boolean.TRUE
to turn on displaying of help (html browser).
Help will be taken from not initialization property
"WizardPanel_helpURL"
. If also steps are displayed then put help and content
panes into tabbed pane.
-
Name
"WizardPanel_contentNumbered"
, type Boolean
Set to Boolean.TRUE
to turn on numbering of steps (before every step
is placed it's sequence number).
-
Name
"WizardPanel_leftDimension"
, type Dimension
Set size of left pane (steps and help pane).
That was initialization part. All
Boolean
properties are
Boolean.FALSE
by default. Initialization properties could be set
also in the first panel (through
JComponent.putClientProperty()
) of supplied
iterator. Later change of these properties will not cause change of wizard
behavior. Properties have to be set before
TopManager.getDefault().createDialog(wd)
is called.
Follow properties which could be changed at wizard runtime.
Wizard panel properties
These properties could be changed dynamically.
-
Name
"WizardPanel_contentData"
, type String[]
Set step names which will be displayed in the content pane.
-
Name
"WizardPanel_image"
, type java.awt.Image
Set image displayed as background of content.
-
Set subtitle (!!!) format with
WizardDescriptor.setTitleFormat()
.
-
Set title of the wizard with
WizardDescriptor.setTitle()
.
-
Name
"WizardPanel_errorMessage"
, type String
Set the localized message which is then shown at the bottom of the wizard panel.
This message should be set when panel becomes invalid and Next/Finish
buttons are disabled. It helps user to understand what is wrong. The property
must be set to null value to clear the message. This property is supported since
NetBeans 3.5.
In every
panel set these client properties (
JComponent.putClientProperty()
):
-
Name
"WizardPanel_helpURL"
, type java.net.URL
Help url which explains your pane.
-
Name
"WizardPanel_contentSelectedIndex"
, type java.lang.Integer
Index of highlighted step in the content, the index is zero-based.
-
Name
"WizardPanel_contentBackgroundColor"
, type java.awt.Color
Color used as background of content pane.
-
Set name of panel
JComponent.setName("First wizard panel")
,
used as first part of subtitle, second
is
WizardDescriptor.Panel.name()
when you use "{0}{1}"
message format.
All properties could be set with
both alternatives (
WizardDescriptor.putProperty()
or
JComponent.putClientProperty()
)
except
"WizardPanel_helpURL"
which can be set only with
JComponent.putClientProperty()
and the property
"WizardPanel_errorMessage"
which can be set only by
WizardDescriptor.putProperty()
.
If both are used at the same time then
WizardDescriptor.putProperty()
matters.
WizardDescriptor
listens on property changes of not initialization properties
and makes immediate changes.