Vad är ett Framework? 2203$ ) UHOlVQLQJ. Hollywood. Frameworks (FW) Frameworks. Konstruktion av fönster, gränssnitt och användning av grafik i Java
|
|
- Carina Öberg
- för 5 år sedan
- Visningar:
Transkript
1 2203$ ) UHOlVQLQJ Frameworks. Konstruktion av fönster, gränssnitt och användning av grafik i Java Innehåll, kort om: Frameworks Grafik med främst AWT Grafiska interaktiva applikationer Händelsehantering Vad är ett Framework? Ett framework (FW) beskriver hur ett problem skall brytas ner Ett FW beskriver inte bara hur klasserna utan också hur deras instanser samverkar definierar invarianter som objekten måste dela anger också hur dom skall användas Ett FW består typiskt av en uppsättning abstrakta klasser och gränssnitt som beskriver en semikomplett applikation som sedan specialiceras för att konstruera konkreta applikationer Ett framework påtvingar en modell som programmeraren måste anpassa sig till Dom flesta FW använder designmönster som Template Method och Strategy previous next previous next 3 Frameworks (FW) Ett FW är centralt för konstruktion av tex interaktiva grafiska applikationer Varför ett framework? svårt att tränga in i toolkits, eller följa givna designregler Hollywood Omvänd kontroll Ibland talar man om Hollywood-principen i ett framework Ring inte oss vi ringer er! återanvändbar applikationsdesign eller delsystem representeras av ett antal abstrakta klasser och definitioner av hur dessa klasser samarbetar, vilket vägleder programutvecklaren och gör det enklare att konstruera enhetliga gränssnitt och applikationer snabbare mer uniformt Koda med klassbibliotek Användarkod kod i klassbibliotek Koda med framework Framework användarkod previous next 2 previous next 4 Björn Eiderbäck Björn Eiderbäck
2 Exempel på Frameworks i Java Collection Framework För mängdhantering Se Collection-klasserna i Javas tutorial, Framework för grafiska gränssnitt Med bla AWT, Swing mm Se resten av OH-bilderna + Javas tutorial, (Swing) Graphics Några viktiga klasser i java.awt java.awt java.lang Applet Button List Panel Label ScrollPane Dialog Object Component Container Window Frame TextArea java.applet Input/output Framework Strömmar med in- och utmaning Se TextComponent TextField previous next 5 previous next 7 Javas API (Application Programming Interface) Java:s API innehåller bla awt (abstract windowing toolkit) som delvis kan användas som ett Framework som bla stödjer konstruktion av applikationer med fönster Den fundamentala klassen Frame subklassas beteendet ändras, dvs anpassas till dom egna önskemålen, genom att lämpliga metoder skrivs om i den konkreta (egna) subklassen Skapa fönster public class FrameHelloFirst extends Frame { public static void main(string [] args) { FrameHelloFirst frame = new FrameHelloFirst(); frame.setsize(200, 300); //Fönstrets storlek frame.setvisible(true); //Öppna fönstret previous next 6 previous next 8 Björn Eiderbäck Björn Eiderbäck
3 Olika sätt att skapa fönster Använd klassen Frame Vi skapar en klass som använder en Frame för att skapa ett fönster import java.awt.frame; public class Frame1 { public static void main(string args []) { // skapa ett fönster med given titel Frame frame = new Frame("Frame 1"); frame.setsize(300, 400); // fönstrets storlek frame.setvisible(true); // öppna fönstret Definiera utritning Använd "subklass-strategin Skriv över metoden paint(graphics g) Dvs skriv public void paint(graphics g) { // använd g för att rita metoden anropas automatiskt då fönstret behöver ritas om previous next 9 previous next 11 Alternativt kan vi konstruera subklass till Frame public class Frame2 extends Frame { /* om vi vill använda konstruktören med argument måste vi skapa motsvarande konstruktör i den egna klassen */ public Frame2(String s) { super(s); Rita text på fönstret Använd metoden drawstring(string str, int x, int y) i klassen Graphics public void paint(graphics g) { // vi skriver ut fönstrets höjd System.out.println(getHeight()); g.drawstring("här kommer en sträng halvägs ner i y-led", 20, //x-koordinat getheight() / 2); //y-koordinat previous next 10 previous next 12 Björn Eiderbäck Björn Eiderbäck
4 En rutin för att rita lite olika grafik public void paint(graphics g) { int posy; posy = getbounds().height / 3; g.drawstring("man kan 'rita' ut text", 20, posy); //Färg g.setcolor(color.blue); posy = posy + 30; g.drawstring("man kan ändra färgen (och rita figurer)", 20, posy); g.setcolor(color.red); g.drawline(10, 10, 100, posy); g.setcolor(new Color((float) 0.5, (float) 1.0, (float) 0.7)); g.fill3drect(posy, posy, posy + 50, posy + 70, true); previous next 13 och ändra i Frameklassen public class FrameHelloFourth extends Frame { Ball [] thefigures = { new Ball(Color.red, new Point(70, 70), 50), new Ball(Color.blue, new Point(75, 170), 70); public static void main(string [] args) { FrameHelloFourth frame = new FrameHelloFourth(); frame.setsize(200, 300); frame.setlocation(new Point(100, 150)); frame.settitle("med två bollar"); frame.setvisible(true); frame.addwindowlistener(new MyWindowListener()); public void paint(graphics g) { for(int i = 0; i < thefigures.length; i++) { thefigures[i].paint(g); previous next 15 Ett objekt som själv ritar på skärmen public class Ball { Color mycolor; Point position; int radius; public Ball(Color acolor, Point aposition, int aradius) { mycolor = acolor; position = aposition; radius = aradius; public void paint(graphics g) { g.setcolor(mycolor); g.filloval(position.x - radius, position.y - radius, 2 * radius, 2*radius); Vad kan jag rita i Java? I Java 1.1 är ritrutinerna ganska primitiva Man kan endast rita objekt med tjocklek 1 (ett) rita enklare typer av primitiva objekt hantera pixelkartor på ett begränsat sätt Man kan också använda tex färg och sätta klipprektangel I Java 2 (JDK 1.2 och senare) med Java2D har vi fler möjligheter som tex rita splines och andra kurvor ange tjocklek på kanter ange typ av linje (tex rita streckad linjer mm) ange transformationer som skalning, translation och rotation rita genomskinligt eller ange att antialiasing skall användas Idag tittar vi lite på Java 1.1 och den intresserade kan titta på Java 2 på SUNs sidor previous next 14 previous next 16 Björn Eiderbäck Björn Eiderbäck
5 Rita ickefyllda grafiska objekt Några exempel linje gc.drawline(int x1, int y1, int x2, int y2); oval gc.drawoval(int x, int y, int width, int height); rektangel gc.drawrect(int x, int y, int width, int height); polygon gc.drawpolyline(int xpoints[], int ypoints[], int npoints); alternativt gc.drawpolygon(polygon p); Rita med olika färg ändra färg gc.setcolor(color c) rita med XOR-mod, dvs alternera mellan den grafiska kontextens färg och den som ges som argument till metoden gc.setxormode(color c1) previous next 17 previous next 19 Rita fyllda grafiska objekt oval gc.filloval(int x, int y, int width, int height); rektangel gc.fillrect(int x, int y, int width, int height); polygon gc.fillpolygon(int[] xpoints, int[] ypoints, int npoints) eller gc.fillpolygon(polygon p) Rita bilder Hämta bild från fil (från en Frame måste vi använda gettoolkit, från en applet behövs inte detta) Image image = gettoolkit().getimage(imagefile); Rita bilden på grafiska kontexten (skalad att passa in i given rektangel) gr.drawimage(image, posx, posy, width, height, bgcol, this); previous next 18 previous next 20 Björn Eiderbäck Björn Eiderbäck
6 Inmatning i Java Händelsestyrd inmatning Förändringar hos enheter placeras i en kö intresserade program meddelas om att händelse inträffat från början av kön (flera kan alltså meddelas om samma händelse) Händelselyssnare Händelser till en grafisk applikation tas omhand av händelselyssnare Olika typer av lyssnare tar hand om olika typer av händelser Till varje lyssnare finns ett speciellt interface som beskriver vilka metoder som lyssnaren implementerar Det är sedan upp till varje program att själv bestämma hur det skall (eller inte skall) reagera Exempel, en metod som reagerar om händelsen dubbeklick inträffar public void doubleclickevent(event event) { frame.setlocation(event.position()); Lyssnarna och deras interface tillhör ett gemensamt package nämligen: java.awt.event previous next 21 previous next 23 Java 1.1s händelsemodell Java 1.1. och senare baseras på en modell där händelser i gränssnitten tas om hand av "lyssnare" I princip sätter man upp en händelselyssnare per typ (tangentbord, mus, fokus, etc.) av händelse man är intresserad av i applikationen Varje komponent (knapp, fält, mfl) kan också hanteras av sin egen händelselyssnare buttonx.addactionlistener(mylistenerforbuttonx) Med fördel används anonyma klasser för att definiera lyssnare för olika objekt Inre klasser I Java kan man deklarera inre klasser på i princip tre sätt Toppnivåklass public class A { // private B test = new B(); // class B { //.. Nästlad medlemsklass public class A { // class B { //.. private B test = new B(); // previous next 22 previous next 24 Björn Eiderbäck Björn Eiderbäck
7 Inre klasser Anonym klass public class A { // Adapter myadapter = new Adapter() //Här skapas en anonym subklass till Adapter { public void adapt(event e) { // metoden skriver över superklassen Adapter:s // version av adapt(event e) ; // this.addadapter(myadapter); och den inre klassen class MyWindowListener implements WindowListener { public void windowopened(windowevent e) { public void windowclosing(windowevent e) { System.exit(0); public void windowclosed(windowevent e) { public void windowiconified(windowevent e) { public void windowdeiconified(windowevent e) { public void windowactivated(windowevent e) { public void windowdeactivated(windowevent e) { previous next 25 previous next 27 Lyssna efter stängningshändelse (med inre klass) import java.awt.event.*; public class FrameHelloSecond extends Frame { public static void main(string [] args) { FrameHelloSecond frame = new FrameHelloSecond(); frame.setsize(200, 300); frame.setlocation(new Point(100, 150)); frame.settitle("the second one"); frame.setvisible(true); /* Vi är trötta på att stänga med CTRL-C så vi skriver följande */ frame.addwindowlistener(new MyWindowListener()); Vi deklarerar att vi implementerar rätt gränssnitt "Ritprogram" i Java 1.1 import java.awt.event.*; public class Scribble2 extends Frame implements MouseListener, MouseMotionListener { private int last_x = 0, last_y = 0; // koordinater public Scribble2(String s) { super(s); Vi lyssnar på både musknappar this.addmouselistener(this); och musrörelser this.addmousemotionlistener(this); previous next 26 previous next 28 Björn Eiderbäck Björn Eiderbäck
8 Vi tar hand om mustryck Vi tar hand om musrörelser // En metod beskriven i MouseListener. // Anropas vid tryck på musknapp. public void mousepressed(mouseevent e) { last_x = e.getx(); last_y = e.gety(); // En metod beskriven i MouseMotionListener. // Anropas då musen dras runt med knapp nertryckt. public void mousedragged(mouseevent e) { Graphics g = this.getgraphics(); int x = e.getx(), y = e.gety(); g.drawline(last_x, last_y, x, y); last_x = x; last_y = y; previous next 29 Frame (och Applet) hur var det nu java.lang java.awt Ofta är det tillräckligt att (Java 1.1) subklassa Frame och implementera tex WindowListener, MouseListener och MouseMotionListener senare skall vi titta på hur vi istället kan använda adaptorer skriva public static void main(string args[]) java.applet Object Component Container Panel Applet Window Frame instansiera den egna klassen, ange fönsterstorlek och ange att fönster och mushändelser skall tas emot (addwindowlistener(this) osv), öppna det hela skriva public void paint(graphics g) rita på skärmen konstruera metoder för gränssnitt till "lyssnare" som vi angett att vi skall implementera previous next 31 Vi måste // Metoder deklarerade i MouseListener måste implementeras implementera hela lyssnaren // även om vi inte gör något i dem public void mousereleased(mouseevent e) {; public void mouseclicked(mouseevent e) {; public void mouseentered(mouseevent e) {; public void mouseexited(mouseevent e) {; // och samma sak för metoder från MouseMotionListener. public void mousemoved(mouseevent e) {; public static void main(string args []) { Scribble2 frame = new Scribble2("Scribble- Java 1.1 med lyssnare"); frame.setsize(200, 200); frame.setvisible(true); Mer om händelselyssnare Händelser till ett fönster eller komponent tas omhand av händelselyssnare Olika typer av lyssnare tar hand om olika typer av händelser, MouseListener, WindowListener, FocusListener, ActionListener, osv Namnet är uppbyggt på följande sätt: HändelsetypListener Till varje lyssnare finns ett speciellt interface som beskriver vilka metoder som lyssnaren implementerar Lyssnarna och deras interface tillhör ett gemensamt package nämligen: java.awt.event previous next 30 previous next 32 Björn Eiderbäck Björn Eiderbäck
9 Händelselyssnare, några typiska Adaptorer KeyListener EventListener TextListener Object ComponentAdapter ActionListener ActionListener MouseListener ContainerAdapter AdjustmentListener ComponentListener ComponentListener MouseMotionListener FocusAdapter ContainerListener FocusListener ItemListener Klasser KeyAdapter FocusListener ItemListener Gränssnitt Gränssnitt WindowListener AdjustmentListener MouseAdapter KeyListener MouseMotionAdapter MouseListener ContainerListener WindowAdapter WindowListener MouseMotionListener TextListener previous next 33 previous next 35 Adaptorer och händelselyssnare För att förenkla användningen av händelselyssnare finns ett antal fördefinierade adaptorer Dessa adaptorer implementerar alla metoder deklarerade i den aktuella lyssnarens gränssnitt En adaptor implementerar endast tomma metoder Genom att subklassa en adaptor och använda den som lyssnare så räcker det att endast skriva om dom metoder som verkligen gör något, så slipper man som i föregående exempel implementera massa metoder utan metodkropp Dessa adaptorer är speciellt enkla att använda tillsammans med anonyma inre klasser previous next 34 Scribble med inre klasser och adaptorer import java.awt.event.*; /** Frame med anonyma inre klasser **/ public class Scribble4 extends Frame { int last_x, last_y; public void init() { // Definiera, instansiera och registrera en MouseListener this.addmouselistener(new MouseAdapter() { public void mousepressed(mouseevent e) { last_x = e.getx(); last_y = e.gety(); ); previous next 36 Björn Eiderbäck Björn Eiderbäck
10 // Definiera, instansiera och registrera en MouseMotionListener this.addmousemotionlistener(new MouseMotionAdapter() { public void mousedragged(mouseevent e) { Graphics g = getgraphics(); int x = e.getx(), y = e.gety(); g.setcolor(color.blue); g.drawline(last_x, last_y, x, y); last_x = x; last_y = y; ); Klasshierarki AWT Object Component Container List Label Button Checkbox TextComponent Panel Window TextField TextArea Applet Dialog Frame previous next 37 previous next 39 // Konstruera en knapp Button b = new Button("Clear"); // Definiera en lyssnare som tar hand om tryck på knappen b.addactionlistener(new ActionListener() { public void actionperformed(actionevent e) { ); /* Rensa hela fönstret genom att rita en fylld rektangel i fönstrets storlek */ Graphics g = getgraphics(); g.setcolor(getbackground()); //Rita med bakgrundens färg g.fillrect(0, 0, getsize().width, getsize().height); // Lägg knappen i fönstret this.add(b); Grafiska komponenter Det finns flera olika typer av komponenter i Java Button Checkbox List Choice Label TextField TextArea Scrollbar För illustration och exempel se exempel: komponenter nedan sidan 35 previous next 38 previous next 40 Björn Eiderbäck Björn Eiderbäck
11 Containers En container är en komponent som kan innehålla andra komponenter Ett objekt läggs in i containern med meddelandet add(component) Instanser av Panel brukar användas för att organisera komponenter på olika sätt inom appleten panel1 panel2 den här gången varierar vi oss och gör det som en applet, fast koden blir ungefär densamma som för en Frame. Mer detaljer om appletar nästa föreläsning (F15) import java.applet.*; public class DemoComponents extends Applet { private Button button; private Checkbox checkbox; private Label label; private List list; private Choice choice; private Scrollbar scrollbar; private TextField textfield; private TextArea textarea; previous next 41 previous next 43 Exempel: komponenter Ett test av att skapa olika typer av komponenter och låta det hela placeras automatiskt public void init() { super.init(); resize(300, 200); button = new Button("En knapp"); add(button); checkbox = new Checkbox("En checkbox"); add(checkbox); label = new Label("En label"); add(label); previous next 42 previous next 44 Björn Eiderbäck Björn Eiderbäck
12 list = new List(); list.additem("list 1"); list.additem("list 2"); add(list); Layoutmanagers för att kontrollera placering av komponenter LayoutManager choice = new Choice(); choice.additem("a"); choice.additem("b"); add(choice); BorderLayout GridBagLayout scrollbar = new Scrollbar(); add(scrollbar); GridLayout FlowLayout CardLayout previous next 45 previous next 47 textfield = new TextField("Textfält"); add(textfield); textarea = new TextArea("Textruta", 4, 15); add(textarea); Skapa en HTML-fil och kör med en appletviewer eller nätbläddrare FlowLayout är default för Panelobjekt placerar komponenter från vänster till höger. Vid full rad så ny rad GridLayout ser till att alla komponenter har samma storlek. Rutnät (rad, kolumn) BorderLayout är default för Window-klasser (ex Frame och Dialog) Placerar komponenter i vädersträck CardLayout Placerar objekten i en kortlek där endast ett kort i taget synlikt GridBagLayout Mest generell (och komplex). Delar in ytan i flera celler. Använder restriktioner (eng. constraints) för att beskriva hur komponenter placeras samt deras utsträckning previous next 46 previous next 48 Björn Eiderbäck Björn Eiderbäck
13 Exempel: Flowlayout import java.applet.*; public class DemoFlowlayout extends Applet { Button buttons[]; public void init() { super.init(); setlayout(new FlowLayout()); buttons = new Button[10]; for (int i = 0; i < 10; i++) { buttons[i] = new Button("Knapp " + i); add(buttons[i]); Exempel: Gridalyout public class DemoGridlayout extends Applet { Button buttons[]; public void init() { super.init(); setlayout(new GridLayout(5, 2)); buttons = new Button[10]; for (int i = 0; i < 10; i++) { buttons[i] = new Button("Knapp " + i); add(buttons[i]); previous next 49 previous next 51 Layouten följer med förändringar av fönsterstorlek Exempel: Borderlayout public class DemoBorderlayout extends Applet { public void init() { super.init(); resize(300, 400); setlayout(new BorderLayout()); add("north", new Button("Knapp " + "Norr")); add("south", new Button("Knapp " + "Söder")); add("east", new Button("Knapp " + "Öster")); add("west", new Button("Knapp " + "Väster")); add("center", new Button("Knapp " + "Centrum")); previous next 50 previous next 52 Björn Eiderbäck Björn Eiderbäck
14 Metoder för att hantera komponenter förutom layout kan komponenter också bla visas eller döljas setvisible(boolean) göras aktiva eller passiva setenabled(boolean) omritas, ritas eller markeras som korrupta repaint(), paint(graphics), invalidate() layout kan anges för containerbaserade komponenter också fönster kan visas, läggas i för- eller bakgrunden, titel kan anges, mm show(), tofront(), toback() cursor kan ändras storlek kanges (tänk på layout null) Gridlayout Flowlayout protected void testlayoutes() { /* Lite urartat visar vi hur man kan fråga om komponenter. I det här fallet vet vi att det är en Container och "kastar" */ Container panel = (Container) this.getcomponents()[0]; int delaytime = 3000; delay(delaytime); panel.setlayout(new GridLayout(5, 4, 10, 20)); this.settitle("gridlayout"); this.validate(); delay(delaytime); panel.setlayout(new FlowLayout(FlowLayout.LEFT, 7, 7)); this.settitle("flowlayout"); this.validate(); previous next 53 previous next 55 Blandat exempel import java.awt.event.*; public class TestOfFrame extends Frame { public TestOfFrame(String s) { super(s); protected void delay(int ms) { // Vi måste ta hand om exceptions, vilket görs med ett try-catch-par try{ Thread.currentThread().sleep(ms); catch(exception e) { Ingen layout Component[] panelcomponents = panel.getcomponents(); for (int i = 0; i < panelcomponents.length; i++) { Component component = panelcomponents[i]; component.setbounds((i % 5) * 40, i * 25, 50, 20); delay(delaytime); panel.setlayout(null); this.settitle("null layout"); this.validate(); previous next 54 previous next 56 Björn Eiderbäck Björn Eiderbäck
15 public static void main(string args []){ TestOfFrame frame = new TestOfFrame("Test of frame layout"); Panel panel; frame.addwindowlistener(new WindowAdapter(){ public void windowclosing(windowevent e) { System.exit(0); ); frame.setsize(200, 300); frame.show(); // Vi skapar en panel panel = new Panel(); frame.add(panel); //Vi skapar några fält for (int i = 0; i < 10; i++) { TextField field = new TextField("Field-" + new Integer(i).toString()); panel.add(field); // Den här gången gör vi "det" efter slingan frame.validate(); // Nu testar vi att ändra layouten frame.testlayoutes(); previous next 57 previous next 59 //Vi skapar några knappar for (int i = 0; i < 10; i++) { Button button = new Button("Button-" + new Integer(i).toString()); panel.add(button); // Alla knappar får bli "stängknappar" button.addactionlistener(new ActionListener() { public void actionperformed(actionevent e){ System.exit(0); ); /* För att ett nytt objekt skall visas på skärmen måste vi göra validate på framen (repaint eller invalidate hjälper inte! Bug??) */ frame.validate(); /* Vi skulle ju kunna göra validate efter slingan och visa alla nya knappar på en gång förstås! */ previous next 58 Björn Eiderbäck Björn Eiderbäck
Frames, menyer och GUI-program
15 Frames, menyer och GUI-program Frames En frame-klass Om konstruktorer - igen Funktionella fönster Menyer Popupmenyer GUI-applikationer Dialogrutor Printerutskrift Kap 15: Sid 2 Frames Redan i kapitel
Läs mer5 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
Läs merFö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
Läs merGrafiska 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
Läs merHändelsestyrda program
JavaD- 1 Program- eller händelsestyrd exekvering Händelsestyrda program JavaD- 2 Programstyrd exekvering I ett traditionellt program bestämmer programmet när det är dags att läsa indata, programmets exekvering
Läs merDagens 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
Läs merObjektorienterad programmering med Java Swing: Händelser, lyssnare och applets
GUI (forts) Objektorienterad programmering med Java Swing: Händelser, lyssnare och applets Sven-Olof Nyström Uppsala Universitet 18 mars 2005 Skansholm: Kapitel 6 Användaren kan kommunicera med programmet
Läs mer2I1049 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
Läs merFortsä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
Läs merITK: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
Läs merDOA GUI-del 1. Java och enkla grafiska gränssnitt. Kodexempel. Steg för steg 1. Skapa fönster. 1. Skapa fönster. 2. Skapa knapp
DOA GUI-del 1 Grafik och Interaktionsprogrammering Skapa fönster, rita och ta hand om inmatning i Java Java och enkla grafiska gränssnitt Då man konstruerar enkla grafiska gränssnitt kan man med fördel
Läs merProgrammeringsteknik 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
Läs merJava-concept och Swing. Swing low, sweet chariot
Java-concept och Swing Swing low, sweet chariot 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
Läs merFö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
Läs mer0HURP'DOJRULWPHU-DYDOD\RXW GXEEHOEXIIULQJPP ) UHOlVQLQJ. ,QQHKnOO
0HURP'DOJRULWPHU-DYDOD\RXW GXEEHOEXIIULQJPP ) UHOVQLQJ,QQHKnOO ²0HURP'DOJRULWPHU ²-DYDPHURPNRPSRQHQWHUOD\RXWGXEEHOEXIIULQJ PP.RRUGLQDWV\VWHPRFKNRRUGLQDWHU 9DQOLJHQMREEDUYLL&DUWHVLVNDNRRUGLQDWHU ² 9LVVDÃV\VWHPÃKDUÃRULJRÃQHUHÃWLOOÃYQVWHU
Läs merObjektorienterad 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
Läs merLab5 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
Läs merTDDE10 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
Läs merSMD091 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
Läs merFöreläsning 14: Grafik & mera händelsehantering
TDA 545: Objektorienterad programmering Föreläsning 14: Grafik & mera händelsehantering Magnus Myréen Chalmers, läsperiod 1, 2015-2016 Idag Idag: grafik läs kap 17 Viktigt i denna föreläsning: att rita
Läs merObjektorienterad 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
Läs merGUI-programmering. Gustav Taxén Martin Berglund DH2640 Grafik och Interaktionsprogrammering VT 2008
GUI-programmering Gustav Taxén gustavt@csc.kth.se Martin Berglund mabe02@kth.se DH2640 Grafik och Interaktionsprogrammering VT 2008 WIMP Window Icon Menu Pointing device Modernt Gränssnitt Vad ingår i
Läs merLaboration 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
Läs merDetta 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:
Läs merSwing. 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
Läs merMer 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.
Läs merSwing. 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
Läs merFönstersystem. Objektorientering och händelsebaserad programmering. Applikation. Interaktionstoolkit. Händelsehanterare och grafiktoolkit
Objektorientering och händelsebaserad programmering Gustav Taxén gustavt@nada.kth.se Fönstersystem Applikation Interaktionstoolkit Händelsehanterare och grafiktoolkit Operativsystem Hårdvara 1 Frameworks
Läs merJava: Utvecklingsverktyg, datatyper, kontrollstrukturer
Java: Utvecklingsverktyg, datatyper, kontrollstrukturer Sven-Olof Nyström Uppsala Universitet 13 juni 2005 1 Utvecklingsverktyg för Java Vi rekommenderar Suns utvecklingsverktyg (SDK, tidigare JDK), se
Läs merDI-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:
Läs merDenna 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
Läs merModelsvar 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,
Läs merGrafiska 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.
Läs merOOP 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)
Läs merObjektorienterad 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
Läs merAtt prova på en enkel Applet och att lära sig olika sätt att hämta data från tangentbordet. Du får även prova på att skapa din första riktiga klass.
Datateknik A, Syfte: Att prova på en enkel Applet och att lära sig olika sätt att hämta data från tangentbordet. Du får även prova på att skapa din första riktiga klass. Att läsa: Lektion 2 Uppgifter:
Läs merDI-institutionen Sid 1 av 5 Hans-Edy Mårtensson Sten Sundin Micael Karlsson
DI-institutionen Sid 1 av 5 Hans-Edy Mårtensson Sten Sundin Micael Karlsson Lösningar till TENTAMEN I IXC003 SYSTEMUTVECKLING MED INTERNET/INTRANET, del 1 (5p) för IT3 och INTERNETPROGRAMMERING MED JAVA
Läs merFö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
Läs merTentamen 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
Läs merGrafiska 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,
Läs merProgramstyrd / händelsestyrd
Programstyrd / händelsestyrd Jevent - 1 Händelsestyrda program Jevent - 2 Programstyrd exekvering I ett traditionellt program bestämmer programmet när det är dags att läsa indata, programmets exekvering
Läs merArv och polymorfi. Lite terminologi; Basklass eller superklass: En klass som fungerar som bas för vårt arv. Vi skapar nya klasser utifrån den.
Arv och polymorfi Arv och polymorfi är två centrala begrepp i objektorientering. Arvsmekanismen innebär att vi kan skapa nya klasser utifrån redan existerande klasser. Man gör detta med hjälp av nyckelordet
Läs merKungliga 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äs merOOP 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)
Läs merGrafiska 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
Läs merKungliga 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
Läs merLektion 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
Läs merTentamen Objekt-orienterad programmering med Java, 1DL100 Sommarkurs och distanskurs
Tentamen 2006-0823 Objekt-orienterad programmering med Java, 1DL100 Sommarkurs och distanskurs Uppsala Universitet Instutitionen för informationsteknologi Avdelningen för datalogi Kursansvarig: Sven-Olof
Läs merHögskolan Dalarna sid 1 av 7 DI-institutionen Hans-Edy Mårtensson Sten Sundin Micael Karlsson
Högskolan Dalarna sid 1 av 7 DI-institutionen Hans-Edy Mårtensson Sten Sundin Micael Karlsson TENTAMEN I IKB007 INTERNETPROGRAMMERING MED JAVA, 5p för SY2 2000-03-22, kl 14.00-18.00 Hjälpmedel: En lärobok
Läs merKungliga 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 :
Läs merLaboration 3 GUI-programmering
Laboration 3 GUI-programmering Syfte Erbjuder studenterna en möjlighet att lära sig grunderna i gränssnittsprogrammering i Java. Genomförande Genomförs individuellt eller i grupp om 2 personer. Uppskattad
Läs merFö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
Läs merRepetitionsfö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äs merModellsvar 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,
Läs merFö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
Läs merSubklasser 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äs merGrafiska 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äs merOmentamen FYTA11 Javaprogrammering
Lunds universitet FYTA11 Institutionen för Teoretisk Fysik HT 08 Omentamen FYTA11 Javaprogrammering Onsdag 4:e februari 2009, 13:00 17:00 Instruktioner Inga hjälpmedel är tillåtna. Behandla högst en uppgift
Läs merUtmatningstekniker Vektoriserade (linjeritande) skärmar
previous 2D-grafik. Något om FrameWorks. Java en kort introduktion och något exempel med AWT, något om Swing och Graphics2D, samt OpenGL ett litet exempel Föreläsning 2 Innehåll Något om utmatning hårdvara,
Läs merLö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:
Läs merLÖ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
Läs merObjektorienterad programmering i Java. Föreläsning 5 Kort om Java-Applets
Objektorienterad programmering i Java Föreläsning 5 Kort om Java-Applets 1 Läsanvisningar Den här föreläsningen syftar till att ge en bild av vad en Java-Applet är och är ganska fristående från föregående
Läs merFöreläsning 8 - del 2: Objektorienterad programmering - avancerat
Föreläsning 8 - del 2: Objektorienterad programmering - avancerat Johan Falkenjack johan.falkenjack@liu.se Linköpings universitet Sweden December 4, 2013 1 Innehåll Arv och andra viktiga begrepp Abstrakta
Läs merDOA Konstruktion av gränssnitt 5 april 2004 av Björn Eiderbäck
DOA Konstruktion av gränssnitt 5 april 2004 av Björn Eiderbäck Innehåll del 1, oh 1 oh 21 Användargränssnitt Något om tekniker för gränssnittsbyggande Typiskt gränssnitt Verktyg Knappar Vi hoppar en del
Läs merLösningsförslag till tentamen FYTA11 Javaprogrammering
Lunds universitet FYTA11 Institutionen för Teoretisk Fysik HT 08 Lösningsförslag till tentamen FYTA11 Javaprogrammering Fredag 9:e januari 2009, 09:00 13:00 Uppgift 1: Leta buggar Titta på klasserna A,
Läs merSI-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
Läs merGrafiska användargränssnitt, forts
Grafiska användargränssnitt (GUI) GUI byggs av widgets (grafiska) som t ex fönster, knappar, in- och utmatningsfält, ritytor, I Java kallas sådana delar komponenter. I Java används klasser ur awt (abstract
Läs merObjektorienterad 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.
Läs merGUI Nyckelbeståndsdelar
GUI Nyckelbeståndsdelar Nyckelbeståndsdelar i ett grafiskt användargränssnitt i Java: GUI komponenter Layout hanterare (-manager) Händelsehantering (event processing) GUI komponenter är de element på skärmen
Läs merFactoryCast HMI. Premium & Quantum PLC. Applets 2004-10-28
FactoryCast HMI Premium & Quantum PLC Applets 2004-10-28 INNEHÅLLSFÖRTECKNING 1 OM DETTA DOKUMENT...3 2 FÖRUTSÄTTNINGAR...3 3 PROJEKT I J++...4 3.1 LÄSA PLC-VARIABLER...4 3.1.1 Gränssnittet...4 3.1.2 Upprätta
Läs merFö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
Läs merGrundlä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
Läs merFÖRSLAG TILL LÖSNINGAR FÖR TENTAMEN I INTERNETPROGRAMMERING MED JAVA, 5p för SY , kl
Högskolan Dalarna sid 1 av 6 DI-institutionen Hans-Edy Mårtensson Sten Sundin FÖRSLAG TILL LÖSNINGAR FÖR TENTAMEN I INTERNETPROGRAMMERING MED JAVA, 5p för SY2 2001-03-16, kl 14.00-18.00 1. Grunderna i
Läs merArv 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,
Läs merLaboration 4: Game of Life
Laboration 4: Game of Life Programmerade system I1 Bakgrund: I denna laboration ska vi ägna oss åt Game of Life, vilket är en mycket enkel modell av en population organismer som kan leva, dö och fortplanta
Läs merProjekt 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äs merID1004 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
Läs merApplets med komponenter
5 Applets med komponenter Knappar Om gränssnitt (interface) Händelser Måla om appletytan Etiketter och textrutor Förvandla strängar till tal Aritmetik Omvandla datatyper med cast Felhantering Kap 5: Sid
Läs merGrafiska 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
Läs merLabbinstruktioner 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
Läs merTentamen 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
Läs merLite logik. Kap 6: Sid 2
6 Loopar och val Lite logik Val mellan två alternativ Val mellan flera alternativ Sammansatta villkor Boolska variabler Jämför strängar While-loopar Do-loopar For-loopar Kortformer Kap 6: Sid 2 Lite logik
Läs merKlasshierarkier. Klasser kan byggas på redan definierade klasser
Klasshierarkier Klasser kan byggas på redan definierade klasser på två sätt: Klassobjekt används som dataattribut när en ny klass beskrivs. Exempel: klassen partikel består av ett antal attribut av typen
Läs merFö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
Läs merFö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
Läs merObjektorienterad programmering E. Telefonboken, än en gång. Gränssnitt. Telefonboken med gränssnitt specificerat, del 1.
Objektorienterad programmering E Telefonboken, än en gång Föreläsning 5 Wrapper classes Exempel, histogram. Inldening om undantag. Mer om klassen Påminnelse Vår senaste version bestod av två klasser, bägge
Läs merKort 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å
Läs merProgrammering med Java. Grunderna. Programspråket Java. Programmering med Java. Källkodsexempel. Java API-exempel In- och utmatning.
Programmering med Java Programmering med Java Programspråket Java Källkodsexempel Källkod Java API-exempel In- och utmatning Grunderna Ann Pan panda@nada.kth.se Rum 1445, plan 4 på Nada 08-7909690 Game.java
Läs merFöreläsning 8. Arv. Arv (forts) Arv och abstrakta klasser
Föreläsning 8 Arv och abstrakta klasser Arv Definierar en klass utifrån en redan existerande klass Den nya klassen utökar den ärvda klassen (extends) Den nya klassen behåller alla egenskaper som den gamla
Läs mer2I1049 Föreläsning 5. Objektorientering. Objektorientering. Klasserna ordnas i en hierarki som motsvarar deras inbördes ordning
2I1049 Föreläsning 5 Objektorienterad programmering i Java KTH-MI Peter Mozelius Objektorientering Världar uppbyggda av objekt Inte helt olikt vår egen värld Ett sätt att modularisera våra system Objekten
Läs merModelsvar 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,
Läs merIngenjörsfirman Stéen 2001-12-13 Java Sida 1 av 1
Java Sida 1 av 1 Java Mål och Syfte Målet med denna kurs i Java är att du direkt efteråt ska kunna börja utveckla dina första Javaapplikationer. Kursen ger dig många konkreta exempel på hur detta effektiva
Läs merLö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
Läs merLiTHehack? 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
Läs merKlassen javax.swing.timer
Klassen javax.swing.timer I Swing finns en klass Timer som man kan använda för att upprepa en vis kodsekvens med jämna tidsmellanrum. Ett objekt av klassen Timer exekveras som en egen tråd. Ett objekt
Läs merRita 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.
Läs merFönsterhantering, grafik
Spel: exempel Ex. skattjakt Fönsterhantering, grafik (del 2) Plan (16x16 rutor) Valt array som datastruktur En spelare En fiende Vet spelarens position Bör egentligen inte veta! Programmering tillämpningar
Läs merKonstruktion av klasser med klasser
Konstruktion av klasser med klasser Klasser kan byggas på redan denierade klasser genom att klassobjekt används som dataattribut när en ny klass beskrivs. Exempel: Klassen PairOfDice har två attribut attribut
Läs mer