Java-concept och Swing. Swing low, sweet chariot
|
|
- Linda Forsberg
- för 6 år sedan
- Visningar:
Transkript
1 Java-concept och Swing Swing low, sweet chariot
2
3 Javas Swing-API En del av Javas standard-api API - application programming interface Ett klassbibiliotek som följer med Java Är designat med många OO-concept och -principer Bygger på det äldre AWT (en del klasser ligger fortfarande i java.awt-paketet.
4 En massa paket De mest centrala paketen är javax.swing och java.awt Vad var paket? En katalog med klasser/interface som hör ihop
5 What makes it Swing? I AWT/Swing finns containers (behållare) och components (komponenter). Containers är (genom arv) också komponenter Olika LayoutManagers hanterar placering av komponenter.
6 AWT är grunden I java.awt: Component <- Container <- Window <- Frame I Swing: java.awt.container <- javax.swing.jcomponent java.awt.frame <- javax.swing.jframe <- javax.swing.jdialog
7 Swing-komponenter är containers En JFrame är ett fönster. I en JFrame kan man lägga komponenter, t ex en JMenuBar. I en JMenuBar kan man lägga en (eller flera) JMenu och i en JMenu kan man lägga flera JMenuItem.
8 JFrame - Huvudfönstret import java.awt.*; import java.awt.event.*; import javax.swing.*; public class SimpleFrame { private static void createandshowgui() { } } JFrame frame = new JFrame("Simple Frame"); frame.setdefaultcloseoperation(jframe.exit_on_close); frame.setpreferredsize(new Dimension(480,200)); frame.pack(); frame.setvisible(true); public static void main(string[] args){ } createandshowgui();
9 Konstruktor - String med titel import java.awt.*; import java.awt.event.*; import javax.swing.*; public class SimpleFrame { private static void createandshowgui() { } } JFrame frame = new JFrame("Simple Frame"); frame.setdefaultcloseoperation(jframe.exit_on_close); frame.setpreferredsize(new Dimension(480,200)); frame.pack(); frame.setvisible(true); public static void main(string[] args){ } createandshowgui();
10 Stäng fönstret med x-knappen import java.awt.*; import java.awt.event.*; import javax.swing.*; public class SimpleFrame { private static void createandshowgui() { } } JFrame frame = new JFrame("Simple Frame"); frame.setdefaultcloseoperation(jframe.exit_on_close); frame.setpreferredsize(new Dimension(480,200)); frame.pack(); frame.setvisible(true); public static void main(string[] args){ } createandshowgui();
11 Fönstret har en storlek import java.awt.*; import java.awt.event.*; import javax.swing.*; public class SimpleFrame { private static void createandshowgui() { } } JFrame frame = new JFrame("Simple Frame"); frame.setdefaultcloseoperation(jframe.exit_on_close); frame.setpreferredsize(new Dimension(480,200)); frame.pack(); frame.setvisible(true); public static void main(string[] args){ } createandshowgui();
12 Packa ihop och visa fönstret import java.awt.*; import java.awt.event.*; import javax.swing.*; public class SimpleFrame { private static void createandshowgui() { } } JFrame frame = new JFrame("Simple Frame"); frame.setdefaultcloseoperation(jframe.exit_on_close); frame.setpreferredsize(new Dimension(480,200)); frame.pack(); frame.setvisible(true); public static void main(string[] args){ } createandshowgui();
13 Vi vill ha lite komponenter i fönstret JFrame frame = new JFrame("Frame with menu"); frame.setdefaultcloseoperation(jframe.exit_on_close); frame.setpreferredsize(new Dimension(480,200)); JMenuBar menubar=new JMenuBar(); frame.add(menubar, BorderLayout.NORTH); JMenu menu = new JMenu("File"); menubar.add(menu); JMenuItem quit = new JMenuItem("Quit"); menu.add(quit); quit.addactionlistener(new ActionListener(){ public void actionperformed(actionevent e){ System.exit(0); }}); //Display the window. frame.pack(); frame.setvisible(true);
14 JMenuBar - Lägg den högst upp JFrame frame = new JFrame("Frame with menu"); frame.setdefaultcloseoperation(jframe.exit_on_close); frame.setpreferredsize(new Dimension(480,200)); JMenuBar menubar=new JMenuBar(); frame.add(menubar, BorderLayout.NORTH); JMenu menu = new JMenu("File"); menubar.add(menu); JMenuItem quit = new JMenuItem("Quit"); menu.add(quit); quit.addactionlistener(new ActionListener(){ public void actionperformed(actionevent e){ System.exit(0); }}); //Display the window. frame.pack(); frame.setvisible(true);
15 JMenu JFrame frame = new JFrame("Frame with menu"); frame.setdefaultcloseoperation(jframe.exit_on_close); frame.setpreferredsize(new Dimension(480,200)); JMenuBar menubar=new JMenuBar(); frame.add(menubar, BorderLayout.NORTH); JMenu menu = new JMenu("File"); menubar.add(menu); JMenuItem quit = new JMenuItem("Quit"); menu.add(quit); quit.addactionlistener(new ActionListener(){ public void actionperformed(actionevent e){ System.exit(0); }}); //Display the window. frame.pack(); frame.setvisible(true);
16 JMenuItem JFrame frame = new JFrame("Frame with menu"); frame.setdefaultcloseoperation(jframe.exit_on_close); frame.setpreferredsize(new Dimension(480,200)); JMenuBar menubar=new JMenuBar(); frame.add(menubar, BorderLayout.NORTH); JMenu menu = new JMenu("File"); menubar.add(menu); JMenuItem quit = new JMenuItem("Quit"); menu.add(quit); quit.addactionlistener(new ActionListener(){ public void actionperformed(actionevent e){ System.exit(0); }}); //Display the window. frame.pack(); frame.setvisible(true);
17 Sammanfattning Huvudfönster - JFrame JFrame är en container, i vilken vi lägger Components JMenuBar En menyrad JMenu En meny JMenuItem Ett menyelement
18 Sammanfattning, forts... JFrame har en default layout manager som heter BorderLayout NORTH W E E A S CENTER S T T SOUTH
19 Java-concept och Swing 2 It Don't Mean a Thing If It Ain't Got That Swing
20 LayoutManager JFrame har en default layout manager som heter BorderLayout NORTH W E E A S CENTER S T T SOUTH
21 BorderLayout I NORTH och SOUTH tar komponenter maximal bredd men behåller sin föredragna höjd. I WEST och EAST tar komponenter maximal höjd men behåller sin föredragna bredd. I CENTER växer komponenter på alla bredder
22 BorderLayout - example
23 FlowLayout Vi kan ändra layout för en frame: frame.setlayout(new FlowLayout()); FlowLayout lägger ut komponenter i rad i den ordning vi anger. Från höger till vänster och om de inte får plats på en rad, så fortsätter man på en ny rad, centrerat.
24 FlowLayout - exempel Komponenterna behåller sin föredragna storlek.
25 GridLayout - ett rutnät Komponenter placeras ut i ordning, vänster till höger enligt kolumner och rader. Komponenter växer åt alla håll om fönstret förstoras.
26 Kombinera olika layouter Ofta vill man ha lite olika layout på olika delar. Paneler är här användbara. En panel är bara en yta som kan innehålla komponenter. Panelen kan ha en annan layout än fönstret.
27 Exempel - miniräknare Idé: Fönstret har BorderLayout och vi lägger displayen i NORTH. Vi lägger knapparna i CENTER. Ingen logik, bara exempel på layout här!
28 Calculator - example
29 Kodsnuttar från Calculator JFrame frame = new JFrame("Pocket calculator"); JTextField display = new JTextField(20); JPanel buttons=new JPanel(); buttons.setlayout(new GridLayout(0,4)); // 4 cols, as many rows as needed JButton button9 = new JButton("9"); // and so on... buttons.add(button7); buttons.add(button8); buttons.add(button9); buttons.add(buttondiv); // First row! // and so on frame.add(display, BorderLayout.NORTH); frame.add(buttons, BorderLayout.CENTER);
30 Sammanfattning BorderLayout - Smala ytor i N,W,S,E, bred yta i CENTER FlowLayout - Allt i en rad, fyller på mer fler rader centrerat GridLayout - kolumner och rader Layouter går att kombinera, t ex med paneler
31 Sammanfattning komponenter Vi har sett: JButton - en knapp Panel - en tom yta att lägga andra komponenter i JTextField - ett textinmatningsfält (Första filmen såg vi också menyrader, menyer och menyelement i)
32 Java-concept och Swing 3 Papa s got a brand new bag GridBagLayout
33 En lite krångligare/kraftfullare layout GridBagLayout är betydligt kraftfullare än de vi sett hittills. Kraftfull betyder dock ofta krångligare att använda...
34 GridBagLayout - have it your way Man specificerar precis hur komponenter ska placeras ut och var: gridx, gridy - vilken cell? 0,0 är högst upp, tv gridwidth, gridheight - hur stor plats? fill - om komponenten skalas om, hur göra? (det finns mer men ovanstående är basic ;-) )
35 GridBagLayout - en snyggare calc! Vi försöker härma den här: Display: 2 rader, 6 kolumner = ska vara två knappar bred
36 Calc copycat
37 Calculator - kodfragment // En JFrame har en ContentPane som är en Container Container pane = frame.getcontentpane(); pane.setlayout(new GridBagLayout()); // Skapa ett constraints-object GridBagConstraints c = new GridBagConstraints(); // Sätt egenskaper för c: c.weightx=1; c.weighty=1; c.gridwidth = 6; c.gridheight = 2; c.gridx = 0; c.gridy = 0; JTextPane display = new JTextPane(); pane.add(display, c); // add i klassen Container
38 Metoden add i Container public void add(component comp, Object constraints) Adds the specified component to the end of this container. Also notifies the layout manager to add the component to this container's layout using the specified constraints object.
39 Knapparna i första raden JButton button7 = new JButton(" 7 "); c.gridx = 0; c.gridy = 3; pane.add(button7, c); JButton button8 = new JButton(" 8 "); c.gridx = 1; c.gridy = 3; pane.add(button8, c); JButton button9 = new JButton(" 9 "); c.gridx = 2; c.gridy = 3; pane.add(button9, c); JButton buttondiv = new JButton(" / "); c.gridx = 3; c.gridy = 3; pane.add(buttondiv, c); JButton buttonclear = new JButton(" C "); c.gridx = 4; c.gridy = 3; pane.add(buttonclear, c); JButton buttondel = new JButton(" <x"); c.gridx = 5; c.gridy = 3; pane.add(buttondel, c);
40 Likamedknappen är bredare JButton buttonequals = new JButton(" = "); c.gridwidth = 2; // Två knappar bred c.gridheight = 1; c.gridx = 4; c.gridy = 6; pane.add(buttonequals, c);
41 Java-concept och Swing 4 Refactoring
42 Upprepning av liknande kod // " sym " [ x ] [ y ] pane.add JButton button7 = new JButton(" 7 "); c.gridx = 0; c.gridy = 3; pane.add(button7, c); JButton button8 = new JButton(" 8 "); c.gridx = 1; c.gridy = 3; pane.add(button8, c); JButton button9 = new JButton(" 9 "); c.gridx = 2; c.gridy = 3; pane.add(button9, c); JButton buttondiv = new JButton(" / "); c.gridx = 3; c.gridy = 3; pane.add(buttondiv, c); JButton buttonclear = new JButton(" C "); c.gridx = 4; c.gridy = 3; pane.add(buttonclear, c); JButton buttondel = new JButton(" <x"); c.gridx = 5; c.gridy = 3; pane.add(buttondel, c); // OSV (detta vara bara första raden med 6 knappar...)
43 Refactoring - lyft ut upprepning private static GridBagConstraints c = new GridBagConstraints(); private static JFrame frame = new JFrame("Pocket calculator"); private static void addbutton(string sym, int x, int y){ } Container pane = frame.getcontentpane(); c.gridx = x; c.gridy = y; pane.add(new JButton(sym), c);
44 Vinsten? Mer kompakt kod // First row: addbutton(" 7 ",0,3); addbutton(" 8 ",1,3); addbutton(" 9 ",2,3); addbutton(" / ",3,3); addbutton(" C ",4,3); addbutton(" <x",5,3); // Second row: addbutton(" 4 ",0,4); addbutton(" 5 ",1,4); addbutton(" 6 ",2,4); addbutton(" * ",3,4); addbutton(" ( ",4,4); addbutton(" ) ",5,4); // Third row: addbutton(" 1 ",0,5); addbutton(" 2 ",1,5); addbutton(" 3 ",2,5); addbutton(" - ",3,5); addbutton(" x²",4,5); addbutton("sqrt",5,5); // Last row: addbutton(" 0 ",0,6); addbutton(", ",1,6); addbutton(" % ",2,6); addbutton(" + ",3,6); JButton buttonequals = new JButton(" = "); // = är speciell... c.gridwidth = 2; c.gridheight = 1; // vi kör gamla sättet c.gridx = 4; c.gridy = 6; pane.add(buttonequals, c); // Jämför med tidigare kod för bara första raden!
45 Java-concept och Swing 5 Listen and take action
46 Registrera en lyssnare på en knapp // ActionListener är ett interface med blott en metod // Vi använder en anonym inre klass för att registrera en lyssnare: b.addactionlistener( // Anonym implementation av interfacet ActionListener new ActionListener(){ public void actionperformed(actionevent e){ display.settext(e.getactioncommand()); } });
47 Registrera en lyssnare på en knapp // ActionListener är ett interface med blott en metod // Vi använder en anonym inre klass för att registrera en lyssnare: b.addactionlistener( // Anonym implementation av interfacet ActionListener new ActionListener(){ public void actionperformed(actionevent e){ display.settext(e.getactioncommand()); } }); // Ett ActionEvent från en JButton har knappens text som actioncommand()
Föreläsnings 11 - GUI, Händelsestyrda program, MVC
Föreläsnings 11 - GUI, Händelsestyrda program, MVC Josef Svenningsson Tisdag 20/11 Boken Denna föreläsning går igenom följande sektioner i boken: 10.1 och 10.2 11.1 Notera att kapitel 11 inte finns i boken
Föreläsning 15 (16) Historik (java.awt) Historik (javax.swing) Introduktion till Swing
Föreläsning 15 (16) Introduktion till Swing Historik (java.awt) JDK 1.0 AWT (Abstract Window Toolkit) Paket för gränssnittsprogrammering Har en del nackdelar: Använder s.k. native code Stödjer endast komponenter
Mer om grafiska komponenter. Händelsestyrda program
Layout Managers TDA143 I1 Programmerade system Föreläsning 14 (OH-bilder 10) Mer om grafiska komponenter. Händelsestyrda program Utplaceringen av komponenter i en behållare styrs med en Layout Manager.
SMD091 Lektion 9. Definition. Inkapsling. Lite repetition. Grafik. Gränssnitt Definition och Implementation. Sammansättning... Implementation.
SMD091 Lektion 9 Inkapsling Lite repetition Grafik 1 2 Gränssnitt Definition och Implementation Sammansättning... Definition...är ofta det bästa sättet att använda funktionalitet i andra klasser. Ratt
ITK:P1 Föreläsning 4. Grafiska gränssnitt i Java. AWT-komponenter
ITK:P1 Föreläsning 4 Grafiska gränssnitt och händelsehantering 1 DSV Peter Mozelius Grafiska gränssnitt i Java Efterfrågan på program med grafiskt gränssnitt har ökat avsevärt de senaste åren I Java finns
Swing. MER Java Foundation Classes (JFC) Hur lära sig? Vad är farorna. LayoutManagers. Exempel på några av komponenterna
MER Java Foundation Classes (JFC) Swing Swing Många klasser Vettigt att lära sig dem utantill - Tror inte det -... men det kan vara bra att ha en liten överblick över vad som finns - Idag (och med fortsättning
Swing. MER Java Foundation Classes (JFC) Vad är farorna. Hur lära sig? LayoutManagers. Exempel på några av komponenterna
MER Java Foundation Classes (JFC) Swing Swing Många klasser" Vettigt att lära sig dem utantill" - Tror inte det" -... men det kan vara bra att ha en liten överblick över vad som finns" - Idag (och med
2I1049 Föreläsning 8. Grafiska gränssnitt i Java. AWT-komponenter. Grafiska gränssnitt, Java interface och händelsehantering
2I1049 Föreläsning 8 Grafiska gränssnitt, Java interface och händelsehantering 1 KTH-MI Peter Mozelius Grafiska gränssnitt i Java Efterfrågan på program med grafiskt gränssnitt har ökat avsevärt de senaste
Denna vecka. Idag. Grafiskt användarsnitt. Vi kommer att se
1 F18-20-2006 Denna vecka Måndag: Ett komplext problem Tisdag: Lektion. Kväll: Essäfrågan distribueras via webben. Dead-line onsdag 17 maj, kl 12.00. Inlämning elektroniskt och på papper. Onsdag: Grafik
OOP Objekt-orienterad programmering
OOP F16:1 OOP Objekt-orienterad programmering Föreläsning 16 Grafiska användargränssnitt, GUI Ytor Komponenter Layout-managers Lyssnare GUI - Graphical User Interface OOP F16:2 Man skapar en yta (ett fönster)
MVC-mönstret. model-view-control i Swing
MVC-mönstret model-view-control i Swing MVC Tanken bakom MVC (model view control) är att separera uppgifter i ett program från varandra. Model - Den data som behandlas View - Hur användargränssnittet ser
Detta dokument är ett exempel, cirka andra hälften av en tentamen för TDA545 Objektorienterad programvaruutveckling
Detta dokument är ett exempel, cirka andra hälften av en tentamen för TDA545 Objektorienterad programvaruutveckling Fulltentamen vitsord: 3=28p, 4=38p, 5= 48p, max 60p. Max 30p i denna halvtentamen Hjälpmedel:
OOP Objekt-orienterad programmering
OOP F16:1 OOP Objekt-orienterad programmering Föreläsning 16 Grafiska användargränssnitt, GUI Ytor Komponenter Layout-managers Lyssnare GUI - Graphical User Interface OOP F16:2 Man skapar en yta (ett fönster)
27. GUI Programming. Java. Summer 2008 Instructor: Dr. Masoud Yaghini
27. Java Summer 2008 Instructor: Dr. Masoud Yaghini Until now, you have only used dialog boxes and the command window for input and output. You used JOptionPane.showInputDialog to obtain input, and JOptionPane.showMessageDialog
TDDE10 m.fl. Objektorienterad programmering i Java Föreläsning 7 Erik Nilsson, Institutionen för Datavetenskap, LiU
TDDE10 m.fl. Objektorienterad programmering i Java Föreläsning 7 Erik Nilsson, Institutionen för Datavetenskap, LiU På denna föreläsning: Grafiskt användargränssnitt, Swing Layout och komponenter Göra
Grundläggande programmering, STS 1, VT Sven Sandberg. Föreläsning 18
Grundläggande programmering, STS 1, VT 2007. Sven Sandberg Föreläsning 18 Igår: Genomgång av dugga Rekursion Idag och på måndag: Om essän Lite, lite teori om konstanter Grafiska användargränssnitt Grundläggande
ITK:P1 Lektion 4. Lektion 4. Lektion 4. Att implementera en spelidé i Java. DSV Peter Mozelius
ITK:P1 Att implementera en spelidé i Java DSV Peter Mozelius import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Lektion4 extends JFrame implements ActionListener { final int
Objektorienterad Programmering DAT043. Föreläsning 5 29/1-18 Moa Johansson (delvis baserat på Fredrik Lindblads material)
Objektorienterad Programmering DAT043 Föreläsning 5 29/1-18 Moa Johansson (delvis baserat på Fredrik Lindblads material) 1 Repetition: Arv En subklass ärver alla variabler och metoder från sin superklass.
Malmö högskola 2007/2008 Teknik och samhälle
Laboration Gui Avsikten med denna laboration är att du ska träna på att bygga grafiska användargränssnitt. Spara dina resultat i paketet laborationgui. Längst bak i laborationen finns fullständiga lösningar
Föreläsning 3: Händelsestyrda program och användargränssnitt
(2 september 2015 F3.1 ) Föreläsning 3: Händelsestyrda program och användargränssnitt Idag Från sekventiella till händelsestyrda program Lyssnare Kontroller Layout för ordning av kontroller (2 september
Föreläsning 13: Swing (GUI), händelser, timer
TDA 545: Objektorienterad programmering Föreläsning 13: Swing (GUI), händelser, timer GUI = graphical user interface Magnus Myréen Chalmers, läsperiod 1, 2015-2016 Idag Idag: grafiska gränssnitt; läs kap
Föreläsning 10. Mer om grafiska komponenter Händelsestyrda program. Layout Managers. Exempel: FlowLayout. Klassen FlowLayout
Layout Managers Föreläsning 10 Mer om grafiska komponenter Händelsestyrda program Föreläsn Utplaceringen av komponenter i en behållare styrs med en layout manager. Det finns olika layout managers: FlowLayout
Projekt 2 XL. Observer-mönstret
Projekt 2 XL Objektorienterad modellering och diskreta strukturer Inför nästa projekt Lennart Andersson Reviderad 2011 10 24 2011 OMD 2011 F15-1 Schema designmöten OMD 2011 F15-2 Observer-mönstret 2 och
Lösningar för tenta 3 DAT043,
Lösningar för tenta 3 DAT043, 2018-08-22. Uppgift 1 class Person{ public String förnamn; public String efternamn; public int ålder; private double längd; private double vikt; public Person(String förnamn,
Modelsvar för Tentamen för Objektorienterad programvaruutveckling, TDA545
Data och Informationsteknik / Computer Science and Engineering Chalmers University of Technology and University of Gothenburg Magnus Myréen Modelsvar för Tentamen för Objektorienterad programvaruutveckling,
Föreläsning 10. Mer om grafiska komponenter Händelsestyrda program. Layout Managers
Föreläsning 10 Mer om grafiska komponenter Händelsestyrda program Layout Managers Utplaceringen av komponenter i en behållare styrs med en layout manager. Det finns olika layout managers: FlowLayout GridLayout
Objektorienterad Programkonstruktion. Föreläsning 3 9 nov 2015
Objektorienterad Programkonstruktion Föreläsning 3 9 nov 2015 Kursnämnd Namn kommer... UML: Klassdiagram UML: Relationer Ärver från superklass Implementerar gränssnitt Dubbelriktad eller oriktad relation
Dagens program. Programmeringsteknik och Matlab. Vad är arv? Vi ärver från GregorianCalendar. Kan vi bygga vidare på existerande klasser?
Programmeringsteknik och Matlab Övning 6 Dagens program Övningsgrupp 2 (Sal Q22/E32) Johannes Hjorth hjorth@nada.kth.se Rum 4538 på plan 5 i D-huset 08-790 69 02 Kurshemsida: http://www.nada.kth.se/kurser/kth/2d1312
Grafiska användargränsnitt i Java. Föreläsning 7 Innehåll. Använda klasspaketet Swing. Klasspaket i Java. Grafiska användargränsnitt i Java
Föreläsning 7 Innehåll Grafiska användargränsnitt i Java Grafiska användargränsnitt i Java Komponenter (fönster, knappar, ) Layout Händelsehantering (Hur man får någonting att hända när användaren t.ex.
Laboration 15 Grafiskt användargränssnitt
Laboration 15 Grafiskt användargränssnitt Avsikten med denna laboration är att du ska träna på att skriva program som använder grafiskt användargränssnitt, dvs program som använder grafiska komponenter
Programmeringsteknik II - HT18. Föreläsning 6: Grafik och händelsestyrda program med användargränssnitt (och Java-interface) Johan Öfverstedt
Programmeringsteknik II - HT18 Föreläsning 6: Grafik och händelsestyrda program med användargränssnitt (och Java-interface) Johan Öfverstedt 18-09-28 1 Förra gången: Arv och klasshierarkier Vi såg hur
1 Grafiska komponenter
1 Grafiska komponenter Vi har sett exempel på hur vi kan arbeta med enkla dialogrutor med klasser JOptionPane och hur vi kan rita med en rityta, Graphics instans, i en Java applet. Att skapa ett grafiskt
Lektion Händelsehanterare
Lektion Händelsehanterare Händelsehanterare kallas även lyssnare. En lyssnare har som uppgift att ta hand om olika händelser som kan inträffa. För att lyssnaren skall reagera på händelser måste den registreras
2I1073 Lektion 2. Lektion 2a. Lektion 2a. Servlets, säkerhet, och filhantering. import java.io.*; import javax.servlet.*; import javax.servlet.http.
2I1073 Lektion 2 Servlets, säkerhet, och filhantering KTH-MI Peter Mozelius import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class Lektion2a extends HttpServlet { public void
Grafiska komponenter.
Grafiska komponenter. Kap J5-1 Grafiska användargränssnitt är det moderna alternativet till traditionell terminal-i/o. GUI-programmering bygger på en händelsestyrd flödeskontroll. I Java utförs GUI-programmeringen
Objektorienterad Programkonstruktion. Föreläsning 3 7 nov 2016
Objektorienterad Programkonstruktion Föreläsning 3 7 nov 2016 Klass/instans Med hjälp av nyckelordet static kan vi bestämma att en metod eller ett fält ska tillhöra själva klassen i stället för en specifik
Efterhand fick vi ett system som vi tyckte var väl anpassat. Vi renskrev kladden (nedan) och började programmera menyerna.
Övning 3 - grupp 10 Övningen gick ut på att sortera givna funktionerna till ett ritprogram in i en meny. Den startsidan vi fick var blank och såg ut som nedan. I denna skulle vi skapa en meny med hjälp
LiTHehack? Här? lithehack se koma Tisdagar och torsdagar
0 Java och Swing LiTHehack? Här? @ kontakt /. lithehack se. lithehack se koma -, 17 19 Tisdagar och torsdagar Idag grafik menyer kortkomandon pop up-menyer submenyer Skansholm Java direkt upplaga 6 eller
PROG2 Tenta 2013-06-07 Gäller SP:PROG2, DSK2:PROG2, FK:PROG2, FK:OOP, DSV1:P2 och ITK:P2
DSV SU/KTH sid 1 (6) PROG2 VT13 PROG2 Tenta 2013-06-07 Gäller SP:PROG2, DSK2:PROG2, FK:PROG2, FK:OOP, DSV1:P2 och ITK:P2 Tentan består av tre uppgifter. Max poäng är 38. För betyget E (godkänd) krävs minst
Grafiskt användargränssnitt (GUI-Graphical User Interface) intro Komponenter
Grafiskt användargränssnitt (GUI-Graphical User Interface) intro Komponenter De komponenter som vi ska titta lite närmare på den här gången är paneler (JPanel), knappar (JButton), textfält (JTextField).
Laboration 24 Databasen MySQL och java
Laboration 24 Databasen MySQL och java Avsikten med denna laboration är att du ska hämta information ur en eller flera tabeller och visa resultatet i en JTable-komponent. Du ska ändra innehållet i tabellen
ID1004 Laboration 3, 5-6 November 2012
18-okt-2012/FK ID1004 Laboration 3, 5-6 November 2012 Labben bör göras individuellt. Beräknad tid ca 2 timmar. Instruktionen antar att labben utförs i datasal, med hjälp av den integrerade utvecklingsmiljön
Arv och Grafiska Användargränssnitt
Arv och Grafiska Användargränssnitt Bildserie 5 Plattform Java är inte bara ett språk utan en s.k. plattform - Förutom språket finns en otrolig mängd färdiga klasser samlade i bibliotek (kallas också API:n,
Fortsättningskurs i programmering F 5. GUI händelsehantering - undantagshantering Hugo Quisbert 20130205 AWT. Paket för hantering av grafik
Fortsättningskurs i programmering F 5 GUI händelsehantering - undantagshantering Hugo Quisbert 20130205 1 Abstract Window Toolkit Paket för hantering av grafik dvs skapa grafisk användargränssnitt java.awt
Objektorienterad Programmering DAT043. Föreläsning 6 30/1-18 Moa Johansson (delvis baserat på Fredrik Lindblads material)
Objektorienterad Programmering DAT043 Föreläsning 6 30/1-18 Moa Johansson (delvis baserat på Fredrik Lindblads material) 1 Repetion: En GUIapplikation med Swing Huvudklass implementerar Runnable - metoden
Subklasser och arv Inledning till grafik (JFrame och JPanel). Något om interface. Objektorienterad programvaruutveckling GU (DIT011) Subklasser
Institutionen för Datavetenskap Göteborgs universitet HT2009 DIT011 Objektorienterad programvaruutveckling GU (DIT011) Föreläsning 5 Innehåll Subklasser och arv Inledning till grafik (JFrame och JPanel).
Lösningsförslag till tentamen
Uppgift 1 a) Falskt! Bitmönstret är 10010111 b) Falskt! Memory Manager handhar Lösningsförslag till tentamen 170609 c) Falskt. En trojansk häst är ett program i förklädnad. Det är således program som på
070602 kl 10.15-15.15
Malmö högskola 1 Tentamen på kursen DA7800, Programmering med Java del II 070602 kl 10.15-15.15 Tillåtna hjälpmedel: En valfri Javabok Vid bedömning av lösningarna tas hänsyn till om dessa uppfyller de
Lösningar till Fiktiv Tentamen på kursen. 2D4135 Objektorienterad programmering, design och analys med Java vt2004. Teoridel
Lösningar till Fiktiv Tentamen på kursen 2D4135 Objektorienterad programmering, design och analys med Java vt2004 Teoridel T1) (4p) Förklara kort följande grundläggande begrepp inom objektorienterad programmering:
Objektorienterad programmering med Java Swing. Programexempel. Swing och AWT AWT. = Abstract windowing toolkit
Swing och AWT Objektorienterad programmering med Java Swing Sven-Olof Nyström Uppsala Universitet March 14, 2006 Skansholm: Kapitel 6 AWT = Abstract windowing toolkit använder värddatorns fönstersystem
Grafiska användargränssnitt i Java
TDDD78, TDDE30, 729A85 jonas.kvarnstrom@liu.se 2018 Grafiska användargränssnitt i Java En genomgång av de viktigaste begreppen Alternativ 2 Från början fanns AWT, Abstract Window Toolkit Stora delar har
Tentamen FYTA11 Javaprogrammering
Lunds universitet FYTA11 Institutionen för Teoretisk fysik HT 10 Tentamen FYTA11 Javaprogrammering Måndag 10:e januari 2011, 09:00 13:00 Instruktioner Hjälpmedel: enkla ritverktyg och Javadoc-genererade
Kort om klasser och objekt En introduktion till GUI-programmering i Java
Kort om klasser och objekt En introduktion till GUI-programmering i Java Klasser En klass är en mall för hur man ska beskriva på något. Antag att vi har en klass, Bil. Den klassen innehåller en lista på
Rita Egna Bilder, Timer
Rita Egna Bilder, Timer Josef Svenningsson November 27, 2012 Grafik Varje gång ett fönster behöver ritas om, pga av att det flyttas eller varit övertäckt, anropas automatiskt en metod som har namnet paintcomponent.
Swing. MER Java Foundation Classes (JFC) Vad är farorna. Hur lära sig? LayoutManagers. Exempel på några av komponenterna.
Swing Många klasser MER Java Foundation Classes (JFC) Swing Jättemånga klasser Vettigt att lära sig dem utantill Tror inte det Hur lära sig? Principerna Model - view - controller Observer - observed Öva,
Två designmönster, MVC och Observer/Observable. Objektorienterad programvaruutveckling GU (DIT011)
Institutionen för Datavetenskap Göteborgs universitet HT2009 DIT011 Objektorienterad programvaruutveckling GU (DIT011) Innehåll Föreläsning 8 Två designmönster, MVC och Observer/Observable. Designrekommendation
Arv, Grafiska användaregränssnitt och Inre klasser! Förelasning 12!! TDA540 Objektorienterad Programmering!
Arv, Grafiska användaregränssnitt och Inre klasser! Förelasning 12!! TDA540 Objektorienterad Programmering! Mer om Arv Har tidigare konstaterat att alla klasser ärver (inherit) klassen Object om inget
Lösningsförslag till tentamen
Uppgift 1 Lösningsförslag till tentamen 110317 a) Sant. b) Falskt. I ett RAM-minne är åtkomsttiden densamma för alla minnesadresser. c) Falskt. TCP är ett protokoll på transportlagret. d) Falskt. Binärsökning
DEL 1 För att få godkänt på tentan (betyg 3) måste du lösa minst fem av sju uppgifter i denna del.
DAT043 Objektorienterad Programmering Tentamen 2018-03-10 Tid: 08.30-12.30 Ansvarig lärare: Moa Johansson Tfn: 031 772 10 78 Ansvarig lärare besöker tentamenssalarna ca klockan 9.30 samt 11.00. Tentamensregler
Lab5 för prgmedcl04 Grafik
Lab5 för prgmedcl04 Grafik Viktigt läs detta först:den här labblydelsen är ganska lång, detta betyder inte att labben tar lång tid.en hel del av lydelsen är anvisning om hur man går tillväga för att kunna
Modelsvar för Tentamen för Objektorienterad programvaruutveckling, TDA545
Data och Informationsteknik / Computer Science and Engineering Chalmers University of Technology and University of Gothenburg Magnus Myréen Modelsvar för Tentamen för Objektorienterad programvaruutveckling,
Grafiska användargränssnitt i Java
TDDD78, TDDE30, 729A85 jonas.kvarnstrom@liu.se 2019 Grafiska användargränssnitt i Java En genomgång av de viktigaste begreppen Alternativ 2 Från början fanns AWT, Abstract Window Toolkit Stora delar har
Repetitionsföreläsning 2: Quiz & problemlösning med swing Inget nytt material.
TDA 545: Objektorienterad programmering Repetitionsföreläsning 2: Quiz & problemlösning med swing Inget nytt material. Magnus Myréen Chalmers, läsperiod 1, 2015-2016 Idag En quiz! tinyurl.com/tda545quiz
LÖSNINGSFÖRSLAG Programmeringsteknik För Ing. - Java, 5p
UMEÅ UNIVERSITET Datavetenskap 010530 LÖSNINGSFÖRSLAG Programmeringsteknik För Ing. - Java, 5p Betygsgränser 3 21,5-27 4 27,5-33,5 5 34-43 Uppgift 1. (4p) Hitta de fel som finns i nedanstående klass (det
Föreläsning 12. Föreläsning 12. Rörliga figurer Klassen Timer Undantag Något om applets. Rörliga appletsfigurer Klassen Timer Undantag
Föreläsning 12 Föreläsning 12 Rörliga figurer Klassen Timer Undantag Något om applets Rörliga appletsfigurer Klassen Timer Undantag Något om applets Klassen javax.swing.timer I Swing finns en klass Timer
TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 3
TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 3 Laboration 3 Visualisering (och implementering) av sortering Exempel på grafik (med Swing-paketet) Frågor 1 Laboration 3 Visualisering
Swing. MER Java Foundation Classes (JFC) Hur lära sig? Vad är farorna. Exempel på några av komponenterna. LayoutManagers.
Swing Många klasser MER Java Foundation Classes (JFC) Swing Vettigt att lära sig dem utantill Tror inte det... men det kan vara bra att ha en liten överblick över vad som finns Hur lära sig? Principerna
Kungliga Tekniska Högskolan Ämneskod 2D4134 Nada Tentamensdag 2001 - maj - 19 Tentamen i Objektorientering och Java Skrivtid 5 h
Kungliga Tekniska Högskolan Ämneskod 2D4134 Nada Tentamensdag 2001 - maj - 19 Tentamen i Objektorientering och Java Skrivtid 5 h Antalet uppgifter : 2 (20p + 20p = 40 p) ) Lärare, jourhavande lärare :
Lösningsförslag till tentamen
till tentamen 1 (5) Kurs Objektorienterad programmering Kursbeteckning DAT042 Program D2, TKDAT Läsår 2012/2013, lp 1 Examinator Uno Holmer Uppgift 1 (10 p) Ingen lösning ges. Se kurslitteraturen. Uppgift
Labbinstruktioner för Java/Swing
Labbinstruktioner för Java/Swing Grafik- och interaktionsprogrammering 2008 Martin Berglund Allmänt Dessa instruktioner är på intet sett den enda möjliga lösningen på labben, tvärtom finns
Modellsvar för Tentamen för Objektorienterad programvaruutveckling, TDA545
Data och Informationsteknik / Computer Science and Engineering Chalmers University of Technology and University of Gothenburg Magnus Myréen Modellsvar för Tentamen för Objektorienterad programvaruutveckling,
ITK:P1 Föreläsning 8. Verktyget Javadoc. Kommentarer för Javadoc. Multimedia för spelkonstruktion
ITK:P1 Föreläsning 8 Multimedia för spelkonstruktion 1 DSV Peter Mozelius Verktyget Javadoc De flesta program behöver dokumentation I Java finns ett verktyg som genererar HTML- dokumentation på ett enkelt
Lösningsförslag tentamen FYTA11 Java
Lunds universitet FYTA11 Institutionen för Teoretisk fysik HT 10 Lösningsförslag tentamen FYTA11 Java Måndag 10:e januari 2011, 09:00 13:00 Instruktioner Hjälpmedel: enkla ritverktyg och Javadoc-genererade
Kungliga Tekniska Högskolan Ämneskod 2D4134 Nada Tentamensdag 2001 - aug - 23 Tentamen i Objektorientering och Java Skrivtid 5 h
Kungliga Tekniska Högskolan Ämneskod 2D4134 Nada Tentamensdag 2001 - aug - 23 Tentamen i Objektorientering och Java Skrivtid 5 h Antalet uppgifter : 3 (15p + 20p + 5p = 40 p) Lärare, jourhavande lärare
Grafiska användargränssitt och händelsehantering
Grafiska användargränssitt och händelsehantering i Java GUI i Java AWT, Abstract Window Toolkit, java.awt Använder systemets GUI-komponeneter Swing, javax.swing Komponenter, förutom fönster, renderas av
Modellsvar för Tentamen för Objektorienterad programvaruutveckling, TDA545
Data och Informationsteknik / Computer Science and Engineering Chalmers University of Technology and University of Gothenburg Magnus Myréen Modellsvar för Tentamen för Objektorienterad programvaruutveckling,
Frivillig Java-swing-Graphics-lab Programmeringsteknik MN1 vt02
Frivillig Java-swing-Graphics-lab Programmeringsteknik MN1 vt02 Denna laboration är frivillig och syftar till att låta dig lära mer om grafik i java. Labben är ganska grundlig och går igenom vad du skall
LYCKA TILL!!! TENTAMEN I Programmeringsteknik F1. Var vänlig och läs detta: CTH 2007-12-18 TIN 211. DATAVETENSKAP Göteborg (2007-12-17) TENTAMEN
DATAVETENSKAP Göteborg (2007-12-17) TENTAMEN CTH 2007-12-18 TIN 211 TENTAMEN I Programmeringsteknik F1 DAG: TISDAG TID: 14.00-18.00 SAL: M Ansvarig: Erland Holmström tel. 1007, hem 270358. Resultat: Anslås
lgammal2.txt // Lösningar till gammal tentamen // Uppgift 1 a
// Lösningar till gammal tentamen // Uppgift 1 a /* Felet beror på att det är klassen på referensen som avgör vilka metoder man får köra på ett objekt, inte klassen på objektet. På rad 5 i klassen C har
Kungliga Tekniska Högskolan Ämneskod 2D4134 Nada Tentamensdag 00 - juni - 17 Tentamen i Objektorientering och Java Skrivtid 5 h
Kungliga Tekniska Högskolan Ämneskod 2D4134 Nada Tentamensdag 00 - juni - 17 Tentamen i Objektorientering och Java Skrivtid 5 h Antalet uppgifter : 4 (12p+8p+12p+8p = 40p) Lärare, jourhavande lärare :
TENTAMEN: Objektorienterad programmering. Läs detta! Skriv ditt idnummer på varje blad (så att vi inte slarvar bort dem).
1 (13) TENTAMEN: Objektorienterad programmering Läs detta! Uppgifterna är inte ordnade efter svårighetsgrad. Börja varje uppgift på ett nytt blad. Skriv ditt idnummer på varje blad (så att vi inte slarvar
Grafiska användargränssnitt i Java
jonas.kvarnstrom@liu.se 2016 Grafiska användargränssnitt i Java En genomgång av de viktigaste begreppen Alternativ 2 Från början fanns AWT, Abstract Window Toolkit Till stor del ersatt av Swing: Mer omfattande,
Lösningsförslag till tentamen
Uppgift 1 a) Sant. b) Sant. c) Sant. Lösningsförslag till tentamen 170818 d) Falskt. IPv6 anger en IP-adress med 132 bitar. e) Falskt. Spoofing åsyftar användning av förfalskad eller lånad identitet på
5 Användargränssnitt. 5.1 AWT och Swing
5 Användargränssnitt 5.1 AWT och Swing AWT (Abstract Windowing Toolkit) är ett omfattande klassbibliotek för hantering av användargränssnitt i Java. Det är gjort så att applikationerna blir helt plattformsoberoende
The Last Adventure. Innehåll. Objektorientering. Språket Java. Java - Paket. Java - synlighet. Den sista lektionen. Repetition.
Innehåll The Last Adventure Den sista lektionen Repetition Examination Slutar 14:45 (minnesstund) Många saker "flashar" förbi - hojta Objektorientering Språket Java Class Object Inheritance Polymorphism
Swing. MER Java Foundation Classes (JFC) Vad är farorna. Hur lära sig? Exempel på några av komponenterna. LayoutManagers.
Swing Många klasser MER Java Foundation Classes (JFC) Swing Vettigt att lära sig dem utantill Tror inte det... men det kan vara bra att ha en liten överblick över vad som finns Idag (och med fortsättning
PROG2 Tenta Gäller SP:PROG2, DSK2:PROG2, FK:PROG2, FK:OOP, DSV1:P2 och ITK:P2
DSV SU/KTH sid 1 (7) PROG2 PROG2 Tenta 2014-06-03 Gäller SP:PROG2, DSK2:PROG2, FK:PROG2, FK:OOP, DSV1:P2 och ITK:P2 Tentan består av tre uppgifter. Max poäng är 38. För betyget E (godkänd) krävs minst
Lösningar till tentamen i EDAF25
Lösningar till tentamen i EDAF25 1 juni 2017 Lösning 1 Se figur 1. Figure 1: Tillståndsdiagram espressomaskin Lösning 2 (a) Kompositmönstret (b) Se figur 2 (c) Se figur 3 : Square : Drawing : Group : Circle
SI-pass 4. Johan Brook och Jesper Persson. 25 september 2012. Diskutera och svara på om påståendena nedan är äkta sanningar eller listiga lögner.
SI-pass 4 Johan Brook och Jesper Persson 25 september 2012 1. Sant eller falskt? Diskutera och svara på om påståendena nedan är äkta sanningar eller listiga lögner. Interfaces i Java kan innehålla privata
PROG2 Tenta Gäller SP:PROG2, DSK2:PROG2, FK:PROG2, FK:OOP, DSV1:P2 och ITK:P2
DSV SU/KTH sid 1 (7) PROG2 PROG2 Tenta 2014-01-17 Gäller SP:PROG2, DSK2:PROG2, FK:PROG2, FK:OOP, DSV1:P2 och ITK:P2 Tentan består av tre uppgifter. Max poäng är 38. För betyget E (godkänd) krävs minst
Föreläsning 10. ADT:er och datastrukturer
Föreläsning 10 ADT:er och datastrukturer ADT:er och datastrukturer Dessa två begrepp är kopplade till varandra men de står för olika saker. En ADT (abstrakt datatyp) är just abstrakt och är inte kopplad
Properties. Användbara metoder som kan anropas i propertychanged:
Properties Ett objekt kan ha vissa egenskaper (som beskrivs med instansvariabler). En enkel egenskap X avläses och sätts med metoderna getx() och setx(värde). En indexerad egenskap (från t.ex. en array)
DI-institutionen Sid 1 av 6 Hans-Edy Mårtensson Sten Sundin
DI-institutionen Sid 1 av 6 Hans-Edy Mårtensson Sten Sundin TENTAMEN I IKB007 INTERNETPROGRAMMERING MED JAVA för SY2 1999-03-17, kl 14.00-18.00 Hjälpmedel: En lärobok i Java programmering Återlämningstillfälle:
Tentamen FYTA11 Javaprogrammering
Lunds universitet FYTA11 Institutionen för Teoretisk Fysik HT 08 Tentamen FYTA11 Javaprogrammering Fredag 9:e januari 2009, 09:00 13:00 Instruktioner Inga hjälpmedel är tillåtna. Behandla högst en uppgift
PROG2 Tenta 2014-05-02 Gäller SP:PROG2, DSK2:PROG2, FK:PROG2, FK:OOP, DSV1:P2 och ITK:P2
DSV SU/KTH sid 1 (6) PROG2 PROG2 Tenta 2014-05-02 Gäller SP:PROG2, DSK2:PROG2, FK:PROG2, FK:OOP, DSV1:P2 och ITK:P2 Tentan består av tre uppgifter. Max poäng är 38. För betyget E (godkänd) krävs minst
Grafiska användargränssnitt i Java
jonas.kvarnstrom@liu.se 2017 Grafiska användargränssnitt i Java En genomgång av de viktigaste begreppen Alternativ 2 Från början fanns AWT, Abstract Window Toolkit Till stor del ersatt av Swing: Mer omfattande,
För att hitta filen gå till mappen NetBeansProjects. Välj undermappen med rätt projekt, och sedan undermapp dist. Där ligger.jar-filen.
Java utan netbeans Du har gjort ett program i netbeans Hur exportera det så att andra kan köra det utan att använda netbeans? Välj projektet som main project Högerklicka på det och välj Clean and Build
Tentamen för kursen Objektorienterad programvaruutveckling GU (DIT010)
Tentamen för kursen Objektorienterad programvaruutveckling GU (DIT010) Tid: 2:a september 200, klockan 8:30-12:30. Plats: V Ansvarig lärare: Katarina Blom, tel 772 10 0. Läraren besöker tentamen kl 9:30