GUIs and JavaFX Flashcards

1
Q

What is a UI?

A

Definition 1: a user interface is any method or means by which
the end-user interacts with, or controls, a software or hardware
device.

Definition 2: a UI is a communication medium (conduit) that
enables a human to interact with a machine (human-machine
interaction).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is a GUI (general definition)?

A

A GUI is a type of user interface through which users interact
with programs or electronic devices via interactive visual
components.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What framework has been most used in this class?

A

JavaFX.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is a GUI (definition in terms of UI controls and such)?

A

A GUI is a container of UI controls (also known as widgets):

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What are the main structural components of any JavaFX application?

A

1) Stage: is the main window where the
application will be displayed.
2) Scene: is a container of UI controls that
composes one “page” of the application.
3) Scene Graph (tree-like data structure):
is a hierarchy of element(s) placed in the
Scene with visual appearance and
interactive behavior.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is the difference between a stage and a scene (in JavaFX)?

A

A stage is the top level container class. While a scene holds all the elements of a scene graph.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is a scene?

A

➢ The Scene is populated with a tree of Nodes
▪ Layout components
▪ UI Controls
▪ Charts
▪ Shapes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What are the imperative and declarative approaches?

A

Imperative: coding by hand.
Declarative: using a tool such as scene builder.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Name the 3 type of nodes in a scene graph.

A

Root node, parent node and terminal node.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Name the upsides and downsides of declarative approach.

A

Very easy to use, reducing errors. Not as much control and precision over nodes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Name the upsides and downsides of imperative approach.

A

Very time consuming and prone to errors. Makes designing the scene graph a very easy process.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What does flow pane do?

A

Puts all the nodes from left to right along a row, when the row is finished (doesn’t have anymore space for new nodes) it goes down to the next row and puts the nodes from left to right again.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What does tile pane do?

A

A flow pane with equally sized boxes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Who is good lookin’?

A

Victor!!!

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Name the 3 Top Level Parent Nodes. And also give information about how they work.

A

Group, Region and Control.
➢ Group:
▪ Doesn’t perform any positioning of children.
▪ Statically assemble a collection of nodes in fixed positions
▪ Apply an effect or transform to that collection.
➢ Region:
▪ Base class for all general-purpose layout panes
▪ Resizable and styleable via CSS
▪ Supports dynamic layout by sizing and positioning children
➢ Control:
▪ The base class for all skinnable controls
▪ Resizable and subclasses are all stylable via CSS
▪ Controls delegate layout to their skins (which are Regions)
▪ Each layout Control subclass provides API for adding content in the appropriate
place within its skin
▪ You do not add children to a control directly

How well did you know this?
1
Not at all
2
3
4
5
Perfectly