How to create a dialog using JFXDialog of JFoenix in JavaFX -
i search example jfoenix jfxdialog has working demo of
jfxdialog dialog = new jfxdialog();
jfxdialog
has 3 different constructors:
jfxdialog()
,jfxdialog(stackpane dialogcontainer, region content, dialogtransition transitiontype)
,jfxdialog(stackpane dialogcontainer, region content, dialogtransition transitiontype, boolean overlayclose)
the first 1 sets animationtype
center
.
the second 1 sets parent(dialogcontainer
), content(content
) , animationtype(transitiontype
).
the third 1 sets same second 1 + if dialog should close if click on overlay(overlayclose
).
for parent of dialog need stackpane
.
for content can use child, grandchild, ... of region
. suggest use jfxdialoglayout
extends stackpane
, makes easier style dialog.
for transitiontype
have 5 different ones:
dialogtransition.top
dialogtransition.right
dialogtransition.bottom
dialogtransition.left
dialogtransition.center
if want close clicking on overlay set overlayclose
true
, else set false
some usefull methods jfxdialog
has:
setdialogcontainer(stackpane dialogcontainer)
sets parent.setcontent(region content)
sets content of dialog.setoverlayclose(final boolean overlayclose)
set wheter want close dialog clicking on overlay or not.show(stackpane dialogcontainer)
showsjfxdialog
in givenstackpane
show()
showsjfxdialog
in parentclose()
closesjfxdialog
settransitiontype(dialogtransition transition)
setsdialogtransition
1 of mentioned beforesetondialogclosed(eventhandler<? super jfxdialogevent> handler)
defines function called when dialog closed. triggered after close animation finished.setondialogopened(eventhandler<? super jfxdialogevent> handler)
defines function called when dialog opened. triggered after show animation finished.
jfxdialoglayout
has empty constructor contains out of heading
, body
, actions
.
the jfxdialoglayout
class provides setter parts. are:
setheading(node... titlecontent
setbody(node... body)
setactions(node... actions)
if don't know, because of 3 dots after node
can add unlimited nodes 3 parts. feature called varargs
for further information take @ demo on github @ java controller jfoenix/dialog container , @ fxml file jfoenix/jfxdialog.fxml
also here source code of controls containing jfxdialog
, jfxdialoglayout
jfoenix/controls
i suggest write javafx applications seperated in java, fxml , css files. why use fxml
Comments
Post a Comment