PROGRAMMAZIONE GRAFICA

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "PROGRAMMAZIONE GRAFICA"

Transcript

1 PROGRAMMAZIONE GRAFICA Creazione di interfaccie utente grafiche, ovvero basate su concetti quali finestra, casella di testo, bottone, barra degli strumenti, menu. Elementi fondamentali: Componenti e composizione: l interfaccia grafica viene costruita assemblando componenti pronti, quali finestre, bottoni, caselle di testo; Layout: posizionamento degli elementi nell interfaccia grafica. E un problema non banale quando si vuole che l applicazione sia multipiattaforma e indipendente dalla risoluzione e dalla dimensione dei caratteri. Event-oriented programming: il programma non è più in comando dell interazione con l utente. Deve reagire appropriatamente alle azioni svolte dall utente. Programmazione grafica: è possibile creare componenti che si disegnano autonomamente. Librerie per la grafica in Java: AWT: presente nel JDK, risale a Java 1.0. E poco flessibile, possiede meno componenti. Ogni componente è nativo, ovvero ha lo stesso aspetto degli altri componenti del sistema operativa; Swing: presente nel JDK, risale a Java 2. Flessibile, potente, anche se più complessa da usare. Indipendente dalla piattaforma e skinnable (vedi Look And Feel). Ing. Aime Programmazione grafica in Java con la libreria Swing 1

2 COMPOSIZIONE Finestra Componenti Pannello (contenitore) Secondo pannello Osservazioni: Componenti: la finestra mostra vari componenti, quali etichette (nome, descrizione), caselle di testo, bottoni, liste a discesa, radio e check buttons, liste, e pannelli, ovvero generici contenitori di altri componenti (decorati con un bordo e un titolo) Composizione: la finestra contiene un pannello, che contiene dei componenti, ma anche un secondo pannello, il quale contiene a sua volta dei bottoni; Ing. Aime Programmazione grafica in Java con la libreria Swing 2

3 POSIZIONAMENTO E GESTIONE LAYOUT X Y Ogni componente è dotato di un sistema di riferimento cartesiano, la cui unità di misura è il pixel (la cui dimensione dipende dal numero di pixel presenti sullo schermo e dalla dimensione dello schermo, per una definizione più accurata si veda Ad esempio, possiamo dire che l etichetta nome ha una posizione (3, 6) rispetto all origine, e una dimensione di 20 per 8 pixel. Ciascun contenitore ha il proprio riferimento cartesiano. La posizione di jbutton2, ad esempio, è riferita al sistema cartesiano di Pannello2, non all intera finestra. Ing. Aime Programmazione grafica in Java con la libreria Swing 3

4 X X Y Y Il dimensionamento e il posizionamento fisso in pixel non sono però affidabili: se si cambia la dimensione o il tipo dei font o la risoluzione del video, o si cerca di ridimensionare la finestra, si possono ottenere componeti sovrapposti, mal distribuiti, o posizionati fuori dall area visibile. Java introduce i layout manager, gestori del posizionamento, che risolvono questi problemi ricalcolando la posizione assoluta dei componenti in funzione delle suddette variabili. Ing. Aime Programmazione grafica in Java con la libreria Swing 4

5 EVENT ORIENTED PROGRAMMING Paradigma di interazione in un programma testuale: il software propone delle domande all utente, e si aspetta una risposta (testuale). Il programma di norma interrompe la sua esecuzione nell attesa della risposta, la riposta è una sola, è sufficiente verificare che sia appropriata. Il programma domina l interazione con l utente. Il programma termina quanto termina la main. Paradigma di interazione in un programma grafico: il programma predispone una interfaccia utente grafica, l utente decidere cosa quale azioni vuole eseguire. Ad esempio, può compilare prima il campo nome e poi la descrizione, e premere ok senza aver fornito la sua età. Il programma di norma non termina quanto termina la main, ma quando viene chiusa l ultima finestra. L utente domina l interazione, il programma può soltanto reagire agli stimoli forniti dall utente. Quindi, il programma resta in attesa di eventi generati dall azione dell utente, ed esegue determinate routine quando accadono eventi ritenuti interessanti. Vi sono molti eventi, ma il programma ne ascolterà soltanto una parte. Ad esempio, relativamente ad un bottone siamo interessati al click sul bottone, ma probabilmente non al fatto che qualcuno ha premuto il tasto A mentre il bottone era attivo (anche se potremmo ascolatare anche questo evento). Alla stessa maniera, non saremo direttamente interessati ad eventi quali il ridimensionamento di una finestra (ma il layout manager, al contrario, sarà molto interessato in questi ultimi). Ing. Aime Programmazione grafica in Java con la libreria Swing 5

6 Mouse Tastiera Mouse Tastiera Mouse Tastiera Semantici Virtual Machine + Swing Componente Ascoltatori L utente opera sulla finestra del programma con mouse e tastiera. La virtual machine e la libreria Swing ricevono questi eventi grezzi, o di basso livello, e li inviano al componente a cui sono dedicati. Per decidere quale componente è il destinatario, vengono usati due algoritmi: se l evento origina dal mouse, si determina quale è il componente che sta sotto il puntatore del mouse; se l evento origina dalla tastiera, si invia al componente che ha il focus (di norma tale componente è evidenziato con un bordo particolare). Il focus può essere spostato ciccando sui componenti o premendo i tasti TAB e MAISC-TAB. Il componente notifica questi eventi così come li ha ricevuti, ma crea anche eventi di più alto livello. Ad esempio, un click può comportare la selezione/deselezione: verrà notificato sia l evento di click, che un evento di selezione/deselezione. Un programma grafico aggancia degli ascoltatori ai componenti, per poter ascoltare i particolari eventi a cui è interessato e reagire di conseguenza. Ing. Aime Programmazione grafica in Java con la libreria Swing 6

7 Come sempre in Java, questi concetti sono mappati su classi: un evento è rappresentato da un oggetto, istanza di una particolare classe di evento, riporta un riferimento al componente che lo ha generato e ulteriori informazioni specifiche in funzione del tipo di evento (ad esempio, un evento di click riporta quale bottone del mouse è stato premuto, se erano premuti alcuni tasti speciali sulla tastiera insieme al click, eccetera); un ascoltatore (listener) è un oggetto che implementa una determinata interfaccia. Quando un evento viene scatenato, verrà invocato uno dei metodi di questa interfaccia. Ad esempio, MouseListener è una interfaccia, fra i vari metodi di questa interfaccia abbiamo public void mouseclicked(mouseevent e); Quando l evento di click viene scatenato, verrà invocato questo metodo passando come parametro il MouseEvent. l ascoltatore di deve registrare presso il componente per poter ascoltare (e può rimoeve la registrazione per smettere di ascoltare). public void addmouselistener(mouselistener l) public void removemouselistener(mouselistener l) Un componente può avere più ascoltatori, il medesimo ascoltatore può ascoltare eventi da più componenti. Bottone 1 Bottone 2 E1 E1 E2 Ascoltatore1 Ascoltatore2 Ing. Aime Programmazione grafica in Java con la libreria Swing 7

8 RIASSUMENDO Una interfaccia grafica viene costruita mediante i seguenti passi: 1. si creano e si configurano i componenti; 2. si assembla l interfaccia inserendo componenti base dentro i contenitori (pannelli) e questi dentro una finestra; 3. si specifica la gestione del layout (algoritmo generale, dettagli per i singoli componenti) 4. si agganciano dei listener ai componenti per poter reagire alle azioni dell utente. A run time, il programma aspetta gli input dell utente e reagisce. Alcune interazioni sono già predisposte nei componenti (ad esempio, un campo di testo reagire alla tastiera inserendo i caratteri premuti nella casella). Altre interazioni sono programmate nei listener, e vengono attivate quando l utente esegue determinate azioni (ad esempio, premere un bottone). ESEMPIO Ing. Aime Programmazione grafica in Java con la libreria Swing 8

9 import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.util.date; class FirstExample extends JPanel implements ActionListener { JButton bottone; JTextField testo; public FirstExample() { // costruzione e configurazione componenti bottone = new JButton("Premi qui"); testo = new JTextField(); testo.setcolumns(20); // aggiunta dei componenti al pannello this.add(bottone); this.add(testo); // aggancio i listener (me stesso) bottone.addactionlistener(this); // dichiarato in ActionListener // verrà invocato quando il bottone sarà premuto public void actionperformed(actionevent event) { Date ora = new Date(); testo.settext(ora.tostring()); System.out.println("Sono stato invocato da:\n" + event.getsource()); System.out.println(); public static void main(string[] args) { JFrame frame = new JFrame("Primo esempio"); frame.setcontentpane(new FirstExample()); frame.setdefaultcloseoperation( WindowConstants.EXIT_ON_CLOSE); frame.pack(); frame.setvisible(true); // la main termina, ma il programma no!!! Ing. Aime Programmazione grafica in Java con la libreria Swing 9

10 GERARCHIA DEI COMPONENTI IN JAVA Object Component Container AWT Swing Window JComponent Frame Dialog JPanel JList JFrame JDialog JTextComponent AbstractButton JToggleButton JButton JTextField JTextArea JCheckBox JRadioButton Osservazioni: ogni componente grafico è rappresentato da una classe. i componenti sono disposti lungo una gerarchia di ereditarietà i metodi presenti nelle classi base sono disponibili in tutte le sottoclassi! Nell ovale sono riportate le classi che rappresentano le finestre. Di due tipi, normale (JFrame), di dialogo (usata di norma per chiedere all utente informazioni). Ing. Aime Programmazione grafica in Java con la libreria Swing 10

11 In corsivo le classi di AWT, le classi di Swing iniziano tutte per J. GERARCHIA DEGLI EVENTI Object EventObject AWTEvent ActionEvent ComponentEvent ItemEvent ContainerEvent InOutEvent WindowEvent KeyEvent MouseEvent Package java.awt.event Ogni evento viene accompagnato da un oggetto che lo rappresenta. Per ogni evento, è possibile risalire al componente che lo ha generato invocando il metodo public Object getsource(); Ing. Aime Programmazione grafica in Java con la libreria Swing 11

12 COMPONENTI AWT Component Classe base (astratta) di tutti i componenti grafici. Di seguito sono riportati alcune proprietà e eventi del componente. Alcune proprietà (manipolate con metodi set/get) Background Color di sfondo Bounds Area occupata dal componente nel suo contenitore (Rectangle) Enabled Un componente riceve gli eventi solo se abilitato Font Tipo di carattere usato nel componente Focusable Se il componente può ricevere il focus Foreground Colore di primo piano Location Posizione dell angolo in alto a sinistra (Point) MinimumSize Dimensione minima per il componente (Dimension) MaximumSize Dimensione massima per il componente Parent Il contenitore in cui è collocato il componente. Può essere null Size Dimensione del componente (classe Dimension) Visibile Se vero, il componente è visibile. Usato anche per mostrare le finestre a video dopo averle costruite Alcuni fra i listener accettati KeyListener Per ascoltare eventi come la pressione di tasti (solo se il componente ha il focus) MouseListener Eventi base del mouse (click, ingresso e uscita del puntatore) MouseMotionListener Eventi avanzati, movimento, trascinamento MouseWheelListener Eventi della rotellina del mouse, se presente Ing. Aime Programmazione grafica in Java con la libreria Swing 12

13 Esiste poi un metodo che viene invocato ogni volta che il componente deve essere disegnato: public void paint(graphics g); dove Graphics è un oggetto dotato di metodi per disegnare linee, rettangoli, ellissi, poligoni, eccetera. Ogni componente ridefinisce questo metodo per poter disegnare correttamente il suo aspetto. Container E un contenitore di altri componenti. Pertanto: esistatono metodi per aggiungere/rimuovere i componenti contenuti, e per ispezionare quali componenti sono presenti; è possibile associare un layout manager public Component add(component comp); public add(component comp, Object constraints); public void remove(component comp); public int getcomponentcount(); public Component getcomponent(int n); public void setlayout(layoutmanager mgr); Ing. Aime Programmazione grafica in Java con la libreria Swing 13

14 COMPONENTI SWING JFrame La finestra. Alcune proprietà (manipolate con metodi set/get) Title Titolo della finestra Resizable Se vero, la finestra è ridimensionabile DefaultClose Operazione svolta alla chiusura. Valori possibili: Operation WindowConstants.DO_NOTHING_ON_CLOSE WindowConstants.HIDE_ON_CLOSE WindowConstants.DISPOSE_ON_CLOSE WindowConstants.EXIT_ON_CLOSE import javax.swing.*; import java.awt.*; public class Finestra extends JFrame { public Finestra(String title) { super(title); setsize(200, 200); setlocation(100, 200); setdefaultcloseoperation( WindowConstants.EXIT_ON_CLOSE); public static void main(string[] args) { System.out.println( "Prima di creare la finestra"); Finestra f = new Finestra("Prima finestra"); f.setvisible(true); System.out.println( "Sto per uscire dalla main"); Ing. Aime Programmazione grafica in Java con la libreria Swing 14

15 JComponent Classe base dei componenti Swing. Aggiunge molti metodi e proprietà, ma la maggior parte sono avanzati, e non verranno presi in considerazione. Alcune proprietà (manipolate con metodi set/get) Border Bordo del componente (sottoclassi di Border) Opaque Boolean, indica se lo sfondo è trasparente o pieno (default, trasparente) Metodi per il disegno (invocato dalla paint di JComponent, si occupa di richiamare paintcomponent dopo aver disegnato il bordo): protected void paintcomponent(graphics g); In aggiunta, tutti i discendenti di JComponent sono in grado di modificare il proprio aspetto quando viene cambiato il Look and Feel. JPanel Pensato per essere un semplice contenitore di componenti. Non ha nessuna differenza particolare, a meno che il look and feel non imponga qualche differenza estetica (ad esempio, uno sfondo grafico). JLabel Semplice etichetta di testo. Attenzione: JLabel non è passivo, ha tutta la gamma di eventi ereditati dai suoi padri, come ad esempio la gestine degli eventi del mouse, presente sin dalla radice della gerarchia, Container. Alcune proprietà (manipolate con metodi set/get) Text Il testo mostrato nell etichetta Ing. Aime Programmazione grafica in Java con la libreria Swing 15

16 AbstractButton e i bottoni Classe base astratta di tutti i bottoni. Qualunque bottone sarà dotato di un testo, la proprietà text. Inoltre, qualunque bottone emette un ActionEvent ogni volta che il bottone viene premuto (con il mouse, o con la barra spaziatrice quando il bottone ha il focus). Un ascolatore di ActionEvent deve implementare ActionListener: public interface ActionListener extends EventListener { public void actionperformed(actionevent e); L ascoltatore dovrà poi registrarsi presso il bottone usando il metodo: public void addactionlistener(actionlistener l); JButton è una sottoclasse di AbstractButton semplice, non vi sono funzionalità aggiuntive degne di nota. JToggleButton è una sottoclasse di AbstractButton. Ha lo stesso aspetto di un JButton, ma può restare premuto. Aggiunge una proprietà selected (setselected, isselected) per indicare il suo stato (premuto o non premuto). JCheckBox è una sottoclasse di JToggleButton, con un aspetto grafico differente. Ing. Aime Programmazione grafica in Java con la libreria Swing 16

17 JRadioButton è una ulteriore sottoclasse di JToggleButton. Ha un aspetto grafico differente, e può essere incluso in un ButtonGroup per creare un insieme di selezioni esclusive fra loro. Ad esempio: import javax.swing.*; import java.awt.*; import java.awt.event.*; public class RadioSample extends JPanel implements ActionListener { JRadioButton rbtuno, rbtdue, rbttre; ButtonGroup group; JLabel label; public RadioSample() { // crea e configura i componenti rbtuno = new JRadioButton("Uno"); rbtuno.setselected(true); rbtdue = new JRadioButton("Due"); rbttre = new JRadioButton("Tre"); label = new JLabel("Seleziona un bottone"); // crea e configura il gruppo group = new ButtonGroup(); group.add(rbtuno); group.add(rbtdue); group.add(rbttre); // aggiungi i componenti add(rbtuno); add(rbtdue); add(rbttre); add(label); // gestione eventi rbtuno.addactionlistener(this); rbtdue.addactionlistener(this); rbttre.addactionlistener(this); Gestione di più sorgenti di evento con lo stesso listener Ing. Aime Programmazione grafica in Java con la libreria Swing 17

18 public void actionperformed(actionevent evt) { JRadioButton src = (JRadioButton) evt.getsource(); System.out.println("Evento da " + src.gettext()); if(src.isselected()) label.settext("selezionato: " + src.gettext()); public static void main(string[] args) { JFrame frame = new JFrame("Radio sample"); frame.setcontentpane(new RadioSample()); frame.setdefaultcloseoperation( WindowConstants.EXIT_ON_CLOSE); frame.pack(); frame.setvisible(true); JTextField e JTextArea Entrambi i componenti espongono la proprietà text che consente di leggere/impostare il testo contenuto. JTextField è pensato per testi brevi, disposti su una sola riga. JTextArea al contrario permette di scrivere testi ampi. Inoltre, è capace di effettuare il ritorno a capo automatico quando siano state attivate le proprietà wrapstyleword e linewrap. Poiché JTextArea può raggiungere dimensioni ragguardevoli, è opportuno aggiungere delle barre di scorrimento. Per tale scopo esiste JScrollPane, un contenitore dotato di barre di scorrimento pensato per contenere componenti troppi ampi per essere visualizzati per intero. Ing. Aime Programmazione grafica in Java con la libreria Swing 18

19 import javax.swing.*; import java.awt.*; import java.awt.event.*; public class TextSample extends JPanel implements ActionListener { JTextField testo; JTextArea area; JScrollPane scroll; JButton btnaggiungi; public TextSample() { // crea e configura i componenti testo = new JTextField("Campo di testo"); testo.setcolumns(20); btnaggiungi = new JButton("Aggiungi testo"); area = new JTextArea("TextArea"); area.setlinewrap(true); area.setwrapstyleword(true); scroll = new JScrollPane(area); scroll.setpreferredsize( new Dimension(300, 200)); // aggiungi i componenti add(testo); add(btnaggiungi); add(scroll); // gestione eventi btnaggiungi.addactionlistener(this); public void actionperformed(actionevent evt) { area.settext(area.gettext() + testo.gettext()); public static void main(string[] args) {... Ing. Aime Programmazione grafica in Java con la libreria Swing 19

20 GESTIONE DEL LAYOUT Ogni Container è dotato di un layout manager, che calcola la posizione dei componenti in base alle loro dimensioni minime/preferite/massime e in base ad eventuali vincoli aggiuntivi specificati quando si inseriscono i componenti nel container. Vedremo tre tipi di layout: FlowLayout: è il layout di default dei JPanel, ovvero il layout manager visto sino ad ora; BorderLayout: un semplice layout manager, utile in varie occasioni GridBagLayout: il layout manager più flessibile, ma anche il più difficile da utilizzare, tanto complesso che faremo uso di una classe di supporto per semplificarne l utilizzo. I constraint di norma sono specificati quando si aggiunge il componente al Container. Vi sono infatti più metodi per l aggiunta, in overload, fra i quali troviamo: void add(component comp); void add(component comp, Object constraint); Ing. Aime Programmazione grafica in Java con la libreria Swing 20

21 FlowLayout Un layout manager che dispone i componenti per riga, ciascuno dimensionato secondo la sua preferred size. Se il container non è sufficientemente largo, il layout manager va a capo. Ing. Aime Programmazione grafica in Java con la libreria Swing 21

22 BorderLayout Il border layout prevede la presenza di un massimo di 5 componenti, disposti come in figura: Gli elementi sono disposti come i 4 segni cardinali, più il centro. L elemento di centro si allarga sia in altezza che in larghezza, gli altri solo in larghezza (west e east) o solo in altezza (north e south). Ing. Aime Programmazione grafica in Java con la libreria Swing 22

23 // aggiungi i componenti add(button1, BorderLayout.NORTH); add(button2, BorderLayout.CENTER); add(button3, BorderLayout.EAST); add(button4, BorderLayout.WEST); add(button5, BorderLayout.SOUTH); Nota: non è obbligatorio riempire tutte le posizioni. GridBagLayout con GridBuilder In questa sede verrà presentato un sottoinsieme delle possibilità del GridBagLayout. L idea di base è quella di collocare i componenti nelle celle di una griglia elastica, ovvero capace di ridimensionarsi quando il contenitore viene ridimensionato. Ogni riga e colonna ha un peso. Un peso nullo significa che la riga o la colonna faranno uso della dimensione minima dei componenti in 0 esse, e non cercheranno di allargarsi, un peso non nullo al contrario consentirà alla 0 colonna di allargarsi. Maggiore il peso, maggiore lo spazio occupato dalla riga o dalla colonna. 1 Ing. Aime Programmazione grafica in Java con la libreria Swing 23

24 Ogni componente è posizionato in una cella, ma può eventualmente occupare più celle (grid size maggiore di uno). Nella figura sono mostrati 4 componenti, tre dei quali occupano più di una cella Ing. Aime Programmazione grafica in Java con la libreria Swing 24

25 Ogni componente può sfruttare in modo diverso l area della cella: può occupare soltanto la sua area preferenziale, estendersi in larghezza, in altezza, o in entrambe le direzioni: Se il componente non sfrutta tutta l area della cella, può essere posizionato in modo diverso al suo intero: NorthWest North NorthEast West Center East SouthWest South SouthEast Infine, un componente può avere una spaziatura rispetto al bordo della cella, detto inset (usato per evitare che i componenti siano troppo addossati l uno all altro): Ing. Aime Programmazione grafica in Java con la libreria Swing 25

26 Per creare un layout con il GridBagLayout occorre decidere: quante righe e quante colonne sono necessarie; quali pesi dare a righe e colonne; quali posizioni e numero di celle saranno occupate dai componenti; come i componenti si allargano e, se necessario, in che posizione devono essere collocati. GridBuilder facilita la codifica di queste operazioni. Nel costruttore vengono specificati il container, i pesi e l inset: // 5 righe, con i rispettivi pesi, 2 colonne, // un inset pari a 3 pixel GridBuilder gb = new GridBuilder(container, new double[] { 0, 0, 0, 1, 0, new double[] { 0, 1, 3); Il grid builder tiene traccia della riga e della colonna correnti, partendo da 0,0. Ogni volta che si aggiunge un componente la colonna viene incrementata, se si raggiunge la fine riga, si passa automaticamente alla riga successiva: non è quindi necessario specificare riga e colonna per i componenti, si continua semplicemente a chiamare la add per aggiungere nuovi componeti. gb.add(new JLabel( Etichetta )); gb.add(new JTextFiled( Prova )); gb.add(new Jlabel( Etichetta2 )); Ing. Aime Programmazione grafica in Java con la libreria Swing 26

27 gb.add(new JButton( Bottone )); Se è necessario saltare una cella si può chiamare skip(), se è necessario andare a capo prima della fine della riga, newline(). E inoltre possibile leggere e impostare row e column con gli opportuni getter e setter. Il metodo add restituisce un oggetto GridConstraints, che consente di specificare i restanti parametri, ovvero dimensione, spazio utlizzato e posizionamento. public interface GridConstraints { public GridConstraints gridsize(int gridwidth, int gridheight); public GridConstraints north(); public GridConstraints northeast(); public GridConstraints northwest(); public GridConstraints east(); public GridConstraints center(); public GridConstraints west(); public GridConstraints southeast(); public GridConstraints south(); public GridConstraints southwest(); public GridConstraints fillhorizontal(); public GridConstraints fillvertical(); public GridConstraints fillboth(); Ogni metodo restituisce un riferimento all oggetto GridConstraints stesso, questo consente di effettuare più chiamate in cascata: gb.add(new JLabel( Ciao )). Ing. Aime Programmazione grafica in Java con la libreria Swing 27

28 gridsize(2, 1).fillHorizontal().north(); Attenzione: specificare una gridsize > 0 non fa spostare il cursore del grid builder. Se una cella è stata coperta da un componente con larghezza > 0 bisogna saltarla chiamando skip() Ing. Aime Programmazione grafica in Java con la libreria Swing 28

29 Esempio Si costruisca una finestra come la seguente: Per prima cosa, individuiamo righe, colonne e pesi: Ing. Aime Programmazione grafica in Java con la libreria Swing 29

30 Questo individua anche la posizione degli elementi. Notiamo però che l etichetta Modulo di registrazione e il bottone Ok sono centrati rispetto alla finestra devono occupare una intera riga per essere posizionati al centro. Pensiamo all occupazione di spazio: l etichetta del nome sembra occupare tutto lo spazio orizzontale, la text area del commento, anche quello verticale. Infine, il posizionamento. Le etichette Nome e Età e il testo per l età sono a West, Commento è a NorthWest i restanti sono al centro. Il codice di costruzione dentro un JPanel allora è: GridBuilder gb = new GridBuilder(this, new double[] { 0, 0, 0, 1, 0, new double[] { 0, 1, 3); gb.add(new JLabel("Modulo di registrazione")).gridsize(2, 1); gb.newline(); // attenzione! gb.add(new JLabel("Nome")).west(); gb.add(new JTextField()).fillHorizontal(); gb.add(new JLabel("Età")).west(); gb.add(new JTextField(3)).west(); gb.add(new JLabel("Commento")).northWest(); JscrollPane scroll = new JScrollPane( new JTextArea()); gb.add(scroll).fillboth(); gb.add(new JButton("Ok")).gridSize(2, 1); Ing. Aime Programmazione grafica in Java con la libreria Swing 30

31 Reazione del pannello ai ridimensionamenti: Ing. Aime Programmazione grafica in Java con la libreria Swing 31

32 LAYOUT E COMPOSIZIONE DI PANNELLI Ogni pannello è dotato di un proprio layout manager. Se non si riesce ad ottenere il risultato voluto con un solo layout manager, si possono comporre fra loro i pannelli e usare un layout manager separato per ciascuno. Ad esempio: In questa finestra sono presenti tre pannelli: il panello principale, con un BorderLayout, completamente ricoperto dagli altri; il pannello dati, posto al centro del pannello principale, dotato di un GridBagLayout il pannello con i bottoni, a sud del panello principale, con un flow layout allineato a destra. datapanel (GridBagLayout) buttonpanel (FlowLayout, destra) Principale (BorderLayout) Ing. Aime Programmazione grafica in Java con la libreria Swing 32

33 class MultiLayout extends JPanel { JTextField txfname; JTextField txfsurname; JTextField txfage; JButton btnok; JButton btncancel; public MultiLayout() { JPanel datapanel = new JPanel(); txfname = new JTextField(); txfname.setcolumns(20); txfsurname = new JTextField(); txfsurname.setcolumns(20); txfage = new JTextField(); txfage.setcolumns(3); GridBuilder builder = new GridBuilder(dataPanel, new double[] {0,0,0, 1, new double[] {0,1, 3); builder.add(new JLabel("Nome")).west(); builder.add(txfname).fillhorizontal(); builder.add(new JLabel("Cognome")).west(); builder.add(txfsurname).fillhorizontal(); builder.add(new JLabel("Età")).west(); builder.add(txfage).west(); JPanel buttonpanel = new JPanel(); buttonpanel.setlayout( new FlowLayout(FlowLayout.RIGHT)); btnok = new JButton("Ok"); btncancel = new JButton("Cancel"); buttonpanel.add(btnok); buttonpanel.add(btncancel); setlayout(new BorderLayout()); add(datapanel, BorderLayout.CENTER); add(buttonpanel, BorderLayout.SOUTH); Ing. Aime Programmazione grafica in Java con la libreria Swing 33

34 DISEGNO LIBERO CON SWING Ogni classe di Swing si disegna appropriatamente usando il metodo paintcomponent. E possibile creare una propria classe che ridefinisce (override) il metodo paintcomponent per disegnare liberamente con l oggetto Graphics. I metodi per disegnare figure aperte e testo sono: drawline(), drawrect(), drawroundrect(), draw3drect(), drawoval(), drawarc(), drawstring(), drawpolygon(), drawpolyline() I metodi per disegnare figure piene sono: fillrect(), fillroundrect(), fill3drect(), filloval(), fillarc(), fillpolygon(), fillpolyline() Infine, i seguenti metodi impostano il colore e il font (ovvero, il tipo di carattere usato): getcolor(), getfont(), setcolor(), setfont(). I colori vengono specificati con gli oggetti Color. Si può istanziare un oggetto Color specificando le componenti RGB o usare le costanti simboliche definite in Color, come Color.BLACK, Color.RED, Color.GREEN, I font possono essere creati specificando il nome di un carattere (potete usare Arial, Times New Roman, Courier ), lo stile (Font.BOLD, Font.ITALIC o metterli insieme con Font.BOLD Font.ITALIC), e la dimensione. Ing. Aime Programmazione grafica in Java con la libreria Swing 34

35 Tutti i metodi di disegno accettano delle coordinate: sono coordinate in pixel rispetto all origine. import javax.swing.*; import java.awt.*; import java.awt.event.*; class Grafica1 extends JPanel { public void paintcomponent(graphics g) { g.setcolor(color.red); g.filloval(80, 10, 40, 20); g.setcolor(color.green); g.fillroundrect(80, 160, 40, 40, 10, 5); g.setcolor(color.blue); g.drawarc(20, 20, 160, 160, 90, 270); g.drawline(20, 100, 100, 100); g.drawline(100, 20, 100, 180); g.drawrect(10, 90, 20, 20); g.setcolor(color.black); g.setfont(new Font("Arial", Font.BOLD, 12)); g.drawstring("testo libero!", 140, 80); public static void main(string[] args) {... Ing. Aime Programmazione grafica in Java con la libreria Swing 35

36 FINESTRE DI DIALOGO Una finestra di dialogo rappresenta una finestra secondaria, usata di norma per confermare inserimenti, aggiungere dettagli, eccetera (si pensi alle finestre di dialogo formato/carattere di Word, o alla finestra Configure/Options di JCreator). Di norma queste finestre hanno un padre e sono modali. Una finestra è modale rispetto al padre quando impedisce qualunque interazione con il padre fino a che non viene chiusa. Di fatto, una volta chiamato setvisible(true) il codice del padre resta congelato. I costruttori possono avere le seguenti forme: JDialog(Frame parent, String title, boolean modal); JDialog(Dialog parent, String title, boolean modal); Dato un componente comp si può ottenere il Frame che lo contiene con: Frame padre = OptionPane.getFrameForComponent(comp); Al di la di questa differenza, una JDialog si comporta esattamente come un JFrame: è una finestra, ha un content pane, un metodo pack, e tutti gli altri metodi ereditati da Component. Ing. Aime Programmazione grafica in Java con la libreria Swing 36

37 import javax.swing.*; import java.awt.*; import java.awt.event.*; public class DialogSample extends JPanel implements ActionListener { JCheckBox check; public DialogSample() { check = new JCheckBox("Prova la selezione"); JButton btnseleziona = new jbutton("seleziona"); add(btnseleziona); add(check); btnseleziona.addactionlistener(this); public void actionperformed(actionevent event) { SelectionDialog dialog = new SelectionDialog(this); System.out.println("Il codice si blocca e + aspetta che la dialog si chiuda"); dialog.setvisible(true); System.out.println("Il codice prosegue"); if(dialog.risposta) { check.setselected(true); check.settext("hai risposto si"); else { check.setselected(false); check.settext("hai risposto no"); public static void main(string[] args) { JFrame frame = new JFrame("Due finestre"); frame.setcontentpane(new DialogSample()); frame.setdefaultcloseoperation( WindowConstants.EXIT_ON_CLOSE); frame.pack(); frame.setvisible(true); Ing. Aime Programmazione grafica in Java con la libreria Swing 37

38 class SelectionDialog extends JDialog implements ActionListener { boolean risposta = false; JButton btnsi; JButton btnno; public SelectionDialog(Component parent) { super(joptionpane.getframeforcomponent(parent), "Selezione", true); JPanel buttons = new JPanel(); JLabel label = new JLabel("Scegli una risposta"); btnsi = new JButton("Si"); btnno = new JButton("No"); buttons.add(label); buttons.add(btnsi); buttons.add(btnno); setcontentpane(buttons); pack(); btnsi.addactionlistener(this); btnno.addactionlistener(this); public void actionperformed(actionevent event) { risposta = event.getsource() == btnsi; // chiudi la finestra e rilascia le risorse setvisible(false); dispose(); Ing. Aime Programmazione grafica in Java con la libreria Swing 38

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

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

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

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

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

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

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

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

Il controllo della visualizzazione

Il controllo della visualizzazione Capitolo 3 Il controllo della visualizzazione Per disegnare in modo preciso è necessario regolare continuamente l inquadratura in modo da vedere la parte di disegno che interessa. Saper utilizzare gli

Dettagli

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Capittol lo 2 Visualizzazione 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Nel primo capitolo sono state analizzate le diverse componenti della finestra di Word 2000: barra del titolo, barra dei menu,

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

Alessandro De Luca. Lezione, 13 maggio 2015

Alessandro De Luca. Lezione, 13 maggio 2015 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, Introduzione a Java Swing

Dettagli

Guida all uso di Java Diagrammi ER

Guida all uso di Java Diagrammi ER Guida all uso di Java Diagrammi ER Ver. 1.1 Alessandro Ballini 16/5/2004 Questa guida ha lo scopo di mostrare gli aspetti fondamentali dell utilizzo dell applicazione Java Diagrammi ER. Inizieremo con

Dettagli

Modulo 4: Ereditarietà, interfacce e clonazione

Modulo 4: Ereditarietà, interfacce e clonazione Modulo 4: Ereditarietà, interfacce e clonazione Argomenti Trattati: Classi, Superclassi e Sottoclassi Ereditarietà Ereditarietà ed Attributi Privati Override super Ereditarietà e Costruttori Polimorfismo

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

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

MS Word per la TESI. Barra degli strumenti. Rientri. Formattare un paragrafo. Cos è? Barra degli strumenti

MS Word per la TESI. Barra degli strumenti. Rientri. Formattare un paragrafo. Cos è? Barra degli strumenti MS Word per la TESI Barra degli strumenti Cos è? Barra degli strumenti Formattazione di un paragrafo Formattazione dei caratteri Gli stili Tabelle, figure, formule Intestazione e piè di pagina Indice e

Dettagli

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti Capitolo 3 L applicazione Java Diagrammi ER Dopo le fasi di analisi, progettazione ed implementazione il software è stato compilato ed ora è pronto all uso; in questo capitolo mostreremo passo passo tutta

Dettagli

LA FINESTRA DI OPEN OFFICE CALC

LA FINESTRA DI OPEN OFFICE CALC LA FINESTRA DI OPEN OFFICE CALC Barra di Formattazione Barra Standard Barra del Menu Intestazione di colonna Barra di Calcolo Contenuto della cella attiva Indirizzo della cella attiva Cella attiva Intestazione

Dettagli

Word è un elaboratore di testi in grado di combinare il testo con immagini, fogli di lavoro e

Word è un elaboratore di testi in grado di combinare il testo con immagini, fogli di lavoro e Word è un elaboratore di testi in grado di combinare il testo con immagini, fogli di lavoro e grafici, tutto nello stesso file di documento. Durante il lavoro testo e illustrazioni appaiono sullo schermo

Dettagli

FUNZIONI DI IMPAGINAZIONE DI WORD

FUNZIONI DI IMPAGINAZIONE DI WORD FUNZIONI DI IMPAGINAZIONE DI WORD IMPOSTARE LA PAGINA Impostare la pagina significa definire il formato del foglio e vari altri parametri. Per impostare la pagina occorre fare clic sul menu File e scegliere

Dettagli

GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL

GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL GUIDA RAPIDA BOZZA 23/07/2008 INDICE 1. PERCHÉ UNA NUOVA VERSIONE DEI MODULI DI RACCOLTA DATI... 3 2. INDICAZIONI GENERALI... 4 2.1. Non modificare la struttura dei fogli di lavoro... 4 2.2. Cosa significano

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

La grafica con Word. La parte evidenziata è una Riga. La parte evidenziata è una Colonna. La parte evidenziata è una Cella

La grafica con Word. La parte evidenziata è una Riga. La parte evidenziata è una Colonna. La parte evidenziata è una Cella 9 La grafica con Word Lezione 09 Word non è un programma di grafica e, pertanto, non può sostituire i programmi che sono abilitati alle realizzazioni grafiche. Nonostante tutto, però, la grafica in Word

Dettagli

CATALOGO E-COMMERCE E NEGOZIO A GRIGLIA

CATALOGO E-COMMERCE E NEGOZIO A GRIGLIA CATALOGO E-COMMERCE E NEGOZIO A GRIGLIA In questo tutorial verrà illustrato come sfruttare la flessibilità del componente "Catalogo E-commerce" per realizzare un classico negozio a griglia, del tipo di

Dettagli

Università di L Aquila Facoltà di Biotecnologie Agro-alimentari

Università di L Aquila Facoltà di Biotecnologie Agro-alimentari RIFERIMENTI Università di L Aquila Facoltà di Biotecnologie Agro-alimentari Esame di Laboratorio di informatica e statistica Parte 3 (versione 1.0) Il riferimento permette di identificare univocamente

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

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

SOMMARIO... 3 INTRODUZIONE...

SOMMARIO... 3 INTRODUZIONE... Sommario SOMMARIO... 3 INTRODUZIONE... 4 INTRODUZIONE ALLE FUNZIONALITÀ DEL PROGRAMMA INTRAWEB... 4 STRUTTURA DEL MANUALE... 4 INSTALLAZIONE INRAWEB VER. 11.0.0.0... 5 1 GESTIONE INTRAWEB VER 11.0.0.0...

Dettagli

IL MIO PRIMO SITO: NEWS

IL MIO PRIMO SITO: NEWS Pagina 1 IL MIO PRIMO SITO: NEWS Sommario IL MIO PRIMO SITO: NEWS...1 Introduzione...2 I Contenitori...2 Creo un Contenitore...3 I Tracciati...4 Creo le Notizie...6 Inserisco il Testo...6 Inserisco un

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

Personalizza. Page 1 of 33

Personalizza. Page 1 of 33 Personalizza Aprendo la scheda Personalizza, puoi aggiungere, riposizionare e regolare la grandezza del testo, inserire immagini e forme, creare una stampa unione e molto altro. Page 1 of 33 Clicca su

Dettagli

IMPOSTARE UNA MASCHERA CHE SI APRE AUTOMATICAMENTE

IMPOSTARE UNA MASCHERA CHE SI APRE AUTOMATICAMENTE IMPOSTARE UNA MASCHERA CHE SI APRE AUTOMATICAMENTE Access permette di specificare una maschera che deve essere visualizzata automaticamente all'apertura di un file. Vediamo come creare una maschera di

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

MANUALE EDICOLA 04.05

MANUALE EDICOLA 04.05 MANUALE EDICOLA 04.05 Questo è il video che si presenta avviando il programma di Gestione Edicola. Questo primo video è relativo alle operazioni di carico. CARICO Nello schermo di carico, in alto a sinistra

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

Prova di Laboratorio di Programmazione

Prova di Laboratorio di Programmazione Prova di Laboratorio di Programmazione 6 febbraio 015 ATTENZIONE: Non è possibile usare le classi del package prog.io del libro di testo. Oltre ai metodi richiesti in ciascuna classe, è opportuno implementare

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

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

3 - Variabili. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

3 - Variabili. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo 3 - Variabili 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

Word Libre Office. Barra degli strumenti standard Area di testo Barra di formattazione

Word Libre Office. Barra degli strumenti standard Area di testo Barra di formattazione SK 1 Word Libre Office Se sul video non compare la barra degli strumenti di formattazione o la barra standard Aprite il menu Visualizza Barre degli strumenti e selezionate le barre che volete visualizzare

Dettagli

Stampa Unione per lettere tipo

Stampa Unione per lettere tipo per lettere tipo Con Stampa Unione è possibile creare lettere tipo, etichette per indirizzi, buste, elenchi indirizzi e liste per la distribuzione via posta elettronica e fax in grandi quantitativi. Lo

Dettagli

RISOLUTORE AUTOMATICO PER SUDOKU

RISOLUTORE AUTOMATICO PER SUDOKU RISOLUTORE AUTOMATICO PER SUDOKU Progetto Prolog - Pierluigi Tresoldi 609618 INDICE 1.STORIA DEL SUDOKU 2.REGOLE DEL GIOCO 3.PROGRAMMAZIONE CON VINCOLI 4.COMANDI DEL PROGRAMMA 5.ESEMPI 1. STORIA DEL SUDOKU

Dettagli

EXCEL ESERCIZIO DELLE SETTIMANE

EXCEL ESERCIZIO DELLE SETTIMANE EXCEL ESERCIZIO DELLE SETTIMANE 1. PREPARAZIONE 1. Aprire Microsoft Office Excel 2007. 2. Creare una nuova cartella di lavoro. 3. Aggiungere due fogli di lavoro come mostrato in figura: 4. Rinominare i

Dettagli

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

Che cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo Creazione di moduli Creazione di moduli Che cos'è un modulo? Un elenco di domande accompagnato da aree in cui è possibile scrivere le risposte, selezionare opzioni. Il modulo di un sito Web viene utilizzato

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

Il foglio elettronico: Excel

Il foglio elettronico: Excel Il foglio elettronico: Excel Laboratorio di Informatica Corso di Laurea triennale in Biologia Dott. Fabio Aiolli (aiolli@math.unipd.it) Dott.ssa Elisa Caniato (ecaniato@gmail.com) Anno accademico 2007-2008

Dettagli

L amministratore di dominio

L amministratore di dominio L amministratore di dominio Netbuilder consente ai suoi clienti di gestire autonomamente le caselle del proprio dominio nel rispetto dei vincoli contrattuali. Ciò è reso possibile dall esistenza di un

Dettagli

CONTROLLO ORTOGRAFICO E GRAMMATICALE

CONTROLLO ORTOGRAFICO E GRAMMATICALE CONTROLLO ORTOGRAFICO E GRAMMATICALE Quando una parola non è presente nel dizionario di Word, oppure nello scrivere una frase si commettono errori grammaticali, allora si può eseguire una delle seguenti

Dettagli

Il calcolatore - Applicazioni

Il calcolatore - Applicazioni Alfonso Miola Il calcolatore - Applicazioni Esercitazione Dispensa B-01-E Settembre 2005 1 Contenuti Applicazioni Applicazioni e Interfacce Il pacchetto Office Word Excel Power Point Il CD per ECDL 2 Applicazioni

Dettagli

WORD per WINDOWS95. Un word processor e` come una macchina da scrivere ma. con molte più funzioni. Il testo viene battuto sulla tastiera

WORD per WINDOWS95. Un word processor e` come una macchina da scrivere ma. con molte più funzioni. Il testo viene battuto sulla tastiera WORD per WINDOWS95 1.Introduzione Un word processor e` come una macchina da scrivere ma con molte più funzioni. Il testo viene battuto sulla tastiera ed appare sullo schermo. Per scrivere delle maiuscole

Dettagli

DIAGRAMMA CARTESIANO

DIAGRAMMA CARTESIANO DIAGRAMMA CARTESIANO Imparerai ora a costruire con excel un diagramma cartesiano. Inizialmente andremo a porre sul grafico un solo punto, lo vedremo cambiare di posizione cambiando i valori nelle celle

Dettagli

Mon Ami 3000 Varianti articolo Gestione di varianti articoli

Mon Ami 3000 Varianti articolo Gestione di varianti articoli Prerequisiti Mon Ami 3000 Varianti articolo Gestione di varianti articoli L opzione Varianti articolo è disponibile per le versioni Azienda Light e Azienda Pro e include tre funzionalità distinte: 1. Gestione

Dettagli

Cos è un word processor

Cos è un word processor Cos è un word processor è un programma di videoscrittura che consente anche di applicare formati diversi al testo e di eseguire operazioni di impaginazione: font diversi per il testo impaginazione dei

Dettagli

paragrafo. Testo Incorniciato Con bordo completo Testo Incorniciato Con bordo incompleto

paragrafo. Testo Incorniciato Con bordo completo Testo Incorniciato Con bordo incompleto Applicare bordi e sfondi ai paragrafi Word permette di creare un bordo attorno ad un intera pagina o solo attorno a paragrafi selezionati. Il testo risulta incorniciato in un rettangolo completo dei quattro

Dettagli

A destra è delimitata dalla barra di scorrimento verticale, mentre in basso troviamo una riga complessa.

A destra è delimitata dalla barra di scorrimento verticale, mentre in basso troviamo una riga complessa. La finestra di Excel è molto complessa e al primo posto avvio potrebbe disorientare l utente. Analizziamone i componenti dall alto verso il basso. La prima barra è la barra del titolo, dove troviamo indicato

Dettagli

Operazioni fondamentali

Operazioni fondamentali Foglio elettronico Le seguenti indicazioni valgono per Excel 2007, ma le procedure per Excel 2010 sono molto simile. In alcuni casi (per esempio, Pulsante Office /File) ci sono indicazioni entrambe le

Dettagli

2.2.2.1 Identificare le diverse parti di una finestra: barra del titolo, barra dei menu, barra degli strumenti, barra di stato, barra di scorrimento.

2.2.2.1 Identificare le diverse parti di una finestra: barra del titolo, barra dei menu, barra degli strumenti, barra di stato, barra di scorrimento. Uso del computer e gestione dei file 57 2.2.2.1 Identificare le diverse parti di una finestra: barra del titolo, barra dei menu, barra degli strumenti, barra di stato, barra di scorrimento. All interno

Dettagli

Progettazione : Design Pattern Creazionali

Progettazione : Design Pattern Creazionali Progettazione : Design Pattern Creazionali Alessandro Martinelli alessandro.martinelli@unipv.it 30 Novembre 2010 Progettazione : Design Pattern Creazionali Aspetti generali dei Design Pattern Creazionali

Dettagli

FPf per Windows 3.1. Guida all uso

FPf per Windows 3.1. Guida all uso FPf per Windows 3.1 Guida all uso 3 Configurazione di una rete locale Versione 1.0 del 18/05/2004 Guida 03 ver 02.doc Pagina 1 Scenario di riferimento In figura è mostrata una possibile soluzione di rete

Dettagli

Uso di base delle funzioni in Microsoft Excel

Uso di base delle funzioni in Microsoft Excel Uso di base delle funzioni in Microsoft Excel Le funzioni Una funzione è un operatore che applicato a uno o più argomenti (valori, siano essi numeri con virgola, numeri interi, stringhe di caratteri) restituisce

Dettagli

Esame di Informatica CHE COS È UN FOGLIO ELETTRONICO CHE COS È UN FOGLIO ELETTRONICO CHE COS È UN FOGLIO ELETTRONICO. Facoltà di Scienze Motorie

Esame di Informatica CHE COS È UN FOGLIO ELETTRONICO CHE COS È UN FOGLIO ELETTRONICO CHE COS È UN FOGLIO ELETTRONICO. Facoltà di Scienze Motorie Facoltà di Scienze Motorie CHE COS È UN FOGLIO ELETTRONICO Una tabella che contiene parole e numeri che possono essere elaborati applicando formule matematiche e funzioni statistiche. Esame di Informatica

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

La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni

La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni Autore: Prof. Agostino Sorbara ITIS "M. M. Milano" Autore: Prof. Agostino Sorbara ITIS "M. M.

Dettagli

Moduli (schede compilabili) in Word Esempio: scheda di alimentazione per un degente

Moduli (schede compilabili) in Word Esempio: scheda di alimentazione per un degente Moduli (schede compilabili) in Word Esempio: scheda di alimentazione per un degente Vediamo come utilizzare Word per costruire un modulo compilabile, ovvero una scheda che contenga delle parti fisse di

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

Il sofware è inoltre completato da una funzione di calendario che consente di impostare in modo semplice ed intuitivo i vari appuntamenti.

Il sofware è inoltre completato da una funzione di calendario che consente di impostare in modo semplice ed intuitivo i vari appuntamenti. SH.MedicalStudio Presentazione SH.MedicalStudio è un software per la gestione degli studi medici. Consente di gestire un archivio Pazienti, con tutti i documenti necessari ad avere un quadro clinico completo

Dettagli

LA FINESTRA DI EXCEL

LA FINESTRA DI EXCEL 1 LA FINESTRA DI EXCEL Barra di formattazione Barra degli strumenti standard Barra del titolo Barra del menu Intestazione di colonna Contenuto della cella attiva Barra della formula Indirizzo della cella

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

MODULO STAMPA BOLLETTINO PDF

MODULO STAMPA BOLLETTINO PDF MODULO STAMPA BOLLETTINO PDF MODULO STAMPA BOLLETTINO PDF pagina 2 di 7 INTRODUZIONE Il modulo STAMPA BOLLETTINO PDF è una applicazione stand-alone, sviluppata in linguaggio Java, che permette di produrre

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

Fogli Elettronici: MS Excel

Fogli Elettronici: MS Excel Fogli Elettronici: MS Excel Informatica - A.A. 2010/2011 - Excel 7.0 Foglio Elettronico Un foglio elettronico (o spreadsheet) è un software applicativo nato dall esigenza di: organizzare insiemi di dati

Dettagli

Appunti sugli Elaboratori di Testo. Introduzione. D. Gubiani. 19 Luglio 2005

Appunti sugli Elaboratori di Testo. Introduzione. D. Gubiani. 19 Luglio 2005 Appunti sugli Elaboratori di Testo D. Gubiani Università degli Studi G.D Annunzio di Chieti-Pescara 19 Luglio 2005 1 Cos è un elaboratore di testo? 2 3 Cos è un elaboratore di testo? Cos è un elaboratore

Dettagli

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a. 2009-10. prof.

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a. 2009-10. prof. Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica Programmazione I - corso B a.a. 009-10 prof. Viviana Bono Blocco 9 Metodi statici: passaggio parametri, variabili locali, record

Dettagli

Prof.ssa Paola Vicard

Prof.ssa Paola Vicard Questa nota consiste perlopiù nella traduzione da Descriptive statistics di J. Shalliker e C. Ricketts, 2000, University of Plymouth Consideriamo come esempio il data set contenuto nel foglio excel esercizio1_dati.xls.

Dettagli

Database 1 biblioteca universitaria. Testo del quesito

Database 1 biblioteca universitaria. Testo del quesito Database 1 biblioteca universitaria Testo del quesito Una biblioteca universitaria acquista testi didattici su indicazione dei professori e cura il prestito dei testi agli studenti. La biblioteca vuole

Dettagli

Appunti di: MICROSOFT EXCEL

Appunti di: MICROSOFT EXCEL Appunti di: MICROSOFT EXCEL INDICE PARTE I: IL FOGLIO ELETTRONICO E I SUOI DATI Paragrafo 1.1: Introduzione. 3 Paragrafo 1.2: Inserimento dei Dati....4 Paragrafo 1.3: Ordinamenti e Filtri... 6 PARTE II:

Dettagli

Guida all'uso del CMS (Content Management System, Sistema di Gestione dei Contenuti)

Guida all'uso del CMS (Content Management System, Sistema di Gestione dei Contenuti) GUIDE Sa.Sol. Desk: Rete Telematica tra le Associazioni di Volontariato della Sardegna Guida all'uso del CMS (Content Management System, Sistema di Gestione dei Contenuti) Argomento Descrizione Gestione

Dettagli

Tricks & Tips. [Access] Tutorial - ActiveX - Controllo Tree View. - Michele de Nittis - Versione: 1 Data Versione: venerdì 30 agosto 2002

Tricks & Tips. [Access] Tutorial - ActiveX - Controllo Tree View. - Michele de Nittis - Versione: 1 Data Versione: venerdì 30 agosto 2002 Tricks & Tips [Access] - Michele de Nittis - Tutorial - ActiveX - Controllo Tree View Versione: 1 Data Versione: venerdì 30 agosto 2002 1 SOMMARIO PREMESSA...3 INSERIMENTO DEL CONTROLLO...3 AGGIUNTA DELLE

Dettagli

EXCEL PER WINDOWS95. sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area di lavoro, detta foglio di lavoro,

EXCEL PER WINDOWS95. sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area di lavoro, detta foglio di lavoro, EXCEL PER WINDOWS95 1.Introduzione ai fogli elettronici I fogli elettronici sono delle applicazioni che permettono di sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area

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

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

Modulo 3 - Elaborazione Testi 3.6 Preparazione stampa

Modulo 3 - Elaborazione Testi 3.6 Preparazione stampa Università degli Studi dell Aquila Corso ECDL programma START Modulo 3 - Elaborazione Testi 3.6 Preparazione stampa Maria Maddalena Fornari Impostazioni di pagina: orientamento È possibile modificare le

Dettagli

MODULO 4: FOGLIO ELETTRONICO (EXCEL)

MODULO 4: FOGLIO ELETTRONICO (EXCEL) MODULO 4: FOGLIO ELETTRONICO (EXCEL) 1. Introduzione ai fogli elettronici I fogli elettronici sono delle applicazioni che permettono di sfruttare le potenzialità di calcolo dei Personal computer. Essi

Dettagli

Utilizzo del foglio di lavoro con gli strumenti di disegno di Excel

Utilizzo del foglio di lavoro con gli strumenti di disegno di Excel Utilizzo del foglio di lavoro con gli strumenti di disegno di Excel Geometra Luigi Amato Guida Avanzata per immagini Excel 2000 1 Presentazione della barra degli strumenti di disegno La barra degli strumenti

Dettagli

Compilatore risorse display grafico LCD serie IEC-line

Compilatore risorse display grafico LCD serie IEC-line Compilatore risorse display grafico LCD serie IEC-line aggiornamento: 22-11-2012 IEC-line by OVERDIGIT overdigit.com 1. Il display grafico LCD I PLC della serie IPC-line possono disporre opzionalmente

Dettagli

Concetti Fondamentali

Concetti Fondamentali EXCEL Modulo 1 Concetti Fondamentali Excel è un applicazione che si può utilizzare per: Creare un foglio elettronico; costruire database; Disegnare grafici; Cos è un Foglio Elettronico? Un enorme foglio

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

Settaggio impostazioni tema. Cliccando nuovamente su aspetto e poi su personalizza si avrà modo di configurare la struttura dinamica della template.

Settaggio impostazioni tema. Cliccando nuovamente su aspetto e poi su personalizza si avrà modo di configurare la struttura dinamica della template. I TEMI PREDEFINITI (TEMPLATE) Scelta del tema I temi predefiniti di wordpress sono la base di un sito che usa un utente che per ragioni pratiche o per incapacità non può creare un sito usando solo codice

Dettagli

PULSANTI E PAGINE Sommario PULSANTI E PAGINE...1

PULSANTI E PAGINE Sommario PULSANTI E PAGINE...1 Pagina 1 Sommario...1 Apertura...2 Visualizzazioni...2 Elenco...2 Testo sul pulsante e altre informazioni...3 Comandi...3 Informazioni...4 Flow chart...5 Comandi...6 Pulsanti Principali e Pulsanti Dipendenti...6

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

WWW.ICTIME.ORG. NVU Manuale d uso. Cimini Simonelli Testa

WWW.ICTIME.ORG. NVU Manuale d uso. Cimini Simonelli Testa WWW.ICTIME.ORG NVU Manuale d uso Cimini Simonelli Testa Cecilia Cimini Angelo Simonelli Francesco Testa NVU Manuale d uso EDIZIONE Gennaio 2008 Questo manuale utilizza la Creative Commons License www.ictime.org

Dettagli

Il foglio elettronico. Excel 2013 3 PARTE

Il foglio elettronico. Excel 2013 3 PARTE Il foglio elettronico Excel 2013 3 PARTE Versione 15/10/2013 Le tabelle PIVOT Tabelle PIVOT Le tabelle pivot sono tabelle interattive che consentono all'utente di raggruppare e riassumere grandi quantità

Dettagli

Prof.ssa Paola Vicard

Prof.ssa Paola Vicard DISTRIBUZIONE DI FREQUENZE PER CARATTERI QUALITATIVI Questa nota consiste per la maggior parte nella traduzione (con alcune integrazioni) da Descriptive statistics di J. Shalliker e C. Ricketts, 2000,

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

MANUALE PORTALE UTENTE IMPRENDITORE

MANUALE PORTALE UTENTE IMPRENDITORE MANUALE PORTALE UTENTE IMPRENDITORE Indice 1. REQUISITI MINIMI DI SISTEMA E CONTATTI PROGETTO RIGENER@... 3 2. IL PORTALE RIGENER@... 4 2.1 ACCESSO ALLE AREE PRIVATE... 7 2.1.1 Accesso al sito con Windows

Dettagli

Mon Ami 3000 Lotti e matricole Gestione della tracciabilità tramite lotti/matricole

Mon Ami 3000 Lotti e matricole Gestione della tracciabilità tramite lotti/matricole Prerequisiti Mon Ami 3000 Lotti e matricole Gestione della tracciabilità tramite lotti/matricole L opzione Lotti e matricole è disponibile per le versioni Azienda Light e Azienda Pro. Introduzione Generale

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