3140705_OOP_Unit-7 (Darshan) [VisionPapers.in]
3140705_OOP_Unit-7 (Darshan) [VisionPapers.in]
(3140705)
Unit-07
JavaFX and
Event-driven
programming
and Prof. Jayesh D. Vagadiya
Computer Engineering
animations
Department
Darshan Institute of Engineering & Technology, Rajkot
[email protected]
9537133260
Outline
Looping
What is JavaFX?
Architecture of JavaFX API
JavaFX Application Structure
Lifecycle of JavaFX Application
2D Shape
JavaFX - Colors
JavaFX – Image
Layout Panes
JavaFX – Events
Property Binding
Animation
What is JavaFX?
JavaFX is a Java library used to build Rich Internet Applications (RIA) and
Desktop Applications.
The applications developed using JavaFX can run on various devices such
as Desktop Computers, Mobile Phones, TVs, Tablets, etc.
To develop GUI Applications using Java programming language, the
programmers rely on libraries such as Advanced Windowing Toolkit (AWT)
and Swing. After the advent of JavaFX, these Java programmers can now
develop GUI applications effectively with rich content.
Why we need JavaFX
To develop Client Side Applications with rich features, the programmers used to
depend on various libraries to add features such as Media, UI controls, Web, 2D and
3D, etc.
JavaFX provides a rich set of graphics and media API’s and it leverages the modern
Graphical Processing Unit through hardware accelerated graphics.
One can use JavaFX with JVM based technologies such as Java, Groovy and JRuby. If
developers opt for JavaFX, there is no need to learn additional technologies.
Prof. Jayesh D. Vagadiya #3140705 (OOP-I) Unit 07 – JavaFX basics 3
Features of JavaFX
Written in Java
FXML
Scene Builder
Swing Interoperability
Built-in UI controls
CSS like Styling
Canvas and Printing API
Rich set of API’s
Integrated Graphics library
Graphics pipeline
Quantum Toolkit
Win32 | OpenGL |
Web kit G Streams
GWT D3D
Stage
Scene
Scene Graph
Root
Nod
e
Branc Leaf
h Nod
Node e
Leaf Leaf
Nod Nod
e e
200.0, 50.0,
400.0, 50.0,
450.0, 150.0,
400.0, 250.0,
200.0, 250.0,
150.0, 150.0,
});
Cubic Curve CubicCurve CubicCurve cubicCurve = new CubicCurve();
cubicCurve.setStartX(100.0f);
cubicCurve.setStartY(150.0f);
cubicCurve.setControlX1(400.0f);
cubicCurve.setControlY1(40.0f);
cubicCurve.setControlX2(175.0f);
cubicCurve.setControlY2(250.0f);
cubicCurve.setEndX(500.0f);
cubicCurve.setEndY(150.0f);
Prof. Jayesh D. Vagadiya #3140705 (OOP-I) Unit 07 – JavaFX basics 22
Classes for Shape (javafx.scene.shape) (Cont.)
Shape Class Description
Quad Curve QuadCurve QuadCurve quadCurve = new QuadCurve();
quadCurve.setStartX(100.0);
quadCurve.setStartY(220.0f);
quadCurve.setEndX(500.0f);
quadCurve.setEndY(220.0f);
quadCurve.setControlX(250.0f);
quadCurve.setControlY(0.0f);
Arc Arc Arc arc = new Arc();
arc.setCenterX(100.0);
arc.setCenterY(100.0);
arc.setRadiusX(100.0);
arc.setRadiusY(100.0);
arc.setStartAngle(0.0);
arc.setLength(100.0);
scene.setOnMousePressed(mouseHandler);
Prof. Jayesh D. Vagadiya #3140705 (OOP-I) Unit 07 – JavaFX basics 40
Creating a Calculator using JavaFX
primaryStage.setScene(s);
primaryStage.show();