Alessandro De Luca. Lezione, 13 maggio 2015

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Alessandro De Luca. Lezione, 13 maggio 2015"

Transcript

1 Basi Basi di di dati dati ee sistemi sistemi informativi informativi II mod.laboratorio mod.laboratorio Alessandro De Luca Università degli Studi di Napoli Federico II Lezione,

2 Introduzione a Java Swing Usata per creare GUI Include un gran numero di componenti Permette di includere funzionalità grafiche Parte delle Java Foundation Classes Indipendente dalla piattaforma, look&feel personalizzabile 2 / 45

3 Contenitore: JFrame North Layout: BorderLayout Center Componenti: JLabel JButton, contenente una ImageIcon 3 / 45

4 Per costruire una GUI Importare i package Creare un contenitore toplevel (es. JFrame) Applicare un layout (es. BorderLayout) Aggiungere componenti (es. JButton, JLabel) 4 / 45

5 Componenti Swing Contenitori top-level Contenitori general-purpose Contenitori special-purpose Controlli di base Display non interattivi Display interattivi 5 / 45

6 Contenitori top-level Componenti al livello superiore di ogni gerarchia di componenti JDialog JFrame JApplet 6 / 45

7 Importanza Ogni programma ha almeno un contenitore top-level Di norma un'applicazione GUI ha almeno un frame al top della gerarchia. Es. applicazione con una finestra principale e due di dialogo 7 / 45

8 Contenitori general-purpose Contenitori intermedi che possono essere usati in varie circostanze Usati per raggruppare controlli di base Aggiunti ai contenitori top-level Scroll pane Toolbar Panel 8 / 45

9 Controlli di base Sono la parte attiva della GUI I controlli sono la sorgente degli eventi Gli oggetti sono legati ai controlli per gestire gli eventi Buttons Slider Menu 9 / 45

10 Display non interattivi Non modificabili dall'utente Tooltip Label 10 / 45

11 Display interattivi Forniscono interfacce standard per task comuni (es. Inserire testo: TextField) 11 / 45

12 Come si lega tutto insieme Esistono 5 diversi layout manager BorderLayout BoxLayout FlowLayout GridBagLayout GridLayout 12 / 45

13 Esempio di componente: JButton Alcuni costruttori: JButton() Crea un pulsante senza testo né icone JButton(String text) Crea un pulsante con testo JButton(String text, Icon icon) Crea un pulsante con testo e icona 13 / 45

14 JButton (cont.) Alcuni metodi: addactionlistener Registra un (ActionListener a) ActionListener al JButton setfont(font font) Specifica i font setbackground (Color color) Specifica il colore di sfondo 14 / 45

15 Esempio: Hello world Importa i package import javax.swing.*; Spesso i programmi swing importano anche import java.awt.*; (AWT è un'altra JFC, meno recente) E per gestire gli eventi import java.awt.event.*; 15 / 45

16 Alcune istruzioni Sceglie la decorazione della finestra JFrame.setDefaultLookAndFeelDecorated (true) Crea il frame e lo mostra su schermo JFrame frame = new JFrame("HelloWorldSwing"); //... frame.pack(); frame.setvisible(true); 16 / 45

17 Alcune istruzioni (cont.) Inserisce il label nel frame (scritta «Hello world») JLabel label = new JLabel("Hello World"); frame.getcontentpane().add(label); 17 / 45

18 Content Pane La label è aggiunta al content pane Ogni Contenitore top-level ha un content pane Contiene tutte le componenti visibili Non contiene menu e decorazioni 18 / 45

19 Altre istruzioni Per uscire cliccare sulla X della finestra frame.setdefaultcloseoperation (JFrame.EXIT_ON_CLOSE); Parte finale: fare partire il thread javax.swing.swingutilities.invokelater( new Runnable() { public void run() { /* create and show the GUI */ } }); 19 / 45

20 Codice (1/2) import javax.swing.*; public class HelloWorldSwing { private static void createandshowgui() { JFrame.setDefaultLookAndFeelDecorated(true); JFrame frame = new Jframe("Hello World: Swing"); frame.setdefaultcloseoperation(jframe.exit_on_close); JLabel label = new JLabel("Hello World"); frame.getcontentpane().add(label); frame.pack(); frame.setvisible(true); } 20 / 45

21 Codice (2/2) } public static void main(string[] args) { javax.swing.swingutilities.invokelater( new Runnable() { public void run() { createandshowgui(); } } ); } 21 / 45

22 Thread Tre tipi di thread Iniziale Event dispatch thread Worker (o backgorund) thread 22 / 45

23 Initial thread Il thread che fa partire l'applicazione iniziale Crea un oggetto Runnable che inizializza la GUI Passa l'oggetto all'event dispatch thread Creata la GUI l'applicazione è event driven 23 / 45

24 Per iniziare Due metodi per creare la GUI SwingUtilities.invokeLater (schedula il task ed esce) SwingUtilities.invokeAndWait (schedula il task ed attende la fine) 24 / 45

25 Event dispatch thread Il codice che gestisce gli eventi gira su questo thread Anche molti metodi Swing girano su questo thread Necessario perché Questi metodi non sono «thread safe» invocati su thread multipli possono creare Errori di coerenza della memoria Interferenza tra thread 25 / 45

26 Worker threads Usati per task lunghi Es. Caricare dei file per un'animazione 26 / 45

27 Altro programma di esempio Aggiornare un'etichetta ogni volta che l'utente schiaccia il pulsante 27 / 45

28 Istruzioni, 1 Creare il JButton JButton button = new JButton("I'm a" + " Swing button!"); Creare uno shortcut da tastiera button.setmnemonic('i'); Dichiarare variabili per la JLabel private static String labelprefix = "Numero di clic: "; private int numclicks = 0; 28 / 45

29 Istruzioni, 2 Istanziare la label JLabel label = new JLabel(labelPrefix + '0'); Aggiornare la label label.settext(labelprefix + numclicks); Pulsante ed etichetta vanno inseriti in un contenitore 29 / 45

30 Istruzioni, 3 Creare il contenitore (JPanel) e assegnargli un layout JPanel panel = new JPanel(new GridLayout(0,1)); Aggiungere le componenti panel.add(button); panel.add(label); Assegnare un bordo panel.setborder( BorderFactory.createEmptyBorder(... )); 30 / 45

31 Eventi Eventi avvengono quando si Preme un tasto Muove/clicca il mouse ecc Per ricevere la notifica un oggetto deve registrarsi ad un event listener Bisogna implementare un'interfaccia Ci sono delle linee di codice necessarie 31 / 45

32 Definire i listener Specificare che la classe di gestione degli eventi implementa un listener public class MyClass implements ActionListener Registrare un o piú componenti dell'oggetto al listener somecomponent.addactionlistener (istanzamyclass); 32 / 45

33 Definire i listener (cont.) Implementare l'interfaccia al listener public void actionperformed(actionevent e) { } //reazione all'evento / 45

34 Applicazione al nostro esempio public class SwingApplication implements ActionListener { //... JButton button = new JButton("I'm a Swing button!"); button.addactionlistener(this); //... public void actionperformed(actionevent e) { numclicks++; label.settext(labelprefix + numclicks); } } 34 / 45

35 Tipi di eventi e di listener Esistono vari listener ActionListener (click su un pulsante,...) WindowListener (chiudere una finestra) MouseListener (pressione pulsante mouse) PropertyChangeListener (cambiamento in una componente, es. Testo in una label) 35 / 45

36 Codice (1/4) import javax.swing.*; import java.awt.*; import java.awt.event.*; public class SwingApplication implements ActionListener { private static String labelprefix = "Numero di clic: "; private int numclicks = 0; final JLabel label = new JLabel(labelPrefix + "0 "); 36 / 45

37 Codice (2/4) public Component createcomponents() { JButton button = new JButton("I'm a Swing button!"); button.setmnemonic(keyevent.vk_i); button.addactionlistener(this); label.setlabelfor(button); JPanel pane = new JPanel(new GridLayout(0, 1)); pane.add(button); pane.add(label); pane.setborder(borderfactory.createemptyborder(30, 30,10,30)); //top,left,bottom,right return pane; } 37 / 45

38 Codice (3/4) /** * Crea e mostra la GUI. Invocare dall'event-dispatching thread. */ private static void createandshowgui() { JFrame.setDefaultLookAndFeelDecorated(true); //imposta L&F JFrame frame = new Jframe("SwingApplication"); //Crea finestra frame.setdefaultcloseoperation(jframe.exit_on_close); SwingApplication app = new SwingApplication(); Component contents = app.createcomponents(); frame.getcontentpane().add(contents, BorderLayout.CENTER); frame.pack(); frame.setvisible(true); //Mostra la finestra. } 38 / 45

39 Codice (4/4) // Evento click sul pulsante public void actionperformed(actionevent e) { numclicks++; label.settext(labelprefix + numclicks); } public static void main(string[] args) { //Job schedule per l'event-dispatching thread: GUI javax.swing.swingutilities.invokelater(new Runnable() { public void run() { createandshowgui(); } }); } } 39 / 45

40 Design Swing tramite NetBeans Permette di risparmiarsi molte righe di codice e di concentrarsi quasi esclusivamente sulla gestione degli eventi. Si inizia aggiungendo un contenitore top-level al progetto, ad es 40 / 45

41 Nuovo JFrame 41 / 45

42 Disegno della GUI Una volta creato il contenitore, la scheda Design permette di aggiungere controlli trascinandoli dalla Palette La scheda Navigator mostra la gerarchia delle componenti, consentendo di rinominarle La scheda Properties mostra i campi del controllo selezionato e permette di modificarli ove possibile. Molti hanno metodi get e set 42 / 45

43 Aggiunta di listener È possibile registrare listener ai controlli, ad es. dal menu contestuale NetBeans poi mostra il nuovo metodo in cui va scritta la reazione all'evento Per esempio, per gestire i clic su un pulsante 43 / 45

44 ActionListener 44 / 45

45 Soluzione esercizi Vedere file TestPiloti.zip. 45 / 45

Programmazione Java: Interfacce grafiche (GUI)

Programmazione Java: Interfacce grafiche (GUI) 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

Dettagli

L interfaccia grafica in Java

L interfaccia grafica in Java L interfaccia grafica in Java Java possiede due package per la creazione di interfacce grafiche java.awt javax.swing AWT (Abstract Widget Toolkit) presente già in Java 1.0, migliorato in Java 1.1. Invariato

Dettagli

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

Le basi della grafica in Java. Prof. Francesco Accarino IIS Altiero Spinelli via Leopardi 132 Sesto san Giovanni Le basi della grafica in Java Prof. Francesco Accarino IIS Altiero Spinelli via Leopardi 132 Sesto san Giovanni Elaborazione classica o imperativa L elaborazione è concentrata nel momento centrale, durante

Dettagli

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

Autore: Prof. Agostino Sorbara ITIS M. M. Milano Polistena (RC) In questa lezione introduciamo alcuni strumenti che Java rende disponibili per la creazione di interfacce utente a manipolazione diretta, dette anche WYSISYG (what you see is what you get), con un elevato

Dettagli

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

Classi astratte. Master in Web Technology e Security luglio - settembre 2000. Interfacce Master in Web Technology e Security luglio - settembre 2000 JAVA Alberto Martelli Parte III Programmazione grafica Classi astratte Vogliamo implementare un algoritmo di ordinamento di un array che sia

Dettagli

PROVA FINALE Ingegneria del software

PROVA FINALE Ingegneria del software PROVA FINALE Ingegneria del software Ing. Jody Marca jody.marca@polimi.it Laboratorio N 3 Cosa faremo oggi 2 Interfaccia grafica e SWING Lettura e scrittura di Files di properties Internazionalizzazione

Dettagli

L interfaccia grafica con Java

L interfaccia grafica con Java L interfaccia grafica con Java 1/24 L interfaccia utente serve per la comunicazione tra utente e programma Distinguiamo le interfacce tra quelle a caratteri e quelle grafiche Le GUI (Graphical user interface)

Dettagli

INTERFACCE GRAFICHE IN JAVA CON SWING DISPENSE

INTERFACCE GRAFICHE IN JAVA CON SWING DISPENSE INTERFACCE GRAFICHE IN JAVA CON SWING DISPENSE La Gestione degli Eventi Ogni oggetto grafico è predisposto ad essere sollecitato in qualche modo dall utente (per esempio un pulsante può essere premuto).

Dettagli

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

Eventi di azione. // con interfaccia per eventi di azione Eventi di azione (Interfaces ActionListener, Classes ActionEvent) Sono generati quando si premono bottoni, si selezionano voci di menù, si preme invio mentre si scrive in un campo di testo. In awt sono

Dettagli

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

Java Applet. Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2009-2010 Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2009-2010 Alessandro Longheu http://www.diit.unict.it/users/alongheu alessandro.longheu@diit.unict.it Java Applet 1 Application VS Applet Una

Dettagli

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

I Canvas. import java.awt.*; import javax.swing.*; public class Graf{ public Graf () { JFrame f = new JFrame(Finestra); // crea frame invisibile I Canvas Tra i vari contenitori Java il Canvas (area di disegno o tela) è una semplice superficie di disegno particolarmente utile per visualizzare immagini o per effettuare altre operazioni grafiche.

Dettagli

Interazioni col mondo: eventi

Interazioni col mondo: eventi Interazioni col mondo: eventi Le interazioni di una GUI con il mondo esterno sono segnalate tramite eventi: click del mouse, inserimento di testo, selezione/attivazione... Gli eventi che memorizzano queste

Dettagli

Corso sul linguaggio Java

Corso sul linguaggio Java Corso sul linguaggio Java Modulo JAVA5 B1 Gestione eventi 1 1 Prerequisiti Programmazione base in Java Utilizzo di classi e oggetti AWT o Swing Programmazione ad eventi 2 1 Introduzione Le interfacce create

Dettagli

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

Interfacce grafiche. Una GUI (Graphic User Interface) contiene vari componenti: bottoni, etichette, immagini... Interfacce grafiche Una GUI (Graphic User Interface) contiene vari componenti: bottoni, etichette, immagini... Alcuni componenti ne contengono altri (ad esempio le finestre), e sono detti contenitori.

Dettagli

Programmazione in rete e laboratorio

Programmazione in rete e laboratorio Programmazione in rete e laboratorio JAVA Alberto Martelli PROGRAMMAZIONE GRAFICA Molti programmi interagiscono con l utente attraverso una interfaccia grafica GUI - Graphical User Interface Java fornisce

Dettagli

Introduzione al package grafico Swing

Introduzione al package grafico Swing Introduzione al package grafico Swing Architettura di javax.swing Java supporta direttamente nella propria architettura il concetto di applicazione grafica, tramite il package javax.swing, in cui i componenti

Dettagli

Lezione n.12 LPR Informatica Applicata GUI programming

Lezione n.12 LPR Informatica Applicata GUI programming Università degli Studi di Pisa Lezione n.12 LPR Informatica Applicata GUI programming 19/05/2008 Laura Ricci UNA SEMPLICE INTERFACCIA PER INSTANT MESSAGING JAVA GUI: COMPONENTI BASE import java.awt.*;

Dettagli

Corso Eclipse. Prerequisiti. 3 Window Builder

Corso Eclipse. Prerequisiti. 3 Window Builder Corso Eclipse 3 Window Builder 1 Prerequisiti Conoscenza elementare ambiente Eclipse Conoscere la nomenclatura dei componenti delle interfacce grafiche Conoscere attributi e metodi dei principali componenti

Dettagli

Gestione degli eventi in Java

Gestione degli eventi in Java Gestione degli eventi in Java package java.awt.event.* Il modello degli eventi I componenti dell awt generano eventi in seguito alle azioni dell utente movimento del mouse click pressione di un tasto etc.

Dettagli

Sviluppo di Interfacce Grafiche in Java

Sviluppo di Interfacce Grafiche in Java Sviluppo di Interfacce Grafiche in Java Massimiliano de Leoni (con la supervisione del docente Massimo Mecella) Università di Roma La Sapienza - Sede di Latina Corso di Progettazione del Software A.A.

Dettagli

Programmazione in Java e gestione della grafica. Lezione 19

Programmazione in Java e gestione della grafica. Lezione 19 Programmazione in Java e gestione della grafica Lezione 19 2 Parliamo di Componenti della GUI (Graphics User Interface) OBIETTIVI 3 Imparare i principi su cui sono basate le GUI Costruire dellegui e gestire

Dettagli

Gestione di eventi ed interfacce utente grafiche

Gestione di eventi ed interfacce utente grafiche Gestione di eventi ed interfacce utente grafiche Eventi Ogni volta che l utente esegue un azione un clic del mouse la pressione di un tasto sulla tastiera la modifica di una finestra la selezione di un

Dettagli

Grafico della parabola

Grafico della parabola Grafico della parabola Il grafico matematico è un disegno che mostra l andamento di una funzione f(x) al variare della variabile x. Per tracciare un grafico sul video del computer, si deve scegliere un

Dettagli

Paradigmi di programmazione (sperimentazioni)

Paradigmi di programmazione (sperimentazioni) Paradigmi di programmazione (sperimentazioni) 2000-01 JAVA Alberto Martelli Programmazione grafica PROGRAMMAZIONE GRAFICA Molti programmi interagiscono con l utente attraverso una interfaccia grafica GUI

Dettagli

Introduzione (Swing vs AWT)

Introduzione (Swing vs AWT) Swing Introduzione (Swing vs AWT) Swing Swing sono delle librerie introdotte a partire dalla versione 1.2 del JDK come evoluzione concettuale delle librerie precedenti (Abstract Window Toolkit (AWT)) AWT

Dettagli

APPLICAZIONI & APPLET

APPLICAZIONI & APPLET APPLICAZIONI & APPLET Java è un ottimo linguaggio per costruire applicazioni anche non per Internet anche non grafiche ma si è diffuso storicamente, e trae forza, dal concetto di applet come piccola (?)

Dettagli

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

Raffaella Brighi, a.a. 2005/06. Eventi e listener. Corso di Laboratorio II. A.A. 2005-06 Raffaella Brighi, a.a. 2005/06 Eventi e listener Corso di Laboratorio II. A.A. 2005-06 Eventi e listener Un evento è un oggetto che rappresenta il verificarsi di un azione dell utente o del sistema(es

Dettagli

Programmazione in rete e laboratorio

Programmazione in rete e laboratorio Programmazione in rete e laboratorio 2001-02 JAVA Alberto Martelli PROGRAMMAZIONE GRAFICA Molti programmi interagiscono con l utente attraverso una interfaccia grafica GUI - Graphical User Interface Java

Dettagli

Multithreading in Java. Fondamenti di Sistemi Informativi 2014-2015

Multithreading in Java. Fondamenti di Sistemi Informativi 2014-2015 Multithreading in Java Fondamenti di Sistemi Informativi 2014-2015 Multithreading La programmazione concorrente consente di eseguire più processi o thread nello stesso momento. Nel secondo caso si parla

Dettagli

TECNOLOGIE APPLICAZIONI WEB Linguaggio Java: Le Applet

TECNOLOGIE APPLICAZIONI WEB Linguaggio Java: Le Applet Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria Reggio Emilia CORSO DI TECNOLOGIE APPLICAZIONI WEB Linguaggio Java: Le Applet Prof. Franco Zambonelli Lucidi realizzati in collaborazione

Dettagli

La prima applicazione Java con NetBeans IDE. Dott. Ing. M. Banci, PhD

La prima applicazione Java con NetBeans IDE. Dott. Ing. M. Banci, PhD La prima applicazione Java con NetBeans IDE Dott. Ing. M. Banci, PhD Creare la prima applicazione 1. Creare un progetto: Quando si crea un progetto IDE occorre creare un ambiente nel quale costruire e

Dettagli

Esercitazioni di PROGETTAZIONE DEL SOFTWARE A.A. 2011-2012

Esercitazioni di PROGETTAZIONE DEL SOFTWARE A.A. 2011-2012 Sapienza Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica Corso di Laurea in Ingegneria Informatica ed Automatica Corso di Laurea in Ingegneria dei Sistemi Informatici

Dettagli

maggio 2004 Stefano Sanna - gerda@crs4.it

maggio 2004 Stefano Sanna - gerda@crs4.it java.awt awt.* Abstract Window Toolkit maggio 2004 Agenda Java e interfacce grafiche Caratteristiche di AWT Design e implementazione di interfacce grafiche Panoramica dei componenti disponibili Primitive

Dettagli

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

Esercitazione del Corso di Informatica Grafica. Strumenti per scrivere applicazioni in JAVA Esercitazione del Corso di Informatica Grafica Strumenti per scrivere applicazioni in JAVA Perché Java Indipendenza dalla piattaforma Un applicazione scritta in Java può essere facilmente spostato da un

Dettagli

BorderLayout. 1 Gestori di Layout http://java.sun.com/docs/books/tutorial/uiswing/layout/visual.html (guida visuale)

BorderLayout. 1 Gestori di Layout http://java.sun.com/docs/books/tutorial/uiswing/layout/visual.html (guida visuale) Posizionamento diretto di un elemento GUI o tramite gestori di layout Nel posizionamento diretto (dipendente dalle impostazioni grafiche del sistema) non abbiamo bisogno di un gestore di layout (layout

Dettagli

Tipi primitivi. Ad esempio, il codice seguente dichiara una variabile di tipo intero, le assegna il valore 5 e stampa a schermo il suo contenuto:

Tipi primitivi. Ad esempio, il codice seguente dichiara una variabile di tipo intero, le assegna il valore 5 e stampa a schermo il suo contenuto: Tipi primitivi Il linguaggio Java offre alcuni tipi di dato primitivi Una variabile di tipo primitivo può essere utilizzata direttamente. Non è un riferimento e non ha senso tentare di istanziarla mediante

Dettagli

Thread e Concorrenza in Java Swing

Thread e Concorrenza in Java Swing Thread e Concorrenza in Java Swing Esercitazioni di Progettazione del Software A.A. 2013 2014 Alessandro Russo Sapienza Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica

Dettagli

Guida di Keyboard Builder. 2009 Sielco Sistemi Srl

Guida di Keyboard Builder. 2009 Sielco Sistemi Srl Guida di Keyboard Builder Guida di Keyboard Builder Keyboard Builder è uno strumento che permette di costruire tastiere da visualizzare sullo schermo, utili per la realizzazione di applicazioni che operano

Dettagli

Android. Implementare una interfaccia utente

Android. Implementare una interfaccia utente Android Implementare una interfaccia utente Introduzione In questa lezione vedremo come implementare una interfaccia utente sullo schermo di Android. Vedremo gli elementi di base visualizzabili sullo schermo

Dettagli

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

L applicazione di MVC alla simulazione di ascensore I COMPONENTI DELLE INTERFACCE UTENTE GRAFICHE: PARTE II 1 I COMPONENTI DELLE INTERFACCE UTENTE GRAFICHE: PARTE II 1 3.13 (Caso di studio facoltativo) Pensare a oggetti: Modello-Vista-Controllore I design pattern descrivono strategie efficaci per costruire sistemi

Dettagli

Progettazione e Sviluppo di Interfacce Grafiche con Java Swing

Progettazione e Sviluppo di Interfacce Grafiche con Java Swing Progettazione e Sviluppo di Interfacce Grafiche con Java Swing Esercitazioni di Progettazione del Software A.A. 2012 2013 Alessandro Russo e Massimo Mecella Sapienza Università di Roma Facoltà di Ingegneria

Dettagli

La prima applicazione Java. Creazione di oggetti - 1. La prima applicazione Java: schema di esecuzione. Gianpaolo Cugola - Sistemi Informativi in Rete

La prima applicazione Java. Creazione di oggetti - 1. La prima applicazione Java: schema di esecuzione. Gianpaolo Cugola - Sistemi Informativi in Rete La prima applicazione Java Programma MyFirstApplication Il programma visualizza una finestra vuota sullo schermo. Importo il package delle classi usate nel seguito. Dichiaro la classe MyFirstApplication

Dettagli

Software standard Alpi Label Ver. 2.2.0.0

Software standard Alpi Label Ver. 2.2.0.0 Pag. 1 di 16 Manuale utente Software standard Alpi Label Ver. 2.2.0.0 Pag. 2 di 16 1 SOMMARIO Sommario 1 Sommario... 2 2 Specifiche Tecniche... 3 3 Maschera Principale... 4 4 Funzioni menù... 7 Pag. 3

Dettagli

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

Swing. Swing 1. Java e la grafica Java permette di realizzare agevolmente applicazioni grafiche Package java.awt Swing Swing 1 Java e la grafica Java permette di realizzare agevolmente applicazioni grafiche Package java.awt il primo package grafico (Java 1.0) indipendente dalla piattaforma... o quasi! Package javax.swing

Dettagli

GESTIONE DEI PROCESSI

GESTIONE DEI PROCESSI Sistemi Operativi GESTIONE DEI PROCESSI Processi Concetto di Processo Scheduling di Processi Operazioni su Processi Processi Cooperanti Concetto di Thread Modelli Multithread I thread in Java Concetto

Dettagli

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

15 - Packages. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo 15 - Packages Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di

Dettagli

Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Ingegneria del software A

Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Ingegneria del software A Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Ingegneria del software A Interfacce grafiche (in Java) Michele Tomaiuolo Interfacce grafiche

Dettagli

Alcuni Design Pattern in Java

Alcuni Design Pattern in Java Marco Faella Alcuni Design Pattern in Java basato su Progettazione del Software e Design Pattern in Java, di Cay Horstmann Pattern ITERATOR Contesto: 1) Un oggetto (aggregato) contiene altri oggetti (elementi)

Dettagli

Swing e la programmazione a eventi

Swing e la programmazione a eventi Swing e la programmazione a eventi Lo stile basato su eventi I componenti interagiscono attraverso l invio di messaggi broadcast o multicast Attenzione! C è un incendio Si avvisano i signori passeggeri

Dettagli

23 - Graphical User Interface GUI (Cenni)

23 - Graphical User Interface GUI (Cenni) 23 - Graphical User Interface GUI (Cenni) Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo

Dettagli

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

I Layout Manager di java. Prof. Francesco Accarino IIS Altiero Spinelli via Leopardi 132 Sesto san Giovanni I Layout Manager di java Prof. Francesco Accarino IIS Altiero Spinelli via Leopardi 132 Sesto san Giovanni Creazione di interfacce complesse con i layout manager La posizione di un componente aggiunto

Dettagli

UN CLONE IN CLIKE C-LIKE DI SEGUIVISIONE

UN CLONE IN CLIKE C-LIKE DI SEGUIVISIONE IDROID 86 LAB pagg 12-13 23-04-2007 14:57 Pagina 12 I-D01 LAB UN CLONE IN CLIKE C-LIKE DI SEGUIVISIONE PROGRAMMAZIONE Alcuni comportamenti predefiniti attivabili su I-Droid01 sono facilmente riproducibili

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Grafica: Thread versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)

Dettagli

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

14 - Packages. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo 14 - Packages Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di

Dettagli

Corso Corso di di programmazione di di sistemi mobile 1 1. Android Laboratorio. Primo Progetto, Toast

Corso Corso di di programmazione di di sistemi mobile 1 1. Android Laboratorio. Primo Progetto, Toast Corso Corso di di programmazione di di sistemi mobile 1 1 Android Laboratorio Primo Progetto, Toast Corso Corso di di programmazione di di sistemi mobile 2 2 Android Studio Per realizzare le nostre applicazioni

Dettagli

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

Tutorial SWING-AWT: Il Layout Manager GridBagLayout Di Michele de Nittis Tutorial SWING-AWT: Il Layout Manager GridBagLayout Di Michele de Nittis Generalità... 2 Il principio di funzionamento... 2 Impiego degli oggetti di classe GridBagLayout e GridBagConstraints... 2 Posizionamento

Dettagli

Scope e visibilità per classi

Scope e visibilità per classi Scope e visibilità per classi Packages Classi interne nelle loro diverse forme Interne / statiche / locali Utilizzo congiunto con interfacce Implementazione di iteratori Gestione di eventi Packages Package:

Dettagli

Applicazioni grafiche e finestre

Applicazioni grafiche e finestre Applicazioni grafiche e finestre / SampleFrame.java package sampleswingjavaapp; import java.awt.flowlayout; import java.awt.event.actionevent; import java.awt.event.actionlistener; import javax.swing.jbutton;

Dettagli

Threads e Concorrenza in Java Swing

Threads e Concorrenza in Java Swing SAPIENZA Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica Corso di Laurea in Ingegneria Informatica ed Automatica Corso di Laurea in Ingegneria dei Sistemi Informatici

Dettagli

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

Università degli Studi di Napoli Parthenope Facoltà di Scienze e Tecnologie Corso di Laurea in Informatica Generale Università degli Studi di Napoli Parthenope Facoltà di Scienze e Tecnologie Corso di Laurea in Informatica Generale Progetto realizzato per l esame di Programmazione III e Laboratorio di Programmazione

Dettagli

Access. Microsoft Access. Aprire Access. Aprire Access. Aprire un database. Creare un nuovo database

Access. Microsoft Access. Aprire Access. Aprire Access. Aprire un database. Creare un nuovo database Microsoft Access Introduzione alle basi di dati Access E un programma di gestione di database (DBMS) Access offre: un supporto transazionale limitato Meccanismi di sicurezza, protezione di dati e gestione

Dettagli

CdL in Medicina Veterinaria - STPA AA 2007-08

CdL in Medicina Veterinaria - STPA AA 2007-08 CdL in Medicina Veterinaria - STPA AA 2007-08 Microsoft Windows Funzionalità di un S.O. Gestione dei file Gestione dei dispositivi di ingresso/uscita Comandi per l attivazione e la gestione di programmi

Dettagli

I DATABASE Database relazionale

I DATABASE Database relazionale Database relazionale Modello di database che consiste di diversi file separati che sono correlati l'un l'altro attraverso campi chiave. Si può accedere alle informazioni memorizzate in un file attraverso

Dettagli

Sommario. Capitolo 1 Componenti della GUI: prima parte 1. Capitolo 2 Grafica e Java 2D 79

Sommario. Capitolo 1 Componenti della GUI: prima parte 1. Capitolo 2 Grafica e Java 2D 79 Deitel_VolII_SOMMARIO.indd VII 25/06/2008 13.27.15 Prefazione Prima di cominciare XIII XXI Capitolo 1 Componenti della GUI: prima parte 1 1.1 Introduzione 1 1.2 Semplice Input/Output con JOptionPane 2

Dettagli

10.7 La classe BitSet... 555 Esercizi di autovalutazione... 558 Risposte agli esercizi di autovalutazione... 559 Esercizi 559

10.7 La classe BitSet... 555 Esercizi di autovalutazione... 558 Risposte agli esercizi di autovalutazione... 559 Esercizi 559 Sommario PREFAZIONE... XI Il nostro approccio didattico... xi Una panoramica del libro... xiv Ringraziamenti... xvii Gli autori... xix Deitel & Associates, Inc.... xx CAPITOLO 1 LA GRAFICA E JAVA2D...

Dettagli

interfacce ed eventi intercettare il mouse ed altri eventi

interfacce ed eventi intercettare il mouse ed altri eventi interfacce ed eventi intercettare il mouse ed altri eventi interfacce: premessa il termine "interfaccia" occorre in Java con due significati, collegati ma distinti 1. interface, parola chiave di Java e

Dettagli

Per effettuare la stampa di una cartella di lavoro si accede al comando. Stampa dal menu File o si utilizza il pulsante omonimo sulla barra

Per effettuare la stampa di una cartella di lavoro si accede al comando. Stampa dal menu File o si utilizza il pulsante omonimo sulla barra 4.5 Stampa 4.5.1 Stampare semplici fogli elettronici 4.5.1.1 Usare le opzioni di base della stampa Per effettuare la stampa di una cartella di lavoro si accede al comando Stampa dal menu File o si utilizza

Dettagli

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

GUI e java swing. Elmenti della GUI. Eventi e listener contenitori componenti layout manager. caratteristiche speciali GUI e java swing Raffaella Brighi, a.a. 2005/06 Corso di Laboratorio II. A.A. 2005-06 CdL Operatore Informatico Giuridico. Elmenti della GUI Eventi e listener contenitori componenti layout manager caratteristiche

Dettagli

Configurare TPTP in Eclipse e testare un applicazione

Configurare TPTP in Eclipse e testare un applicazione Configurare TPTP in Eclipse e testare un applicazione Questa guida concentra la sua attenzione sul tool TPTP (Test & Performance Tools Platform) presente nell ambiente di sviluppo Eclipse. Verrà descritta

Dettagli

Java Virtual Machine

Java Virtual Machine Java Virtual Machine programmi sorgente: files.java compilatore files.class bytecode linker/loader bytecode bytecode Java API files.class interprete macchina ospite Indipendenza di java dalla macchina

Dettagli

Tutorial sugli ambienti di sviluppo: Eclipse e NetBeans

Tutorial sugli ambienti di sviluppo: Eclipse e NetBeans Tutorial sugli ambienti di sviluppo: Eclipse e NetBeans Prima di tutto va installato il compilatore, ottenibile scaricando ed installando MinGW o CygWin. MinGW: http://www.mingw.org/download.shtml CygWin:

Dettagli

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

L Abstract Windowing Toolkit. Le GUI in Java. Il Frame. Cenni sull ereditarietà. Gianpaolo Cugola - Sistemi Informativi in Rete Le GUI in Java L Abstract Windowing Toolkit Fino ad ora abbiamo usato le classi del pacchetto JavaBook per realizzare semplici interfacce grafiche (GUI) Si tratta di classi facili da usare...... ma che

Dettagli

Cos è ACCESS? E un programma di gestione di database (DBMS) Access offre: un ambiente user frendly da usare (ambiente grafico)

Cos è ACCESS? E un programma di gestione di database (DBMS) Access offre: un ambiente user frendly da usare (ambiente grafico) Cos è ACCESS? E un programma di gestione di database (DBMS) Access offre: un ambiente user frendly da usare (ambiente grafico) 1 Aprire Access Appare una finestra di dialogo Microsoft Access 2 Aprire un

Dettagli

Tale attività non è descritta in questa dispensa

Tale attività non è descritta in questa dispensa Fondamenti di informatica Oggetti e Java ottobre 2014 1 Nota preliminare L installazione e l uso di Eclipse richiede di aver preliminarmente installato Java SE SDK Tale attività non è descritta in questa

Dettagli

Guida all uso dell ambiente di sviluppo 1 integrato o IDE. JCreator LE 4.50

Guida all uso dell ambiente di sviluppo 1 integrato o IDE. JCreator LE 4.50 Guida all uso dell ambiente di sviluppo 1 integrato o IDE JCreator LE 4.50 Inizializzazione: creazione del nuovo progetto e del file sorgente in ambiente JCreator Al lancio del programma si apre la finestra

Dettagli

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

Utilizzare il NetBeans GUI Builder. Dott. Ing. M. Banci, PhD Utilizzare il NetBeans GUI Builder Dott. Ing. M. Banci, PhD Lavorare con i Beans Queste slide ci guidano nel processo di creazione di un bean pattern nel progetto NetBeans 15 Giugno 2007 Esercitazione

Dettagli

Marco Faella Elementi di programmazione di interfacce Grafiche. Il pattern OBSERVER.

Marco Faella Elementi di programmazione di interfacce Grafiche. Il pattern OBSERVER. Marco Faella Elementi di programmazione di interfacce Grafiche. Il pattern OBSERVER. 9 Lezione n. Parole chiave: Java Corso di Laurea: Informatica Insegnamento: Linguaggi di Programmazione II Email Docente:

Dettagli

COGNOME.NOME. Matricola

COGNOME.NOME. Matricola Esame di PROGRAMMAZIONE ORIENTATA AGLI OGGETTI Appello del 4.9.2013 COGNOME.NOME. Matricola Tre classi, denominate Anemone, Fiordaliso e Viola devono assicurare la visualizzazione di un fiore stilizzato

Dettagli

1. Le macro in Access 2000/2003

1. Le macro in Access 2000/2003 LIBRERIA WEB 1. Le macro in Access 2000/2003 Per creare una macro, si deve aprire l elenco delle macro dalla finestra principale del database: facendo clic su Nuovo, si presenta la griglia che permette

Dettagli

Finestra.java. static String nomicolonne[] = {"ind.","cognome","nome","telefono","e-mail"}; //nomi delle colonne della tabella

Finestra.java. static String nomicolonne[] = {ind.,cognome,nome,telefono,e-mail}; //nomi delle colonne della tabella import java.awt.*; import java.awt.event.actionevent; import java.awt.event.actionlistener; import java.awt.event.windowevent; import java.awt.event.windowlistener; import java.io.*; import java.util.*;

Dettagli

Fondamenti di informatica. Word Elaborazione di testi

Fondamenti di informatica. Word Elaborazione di testi Fondamenti di informatica Word Elaborazione di testi INTRODUZIONE Cos è Word? u Word è un word processor WYSIWYG (What You See Is What You Get) u Supporta l utente nelle operazioni di: Disposizione del

Dettagli

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP)

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) 12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica,

Dettagli

SAPIENZA Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica

SAPIENZA Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica SAPIENZA Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica Esercitazioni di PROGETTAZIONE DEL SOFTWARE (Corsi di Laurea in Ingegneria Informatica ed Automatica ed Ingegneria

Dettagli

Relazioni tra oggetti e classi : Composizione. Relazioni tra oggetti e classi : esempio di Aggregazione. classe contenitore

Relazioni tra oggetti e classi : Composizione. Relazioni tra oggetti e classi : esempio di Aggregazione. classe contenitore Relazioni tra oggetti e classi : Generalizzazione Fondamenti di Informatica II 20. Laboratorio 6 Collegamenti e associazioni Le relazioni di tipo generalizzazione (specializzazione), servono per poter

Dettagli

Esercizi della lezione 5 di Java

Esercizi della lezione 5 di Java Esercizi della lezione 5 di Java Esercizio 5 Create il tipo di dato Counter dell Esercizio 1 come sottoclasse del tipo di dato SimpleCounter. Esercizio 1 Create un tipo di dato Counter che abbia: un valore

Dettagli

Programmazione a Oggetti Modulo B

Programmazione a Oggetti Modulo B Programmazione a Oggetti Modulo B Progetto Dott. Alessandro Roncato 4/10/2011 Progetto Da svolgere singolarmente Scadenza consegna: una settimana prima dello scritto; Valutazione in base a: Corretta compilazione

Dettagli

Gruppi di Thread. Java threads (3) Gruppi di thread e Timer. Operating Systems. Operating Systems. Java threads 3. Java threads 3

Gruppi di Thread. Java threads (3) Gruppi di thread e Timer. Operating Systems. Operating Systems. Java threads 3. Java threads 3 Java threads (3) Gruppi di thread e Timer emanuele lattanzi isti information science and technology institute 1/12 Gruppi di Thread emanuele lattanzi isti information science and technology institute 2/12

Dettagli

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

La nostra finestra dovrebbe essere come mostra la figura: Diamo innanzitutto un occhiata alle componenti principali di input/output: Esercitazione N4: Costruzione di una applicazione GUI utilizzando i componenti di base per realizzare l input e l output e cioè Label, TextBox, TextArea Button e Panel (Pannelli) I componenti che utilizzeromo

Dettagli

Java Interfaccia Grafica

Java Interfaccia Grafica Java Interfaccia Grafica Testi di consultazione: a) core Java 1.1 (Volume I Fundamentals) Cay S. Horstmann, Gary Cornell, Prentice Hall, 1997. b) Java 1.2 Unleashed, Jamie Jaworski, Sams Publishing, 1998.

Dettagli

Introduzione. Strumenti di Presentazione Power Point. Risultato finale. Slide. Power Point. Primi Passi 1

Introduzione. Strumenti di Presentazione Power Point. Risultato finale. Slide. Power Point. Primi Passi 1 Introduzione Strumenti di Presentazione Power Point Prof. Francesco Procida procida.francesco@virgilio.it Con il termine STRUMENTI DI PRESENTAZIONE, si indicano programmi in grado di preparare presentazioni

Dettagli

JFrame. Chiusura della finestra. JFrame - Esempio. Tipologia di GUI. Linee guida. Programmazione ad Oggetti 6/12/09. finestre

JFrame. Chiusura della finestra. JFrame - Esempio. Tipologia di GUI. Linee guida. Programmazione ad Oggetti 6/12/09. finestre JFrame JFrame è la classe di base per le finestre Programmazione ad Oggetti Interfacce grafiche Fornisce tutte le caratteristiche di una finestra vuota Barra del titolo Pulsanti standard Bordo ridimensionabile

Dettagli

Registratori di Cassa

Registratori di Cassa modulo Registratori di Cassa Interfacciamento con Registratore di Cassa RCH Nucleo@light GDO BREVE GUIDA ( su logiche di funzionamento e modalità d uso ) www.impresa24.ilsole24ore.com 1 Sommario Introduzione...

Dettagli

Pag. 1 di 5. private Color C0 = new Color(255, 0, 0);

Pag. 1 di 5. private Color C0 = new Color(255, 0, 0); Un manuale è formato da 250 pagine, In 210 di essi sono presenti 40 righe di testo, mentre nelle restanti solo 36. Determinare il numero complessivo di righe di testo del manuale. Risolvere il problema

Dettagli

Corso su LINQ Lezione 16. Introduzione

Corso su LINQ Lezione 16. Introduzione LINQ to SQL Introduzione Con questa lezione introduciamo il flavor LINQ to SQL. Dopo aver visto quindi tutte le funzionalità e gli operatori di LINQ to Object, affronteremo ora la tematica riguardante

Dettagli

Uso di JUnit. Fondamenti di informatica Oggetti e Java. JUnit. Luca Cabibbo. ottobre 2012

Uso di JUnit. Fondamenti di informatica Oggetti e Java. JUnit. Luca Cabibbo. ottobre 2012 Fondamenti di informatica Oggetti e Java ottobre 2012 1 JUnit JUnit è uno strumento per assistere il programmatore Java nel testing JUnit consente di scrivere test di oggetti e classi Java i test sono

Dettagli

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

Come costruire una presentazione. PowerPoint 1. ! PowerPoint permette la realizzazione di presentazioni video ipertestuali, animate e multimediali PowerPoint Come costruire una presentazione PowerPoint 1 Introduzione! PowerPoint è uno degli strumenti presenti nella suite Office di Microsoft! PowerPoint permette la realizzazione di presentazioni video

Dettagli

Flow!Works Manuale d uso

Flow!Works Manuale d uso Flow!Works Manuale d uso Questa guida ti sarà utile per comprendere le informazioni e le diverse funzioni del software, in modo da permetterti un corretto utilizzo nella più completa autonomia. Smartmedia

Dettagli

Programmazione a Oggetti Lezione 10. Ereditarieta

Programmazione a Oggetti Lezione 10. Ereditarieta Programmazione a Oggetti Lezione 10 Ereditarieta Sommario Come definire sottoclassi Costruttori Abstract Classes Final Ereditarietà: promemoria Strumento tipico dell OOP per riusare il codice e creare

Dettagli

Gestione Rapporti (Calcolo Aree)

Gestione Rapporti (Calcolo Aree) Gestione Rapporti (Calcolo Aree) L interfaccia dello strumento generale «Gestione Rapporti»...3 Accedere all interfaccia (toolbar)...3 Comandi associati alle icone della toolbar...4 La finestra di dialogo

Dettagli