1 ITK:P1 Föreläsning 6 Layoutmodeller i Java DSV Marie Olsson.

Slides:



Advertisements
Liknande presentationer
78 respondenter. 2 [1] Hur har det varit hemma sedan du var här sist?
Advertisements

1 2I1049 Föreläsning 8 KTH-MI Peter Mozelius Grafiska gränssnitt, Java interface och händelsehantering.
Repetition av språket Java
Stefan Möller OOP F16:1 OOP Objekt-orienterad programmering Föreläsning 16 Grafiska användargränssnitt, GUI Ytor Komponenter Layout-managers Lyssnare.
Klasser och objekt.
Fortsättningskurs i Programmering lektion 3 Johan Hjerling
Objektorienterad utveckling
Klassarv och inkapsling
Objektorienterad utveckling Lektion 2 Objekt, överlagring, överskuggning, klasshierarkier och dynamisk bindning KTH Peter Mozelius.
TNSL04 – IT grundkurs. VT2008. Föreläsning nr 4, torsdag 28 feb. kl Klasser, objekt, metoder, parametrar, konstruktorer, samlingar och tillstånd.
TNSL04 – IT grundkurs. VT2009. Föreläsning nr 4, måndag 2 mars. kl Snabbrepris av grundbegreppen: Klasser, objekt, konstruktorer, anrop till konstruktorer,
Metoder i java Det finns två typer av metoder i java
Övning5 Så här ska man tänka när man löser uppgift 1 på tentan lite grafik, så här söker man genom en lista så här läser man från en fil i java lösa uppgift.
Välkommen Vahid Mosavat
Programmeringsteknik för K och Media
Programmeringsteknik för K och Media
Swing Grafik delen i Java kallas för Swing. Swing är stort; ca 800 klasser i 16 paket. Swing är en utveckling av AWT (Abstarct Window Toolkit). AWT var.
Att programmera i språket Java
1 ITK:P1 Föreläsning 4 Grafiska gränssnitt och händelsehantering DSV Peter Mozelius.
Föreläsning 8 Appletprogram/fristående grafiska program Rita linjer, rektanglar mm Skriva text Byta färg Appletprogram html.
Föreläsning 2 Primitiva datatyper Variabler och konstanter Tilldelning Inläsning Operatorer Villkorssatsen if Slingor: while och for.
Stora additionstabellen
1 Föreläsning 6 Klass Object, instans av klass public/private Klassvariabler och klassmetoder.
1 Föreläsning 8 Grafik AWT. 2 Grafik Frame använder man för att skapa ett fönster Button använder man om man vill ha en knapp att trycka på Canvas är.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 7 ( ) INNEHÅLL: -Klasser och instansvariabler -Tabeller av klassobjekt.
OOP F4:1 Marie Olsson OOP Objekt-orienterad programmering Föreläsning 4 Metoder klass-metoder instans-metoder.
Sid 1 CD5250 OOP med C++ Daniel Flemström MDH/IDT CD5250 OOP med C++
Programmering i C# 3. Klasser.
MSPEL Föreläsning 2 Text, teckensnitt och grafiska komponenter
1 ITK:P1 Föreläsning 7 Algoritmer och datastrukturer DSV Marie Olsson.
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.
Bild 1 Hur använder vi KursInfo idag? Högskolan i Skövde.
Programmeringsteknik för Media1 & K1
OOP F6:1 Stefan Möller OOP Objekt-orienterad programmering Föreläsning 6 Mer om klasser och objekt Hantera många objekt ArrayList toString() – metoden.
1 Föreläsning 7 Repetition Instansvariabler och klassvariabler Klassmetoder och Instansmetoder.
ITK:P1 Lektion 4 Att implementera en spelidé i Java DSV Peter Mozelius.
1 MSPEL Lektion 2 DSV Peter Mozelius Spel i Java applets.
Mitt första Java program Mahmud Al Hakim Copyright, Mahmud Al Hakim, 1.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 7 ( ) INNEHÅLL: -Klasser -Att definiera egna klasser -Klassvariabler -Klassmetoder.
OOP F3:1 Marie Olsson OOP Objekt-orienterad programmering Föreläsning 3 Iteration Många variabler av samma sort – Arrayer.
1 Föreläsning 6 Programmeringsteknik och Matlab 2D1312/2D1305 Metoder & parametrar Array API och klassen ArrayList.
1 ITK:P1 Föreläsning 8 Multimedia för spelkonstruktion DSV Peter Mozelius.
Föreläsning 10 Stränghantering.
Föreläsning 1 Reserverade ord Javas API Identifierare Litteraler Variabler Kompilering och interpretering.
Föreläsning 5 Arrayer & ArrayList Hur man använder API:n
Stora subtraktionstabellen
1 ITK:P2 F6 Sortering av generiska containerklasser DSV Peter Mozelius.
1. Ett problem/uppgift.
PROGRAMMERINGSTEKNIK Övningsgrupp 3 Marcus Hjelm
ITK:P1 Föreläsning 2 Introduktion till objektorientering DSV Marie Olsson.
0. Kod, Klassdiagram och Sekvensdiagram import java.awt.event.*; import javax.swing.*; import java.awt.*; public class TwoThreads implements ActionListener.
Föreläsning 13 Appletprogram/fristående grafiska program Arv Rita linjer, rektanglar mm Skriva text, byta färg Appletprogram & HTML Grafiska användargränssnitt.
ITK:P2 F8 Strömmar och filhantering DSV Peter Mozelius.
Föreläsning 9 Arv kap 8.1 Interface kap 9.2 Grafiska användargränssnitt (GUI) kap 10.
2I1073 Lektion 1 KTH-MI Peter Mozelius XHTML, stilmallar och Javascript.
OOP F13:1 Marie Olsson OOP Objekt-orienterad programmering Föreläsning 13 Repetition variabler, selektion och iteration.
TILLÄMPAD DATALOGI (TILDA) Övningsgrupp 2 Marcus Hjelm
OOP F5:1 Stefan Möller OOP Objekt-orienterad programmering Föreläsning 5 Klasser och objekt Skapa objekt - new Referenser Konstruktorer Inkapsling.
Övning2 programmeringsteknik och Matlab 2D1312/ 2D1305
Övning 3. Repetition Metoder class RepetitionMetoder { public static void main(String [] args) double längd = 2.0; double bredd = 1.0; double area =
Programmeringsteknik för K och Media
OOP&M - teori1 OOP del III– Föreläsning vecka 9 GUI Containers och LayoutManagers (Inner classes)
OOP&M - teori1 OOP&M del III– Föreläsning 3 vecka 6 Kontrollkomponenter (Components) Som Applets.
OOP&M - teori1 OOP&M del III– Föreläsning 23 vecka 15 Graphics Graphics2D Menyer JMF.
OOP&M - teori1 OOP del III– Vecka 10 Händelser Kontrollkomponenter (Components) Featuring: Applets.
DA7351 Programmering 1 Skapa och placera en komponent i en container Layoutmanagers Applet Händelser och lyssnare Föreläsning 15.
Föreläsning 15: Exceptions & lite swing, gränssnitt
Föreläsning 13: Swing (GUI), händelser, timer
Föreläsning 8: Exempel och problemlösning
Repetitionsföreläsning 2: Quiz & problemlösning med swing
Presentationens avskrift:

1 ITK:P1 Föreläsning 6 Layoutmodeller i Java DSV Marie Olsson

2 Layoutmodeller Implementeras i kontainerklassen genom: setLayout(Layoutklass); Olika layoutklasser i AWT: BorderLayout FlowLayout GridLayout GridBagLayout CardLayout

3 BorderLayout Defaultmodellen för många komponenter är BorderLayout som explicit sätts genom: setLayout(new BorderLayout()); North WestCenterEast South

4 BorderLayout Fem stycken knappar utplacerade enligt BorderLayout

5 Knapparna har här lagts in enligt: add(nordKnapp, BorderLayout.NORTH); add(sydKnapp, BorderLayout.SOUTH); add(centrumKnapp, BorderLayout.CENTER);...

6 Kodexempel BorderLayout import java.awt.*; import javax.swing.*; public class Kodexempel1 extends JFrame { JButton knapp1 = new JButton("knapp 1") ; JButton knapp2 = new JButton("knapp 2") ; JButton knapp3 = new JButton("knapp 3") ; JButton knapp4 = new JButton("knapp 4") ; JButton knapp5 = new JButton("knapp 5") ;

7 Kodexempel BorderLayout public Kodexempel1( ) { setLayout(new BorderLayout( )) ; add(knapp1, BorderLayout.NORTH) ; add(knapp2, BorderLayout.SOUTH) ; add(knapp3, BorderLayout.WEST) ; add(knapp4, BorderLayout.EAST) ; add(knapp5, BorderLayout.CENTER) ; pack( ) ; setVisible(true) ; setDefaultCloseOperation(EXIT_ON_CLOSE) ; }

8 Kodexempel BorderLayout public static void main (String[] arg) { Kodexempel1 kodexempel1 = new Kodexempel1( ) ; }

9 FlowLayout java.awt.FlowLayout Lägger ut dina komponenter i rader som ord i en ordbehandlare Reglera avstånd i höjd och sidled med setHgap( ) och setVgap( ) Mycket lätt att använda Default för Panel-objekt

10 Kodexempel FlowLayout import java.awt.*; import javax.swing.*; public class Kodexempel2 extends JFrame { JButton knapp1 = new JButton("knapp 1") ; JButton knapp2 = new JButton("knapp 2") ; JButton knapp3 = new JButton("knapp 3") ; JButton knapp4 = new JButton("knapp 4") ;

11 Kodexempel FlowLayout public Kodexempel2( ) { setLayout(new FlowLayout( )) ; add(knapp1) ; add(knapp2) ; add(knapp3) ; add(knapp4) ; pack( ) ; setVisible(true) ; setDefaultCloseOperation(EXIT_ON_CLOSE) ; }

12 Kodexempel FlowLayout public static void main(String[] arg) { Kodexempel2 kodexempel2 = new Kodexempel2( ) ; } }

13 GridLayout java.awt.Gridlayout Att arbeta med rader och kolumner setRows() setColumns() Lägger komponenterna i ett rutnät Alla komponenter blir lika stora Statiskt och rätt fyrkantigt Lätt att använda

14 GridLayout panel = new JPanel(); panel.setLayout( new GridLayout(4,4)); add(panel, BorderLayout.CENTER);

15 Kodexempel GridLayout import java.awt.*; import javax.swing.*; public class Kodexempel3 extends JFrame { JButton knapp1 = new JButton("knapp 1") ; JButton knapp2 = new JButton("knapp 2") ; JButton knapp3 = new JButton("knapp 3") ; JButton knapp4 = new JButton("knapp 4") ; JButton knapp5 = new JButton("knapp 5") ;

16 Kodexempel GridLayout public Kodexempel3( ) { setLayout(new GridLayout(2,3)) ; add(knapp1) ; add(knapp2) ; add(knapp3) ; add(knapp4) ; add(knapp5) ; pack( ) ; setVisible(true) ; setDefaultCloseOperation(EXIT_ON_CLOSE) ; }

17 Kodexempel GridLayout public static void main(String[] arg) { Kodexempel3 kodexempel3 = new Kodexempel3( ) ; }

18 GridBagLayout java.awt.GridBagLayout Med ett rutnät i grunden men med möjligheter till positionering och storleksförändring i med hjälpklassen GridBagConstraints Elegant, flexibel modell, men lite krånglig Träna först med någon annan LayoutManager

19 Layoutmodeller i Swing Swing-komponenter stödjer alla AWT:s layout-modeller + 6 st nya : BoxLayout, JRootPane.RootLayout OverlayLayout, ViewportLayout SpringLayout och ScrollPaneLayout Mest användbara är: BoxLayout och OverlayLayout

20 Layoutmodeller i Swing Bygg om lektionsexemplen med olika layout- modeller Programmera mycket Prova olika sätt att bygga samma sak Tack för idag!