Programmazione Java: Interfacce grafiche (GUI)



Documenti analoghi
Le basi della grafica in Java. Prof. Francesco Accarino IIS Altiero Spinelli via Leopardi 132 Sesto san Giovanni

L interfaccia grafica in Java

Alessandro De Luca. Lezione, 13 maggio 2015

Corso Eclipse. Prerequisiti. 3 Window Builder

Classi astratte. Master in Web Technology e Security luglio - settembre Interfacce

INTERFACCE GRAFICHE IN JAVA CON SWING DISPENSE

L interfaccia grafica con Java

23 - Graphical User Interface GUI (Cenni)

I Canvas. import java.awt.*; import javax.swing.*; public class Graf{ public Graf () { JFrame f = new JFrame("Finestra"); // crea frame invisibile

PROVA FINALE Ingegneria del software

Autore: Prof. Agostino Sorbara ITIS "M. M. Milano" Polistena (RC)

Interfacce grafiche. Una GUI (Graphic User Interface) contiene vari componenti: bottoni, etichette, immagini...

I Layout Manager di java. Prof. Francesco Accarino IIS Altiero Spinelli via Leopardi 132 Sesto san Giovanni

BorderLayout. 1 Gestori di Layout (guida visuale)

Swing. Swing 1. Java e la grafica Java permette di realizzare agevolmente applicazioni grafiche Package java.awt

Programmazione in rete e laboratorio

Introduzione al package grafico Swing

Sviluppo di Interfacce Grafiche in Java

Java Applet. Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A

Tutorial SWING-AWT: Il Layout Manager GridBagLayout Di Michele de Nittis

Grafico della parabola

Eventi di azione. // con interfaccia per eventi di azione

Corso sul linguaggio Java

APPLICAZIONI & APPLET

Programmazione in Java e gestione della grafica. Lezione 19

Programmazione Orientata agli Oggetti in Linguaggio Java

15 - Packages. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

TECNOLOGIE APPLICAZIONI WEB Linguaggio Java: Le Applet

Microsoft Word. Nozioni di base

Strumenti per la programmazione

Università degli Studi di Napoli Parthenope Facoltà di Scienze e Tecnologie Corso di Laurea in Informatica Generale

14 - Packages. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

maggio 2004 Stefano Sanna - gerda@crs4.it

Raffaella Brighi, a.a. 2005/06. Eventi e listener. Corso di Laboratorio II. A.A

La nostra finestra dovrebbe essere come mostra la figura: Diamo innanzitutto un occhiata alle componenti principali di input/output:

L Abstract Windowing Toolkit. Le GUI in Java. Il Frame. Cenni sull ereditarietà. Gianpaolo Cugola - Sistemi Informativi in Rete

Esercitazione del Corso di Informatica Grafica. Strumenti per scrivere applicazioni in JAVA

Interazioni col mondo: eventi

Riassunto. GUI in Java con l AWT 1. Cos è una GUI. Oggi: GUI in Java, l AWT. GUI in Java. Un esempio. Stefano Mizzaro 1

Tale attività non è descritta in questa dispensa

Programmazione ad Oggetti. JFrame è la classe di base per le finestre Fornisce tutte le caratteristiche di una finestra vuota

Main System Monitor Keyboard

Introduzione a Word. Prima di iniziare. Competenze che saranno acquisite. Requisiti. Tempo stimato per il completamento:

Gestione di eventi ed interfacce utente grafiche

Alcuni Design Pattern in Java

Progettazione e Sviluppo di Interfacce Grafiche con Java Swing

METODI per effettuare previsioni con analisi di tipo WHAT-IF

per immagini guida avanzata Stampare i fogli di lavoro di Excel Geometra Luigi Amato Guida Avanzata per immagini excel

Esercitazioni di PROGETTAZIONE DEL SOFTWARE A.A

Siti web centrati sui dati Architettura MVC-2: i JavaBeans

GUI e java swing. Elmenti della GUI. Eventi e listener contenitori componenti layout manager. caratteristiche speciali

Introduzione (Swing vs AWT)

SMS Pannello controllo Web. Il Manuale

Bookenberg non è un softwere ma una piattaforma online, quindi:

Excel avanzato. I nomi. Gli indirizzi e le formule possono essere sostituiti da nomi. Si creano tramite Inserisci Nome Definisci

manuale utente per Viabizzuno online

Riassunto. GUI in Java con l AWT 1. Oggi: GUI in Java, l AWT. Oggi. GUI in Java. Cos è una GUI. Stefano Mizzaro 1

appunti delle lezioni Architetture client/server: applicazioni client

Database Manager Guida utente DMAN-IT-01/09/10

Applets. Java. Restrizioni delle applets. Restrizioni delle applets

Marco Faella Il paradigma Model-View-Controller. Il pattern Strategy.

Configuration Managment Configurare EC2 su AWS. Tutorial. Configuration Managment. Configurare il servizio EC2 su AWS. Pagina 1

per immagini guida avanzata Organizzazione e controllo dei dati Geometra Luigi Amato Guida Avanzata per immagini excel

ITIS Mattei Sondrio. Appunti veloci su moodle versione 2.7

I DATABASE Database relazionale

Come costruire una presentazione. PowerPoint 1. ! PowerPoint permette la realizzazione di presentazioni video ipertestuali, animate e multimediali

Utilizzare il NetBeans GUI Builder. Dott. Ing. M. Banci, PhD

L applicazione di MVC alla simulazione di ascensore I COMPONENTI DELLE INTERFACCE UTENTE GRAFICHE: PARTE II 1

!"#$%&&'()#*%+%+!"#$"',,'()#*%+ -")%*&'&'+'$.)+-$$%&&) !"#$%&&'(%)'*+%",#-%"#.'%&'#/0)-+#12"+3,)4+56#7+#.')8'9

IMPOSTARE UNA MASCHERA CHE SI APRE AUTOMATICAMENTE

Relazioni tra tabelle

E possibile modificare la lingua dei testi dell interfaccia utente, se in inglese o in italiano, dal menu [Tools

5.6.1 REPORT, ESPORTAZIONE DI DATI

Che cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo

Java: Compilatore e Interprete

Introduzione alla programmazione Java. Dott. Ing. M. Banci, PhD

appunti delle lezioni Architetture client/server: applicazioni server

Creare diagrammi di Gantt con Visio 2003

Architettura MVC-2: i JavaBeans

COGNOME.NOME. Matricola

Thread e Concorrenza in Java Swing

INTERFACCE GRAFICHE IN JAVA CON SWING DISPENSE

5.3 TABELLE RECORD Inserire, eliminare record in una tabella Aggiungere record Eliminare record

Transcript:

Programmazione Java: Interfacce grafiche (GUI) romina.eramo@univaq.it http://www.di.univaq.it/romina.eramo/tlp

( 1 ) (GUI) Interfacce grafiche Rendere facili le cose semplici e possibili le cose difficili Obiettivo: consentire al programmatore di costruire un interfaccia adatta per tutte le piattaforme» Libreria GUI (graphical User Interface) di Java 1.0 non raggiunge l obiettivo» Libreria AWT di Java 1.0 caratterizzata da notevoli limiti» Libreria Swing di Java 1.2 fornisce un approccio più chiaro e orientato agli oggetti

Swing Approccio orientato ad oggetti» modello di programmazione a componenti che consente la facile creazione di ambienti di sviluppo visuali Fornisce un ricco insieme di oggetti JavaBean» facili da utilizzare e comprendere» possono essere trascinati, incollati, ma anche programmati manualmente, per creare GUI apprezzabili

Swing: risorse Libri Thinking in Java 4 ed. Volume 3 Concorrenza e interfacce grafiche Autore: Bruce Eckel Casa Editrice: Pearson ISBN: 8871923057 Java Tutorial Swing Trial» http://docs.oracle.com/javase/tutorial/uiswing/index.html Swing Documentation» http://docs.oracle.com/javase/7/docs/technotes/guides/swing/

Nozioni di base su Swing (1) JFrame: modulo (form) che crea una finestra in modo indipendente dal sistema operativo import javax.swing.*;! public class HelloSwing {! }! public static void main(string[] args) {! }! JFrame frame = new JFrame("Hello Swing");! frame.setdefaultcloseoperation(jframe.exit_on_close);! frame.setsize(300, 100);! frame.setvisible(true);! Rende la finestra visibile Indica come chiudere la finestra (pulsante o tastiera) Indica di chiudere definitivamente il programma

Nozioni di base su Swing (2) JLabel: definisce un area per testo e/o immagini import javax.swing.*;! import java.util.concurrent.*;! public class HelloLabel {! public static void main(string[] args) throws Exception {! JFrame frame = new JFrame("Hello Swing");! JLabel label = new JLabel("A Label");! frame.add(label);! frame.setdefaultcloseoperation(jframe.exit_on_close);! frame.setsize(300, 100);! frame.setvisible(true);! TimeUnit.SECONDS.sleep(1);! label.settext("hey! This is Different!");! }! }! (Vedere HelloLabel.java, SubmitLabelManipulationTask.java, SubmitSwingProgram.java)

Nozioni di base su Swing (3) JButton: implementazione di un pulsante import javax.swing.*;! import java.awt.*;! import static net.mindview.util.swingconsole.*;!! public class Button1 extends JFrame {! private JButton! }! b1 = new JButton("Button 1"),! b2 = new JButton("Button 2");! public Button1() {! setlayout(new FlowLayout());! add(b1);! add(b2);! }! public static void main(string[] args) {! run(new Button1(), 200, 100);! }! Prima che un elemento sia disposto sul JFrame viene assegnato un gestore di layout di tipo FlowLayout (Vedere Button1.java, Button2.java)

Nozioni di base su Swing (4) JTextField: implementa una singola riga di testo Le modifiche possono essere DocumentListener mylistener =??;! monitorate aggiungendo JTextField myarea =??;! TextListener per TextEvents. myarea.getdocument().adddocumentlistener(mylistener);! JTextArea: implementa un area di testo multi-linea DocumentListener mylistener =??;! JTextArea myarea =??;! myarea.getdocument().adddocumentlistener(mylistener);! In JTextComponent, le modifiche sono trasmesse dal modello tramite un DocumentEvent verso un DocumentListeners. Il DocumentEvent fornisce la posizione della modifica e il tipo di cambiamento se desiderato. (Vedere Button2.java, TextArea.java)

Nozioni di base su Swing (5) La disposizione dei componenti è controllata mediante layout manager che decidono come devono essere visualizzati i componenti in base all ordine in cui sono stati aggiunti - add()! JApplet, JFrame, JWindws, JDialog, JPanel ecc. possono contenere e visualizzare oggetti Component. In Container è presente un metodo setlayout() che consente di scegliere un layout manager:» BorderLayout!» FlowLayout!» GridLayout!» GridBagLayout!» BoxLayout!»... (Vedere BorderLayout1.java, FlowLayout1.java, GridLayout1.java)

Modello a eventi di Swing (1) Un componente può attivare un evento (rappresentato da una classe separata) L evento è ricevuto da uno o più listener che agiscono su di esso (rappresentato da una classe che implementa un tipo di interfaccia listener) Creare un oggetto listener e registrarlo con il componente che sta attivando l evento add<tipoevento>listener();! (Vedere ShowAddListeners.java)

Tipi di eventi e di listener (1) Tutti i componenti Swing includono metodi addxxxlister() e removexxxlistener()

Tipi di eventi e di listener (2) Tutti i componenti Swing includono metodi addxxxlister() e removexxxlistener()

Componenti Swing

Swing API reference http://docs.oracle.com/javase/6/docs/technotes/guides/swing/reference.html