Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
laboratoare:laborator03 [2014/10/30 01:26]
Andrei Roșu-Cojocaru [Conținut pentru Pagini Internet]
laboratoare:laborator03 [2014/11/17 20:48] (current)
Andrei Roșu-Cojocaru [Soluții]
Line 4: Line 4:
 ===== Obiective ==== ===== Obiective ====
  
 +  * familiarizarea cu facilitățile oferite de tehnologia JavaFX pentru dezvoltarea de interfețe cu utilizatorul în comparație cu alte soluții existente;
 +  * identificarea principalelor componente din cadrul arhitecturii JavaFX;
 +  * descrierea structurii generale a unei aplicații JavaFX și a firelor de execuție din contextul cărora pot fi accesate obiectele corespunzătoare controalelor grafice, respectiv interacțiunii cu utilizatorul;​
 +  * implementarea unei interfețe cu utilizatorul folosind Scene Builder 2.0 / FXML cu injectarea controalelor grafice / metodelor de tratare a evenimentelor în clasa controller din codul sursă;
 +  * înțelegerea mecanismului de tratare a evenimentelor legate de interacțiunea cu utilizatorul în JavaFX; dezvoltarea de filtre și metode de tratare pentru diferite acțiuni ale utilizatorului;​
 +  * însușirea practicilor utilizate pentru dezvoltarea aplicațiilor JavaFX.
 ===== Cuvinte Cheie ==== ===== Cuvinte Cheie ====
  
Line 10: Line 16:
 ===== Materiale Ajutătoare ====== ===== Materiale Ajutătoare ======
  
 +{{ :​laboratoare:​laborator03:​aipi2014-lab03-slides.pdf }}
 +
 +{{ :​laboratoare:​laborator03:​aipi2014-lab03-slides-3pp.pdf }}
 ===== JavaFX - aspecte generale ===== ===== JavaFX - aspecte generale =====
  
Line 1263: Line 1272:
 Pentru obiectele ''​WebView'',​ meniurile contextuale sunt activate implicit, dezactivarea lor realizându-se prin metoda ''​setContextMenuEnabled()''​. Pentru obiectele ''​WebView'',​ meniurile contextuale sunt activate implicit, dezactivarea lor realizându-se prin metoda ''​setContextMenuEnabled()''​.
  
-Istoricul paginilor vizitate poate fi obţinut prin metoda ''​getHistory()''​ aplicată obiectului de tip ''​WebEngine'',​ întorcând un obiect de tip ''​WebHistory''​. Acesta este o listă de intrări ce poate fi accesată prin metoda ''​getEnteries()'',​ conţinând informaţii despre pagină (URL şi titlu) sau despre data la care aceasta a fost vizitată cel mai recent. Metoda ''​go()''​ a acestei clase forțează navigatorul să încarce pagina reţinută la indexul respectiv.+Istoricul paginilor vizitate poate fi obţinut prin metoda ''​getHistory()''​ aplicată obiectului de tip ''​WebEngine'',​ întorcând un obiect de tip ''​WebHistory''​. Acesta este o listă de intrări ce poate fi accesată prin metoda ''​getEntries()'',​ conţinând informaţii despre pagină (URL şi titlu) sau despre data la care aceasta a fost vizitată cel mai recent. Metoda ''​go()''​ a acestei clase forțează navigatorul să încarce pagina reţinută la indexul respectiv.
  
 Conținutul unei pagini Internet poate fi tipărit folosint imprimanta instalată în cadrul mașinii, folosind metoda ''​print()''​ din clasa ''​WebEngine''​. Aceasta primește un obiect de tip ''​PrinterJob'',​ obținut prin apelul metodei statice ''​PrinterJob.createPrinterJob()''​. În situația în care nu există nici o imprimantă instalată, rezultatul întors va fi ''​null''​. De asemenea, trebuie apelată metoda ''​endJob()''​ a obiectului ''​PrinterJob''​ pentru a se asigura faptul că procesul de tipărire a fost terminat. Conținutul unei pagini Internet poate fi tipărit folosint imprimanta instalată în cadrul mașinii, folosind metoda ''​print()''​ din clasa ''​WebEngine''​. Aceasta primește un obiect de tip ''​PrinterJob'',​ obținut prin apelul metodei statice ''​PrinterJob.createPrinterJob()''​. În situația în care nu există nici o imprimantă instalată, rezultatul întors va fi ''​null''​. De asemenea, trebuie apelată metoda ''​endJob()''​ a obiectului ''​PrinterJob''​ pentru a se asigura faptul că procesul de tipărire a fost terminat.
Line 1279: Line 1288:
 === BorderPane === === BorderPane ===
  
-Un container de tip ''​BorderPane''​ oferă cinci regiuni pentru poziționarea nodurilor: sus, jos, stânga, dreapta ​li centru, acestea putând avea orice dimensiune.+Un container de tip ''​BorderPane''​ oferă cinci regiuni pentru poziționarea nodurilor: sus, jos, stânga, dreapta ​şi centru, acestea putând avea orice dimensiune.
  
 <note tip>În situația în care aplicația JavaFX nu are nevoie de o anumită regiune, aceasta nu va fi definită, nefiind alocat spațiu pentru ea.</​note>​ <note tip>În situația în care aplicația JavaFX nu are nevoie de o anumită regiune, aceasta nu va fi definită, nefiind alocat spațiu pentru ea.</​note>​
Line 2215: Line 2224:
 ===== Soluții ===== ===== Soluții =====
  
-disponibile pe 3 noiembrie 2014+[[https://​github.com/​aipi2014/​Laborator03/​tree/​master/​Eclipse/​|Proiect Eclipse]]\\ 
 +[[https://​github.com/​aipi2014/​Laborator03/​tree/​master/​NetBeans/​|Proiect NetBeans]]
laboratoare/laborator03.1414625176.txt.gz · Last modified: 2014/10/30 01:26 by Andrei Roșu-Cojocaru
CC Attribution-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0