Interfață grafică (în engleză Graphical User Interface sau GUI) Este o interfață prin intermediul căreia
utilizatorul poate interacționa cu un program, cu ajutorul componentelor vizuale cum ar fi: butoane, meniuri,
iconițe etc.
O clasă Java este un fișier care, în primul rând, are extensia „ *.java ” și are denumirea întocmai ca și clasa
declarată publică din acest fișier.
Cu alte cuvinte, denumirea clasei Java este ceea ce se scrie după îmbinarea de cuvinte cheie „ public class ” din
fișierul cu aceeași denumire și extensie „ .java” .
Tipuri de date: primitive ( byte, short, int, long, float, double, char, boolean ) si de referinta (string, array, clase)
Un program java are cel puțin o clasă Java (un fișier).
Metoda - o colecție de linii de cod, care efectuează o acțiune specifică și care poate în anumite situații să returneze
un anumit rezultat „celui” care a apelat-o.
Tip de returnare- determină ce tip de valoare ne va returna metoda, adică tipul rezultatului pe care îl va returna
metoda în urma execuției.
Important: Metodele care nu returnează nicio valoare în urma executării au tipul de returnare void . Putem înțelege
cuvântul void , ca nimic, fără valoarea returnată, doar acțiunea executată.
Parametrii metodei -valori pe care le va utiliza, pentru a-ți îndeplini acțiunea.
Etapele de lucru cu o metodă
1. Declarăm și implementăm metoda
2. Apelăm metoda
Metoda main este metoda care pornește execuția programului.
Metoda start pornește execuția programului JavaFX
Tipuri de panouri (containere) în JavaFX
HBox, TextFlow, VBox, FlowPane, BorderPane, TilePane,
AnchorPane, GridPane, StackPane, Group
pentru a grupa și aranja componentele vizuale, fiecare fiind
bun de utilizat în anumite cazuri.
Label - etichetă;
Button - buton;
MenuButton - buton pentru meniul aplicației;
ToggleButton - buton ce își poate păstra starea apăsat da/nu;
RadioButton - buton, de forma unui cerculeț, ce selectează doar una din
opțiuni;
CheckBox - buton (pătrățel), ce selectează opțional, adițional;
ComboBox - listă de selectare, doar o opțiune vizibilă;
ListView - vizualizarea unei liste;
TextField - componentă de introducere a textului pe o singură linie;
PasswordField - componentă pentru a introduce parola cu simboluri;
TextArea - componentă de introducere a textului pe mai multe linii;
ImageView - componentă pentru vizualizarea imaginii;
DatePicker - componentă pentru introducerea, selectarea datei din calendar;
ColorPicker - de aici selectăm culoarea curentă ce va fi utilizată;
Slider - componentă pentru „răsfoirea” altor componente, imagini;
Tooltip - un text de ajutor, explicativ ce apare deasupra componentei selectate cu mouse-ul;
Hyperlink - text activ, ce ne poate redirecționa la o resursă web;
MenuBar - bară de meniu;
TableView - componentă pentru vizualizarea unei tabele;
Separator - componentă care poate separa celelalte componente pe verticală sau orizontală;
HTMLEditor - componentă textuală pentru editarea/afișarea codului HTML;
Pagination - butonașe cu mecanismul de paginare, afișare a mai multor rezultate distribuite pe pagini cu
un anumit număr pe fiecare din ele (exemplu: căutări prin google, când rezultatele căutărilor sunt arătate
pe mai multe pagini);
FileChooser – componentă
Slider - Componenta pentru glisare în JavaFX
TextField este componenta utilizată în JavaFX pentru a introduce text, într-o singură linie, adică text de
dimensiuni mici .
Java utilizează standardul UNICODE pentru codificarea caracterelor.
Fontul este un set de caractere care au un anumit design, dimensiune, grosime etc.
În JavaFX pentru a fișa texte într-un panou de aplicație, utilizăm clasa Text.
TextArea - Componenta destinată introducerii textelor de volume mai mari, în mai multe linii, în JavaFX
Clasa Image din pachetul identificat ca [Link] este utilizată pentru încărcarea (citirea) imaginilor de la o
adresă URL specificată sau de la un flux de citire a datelor. Formatele de imagine acceptate de clasa Image sunt:
BMP, GIF, JPEG, PNG.
ImageView este clasa utilizată pentru pictarea, adică afișarea, imaginilor încărcate prin clasa Image în interfața
grafică a aplicațiilor JavaFX. Pentru a lucra cu imagini, vom utiliza câteva clase Java: ImageView, Image,
FileChooser, FileInputStream . Aceste clase Java le vom studia în continuare cu ajutorul Documentației Java
API. Să analizăm câteva metode a clasei ImageView:
Metoda getFitHeight() returnează valoarea proprietății fitHeight a obiectului de tip ImageView , care reprezintă
înălțimea potrivită care a fost atribuită obiectului;
Metoda getFitWidth() returnează valoarea proprietății fitWidth a obiectului de tip ImageView , care reprezintă lățimea
potrivită care a fost atribuită obiectului;
Metoda setFitHeight(double value) poate fi utilizată pentru a seta înălțimea potrivită pentru obiectul ImageView ;
Metoda setFitWidth(double value) poate fi utilizată pentru a seta lățimea potrivită pentru obiectul ImageView ;
Metoda setImage(Image value) poate fi utilizată pentru a seta imaginea pe care să o afișeze obiectul ImageView . Astfel,
dacă inițializăm obiectul ImageView utilizând constructorul fără argumente, putem ulterior să setăm imaginea, apelând această
metodă sau putem modifica imaginea afișată la fel apelând această metodă;
Metoda setPreserveRatio(boolean value) poate fi utilizată pentru a seta proprietatea de a păstra raportul dintre lățime și
înălțime la redimensionarea imaginii. Această metodă primește ca parametru o valoarea true sau false , unde true înseamnă „da,
păstrează raportul”, iar false înseamnă „nu păstrează raportul”.
Clasa FileChooser o feră funcționalitatea de a deschide o fereastră de dialog prin intermediul căreia poate fi
selectat un fișier la citire sau la salvare.
Clasa Alert o feră funcționalitatea de a deschide o fereastră de dialog care are scopul de a informa utilizatorul
unei aplicații despre o situație de succes sau de eroare.
În JavaFX, evenimentele GUI (Graphical User Interface) sunt acțiuni sau interacțiuni care apar în interfața grafică
a unei aplicații.
MouseEvent este clasa utilizată la declanșarea unui eveniment de lucru cu mouse-ul în aplicațiile JavaFX. Când
are loc evenimentul mouse-ului, nodul (componenta grafică) de sub cursor este selectată și evenimentul este
declanșat.
onMouseClicked: Declanșat atunci când utilizatorul face click pe un nod (componentă);
onMouseEntered și onMouseExited: Declanșate când cursorul mouse-ului intră sau iese din aria
nodului;
onMousePressed și onMouseReleased: Declanșate în momentul apăsării și eliberării unui buton al
mouse-ului, în timp ce cursorul se află pe un nod.
KeyEvent
Evenimentele KeyEvent apar atunci când utilizatorul interacționează cu aplicația, utilizând tastatura. Aceste
evenimente permit aplicației să reacționeze la apăsarea sau eliberarea unei taste și să obțină informații despre
tasta apăsată, cum ar fi Shift, Control, Alt etc.
ActionEvent
Evenimentul ActionEvent în JavaFX este un tip de eveniment care este declanșat atunci când un nod
(componentă grafică) din interfața grafică primește o acțiune de la utilizator, cum ar fi apăsarea unui buton.
Bara de meniu în JavaFX
În JavaFX pentru a crea o bară de meniu putem utiliza
următoarele clase Java: MenuBar, Menu, MenuItem,
SeparatorMenuItem, RadioMenuItem, CheckMenuItem.
Pentru a crea o bară de meniu în JavaFX, este necesar să scriem
codul pentru a instanția meniul și elementele lui, de asemenea
să asociem acțiunile care vor fi executate la accesarea fiecărui
element din meniu.
Clasa MenuBar creează o bară de meniu în aplicațiile JavaFX. Bara de meniu va fi plasată în partea de sus a
interfeței grafice, iar în aceasta vor fi incluse meniurile propriu-zise .
Clasa Menu creează un meniu în bara de meniu a aplicației JavaFX. Meniul este opțiunea afișată direct în
bara de meniu, care poate fi apăsată pentru a afșa elementele acelui meniu.
Clasa MenuItem definește un element al meniului.
Game engine - în română îi mai spunem „Motor Grafic".
Un motor grafic este un sistem conceput pentru crearea și dezvoltarea de jocuri video.
Scenariul unui joc este descrierea prin cuvinte a jocului, a jucătorilor, a scopului urmărit de jucători, a regulilor de
joc, a modului de aplicare a regulilor și rezultatul aplicării regulilor.
"NPC" este un personaj controlat de computer (NPC = Non-Player Character), care interacționează cu jucătorul.
Acest NPC este creat de programatorii jocului pentru a juca un rol specific în povestea jocului.