Design och konstruktion av grafiska gränssnitt

Storlek: px
Starta visningen från sidan:

Download "Design och konstruktion av grafiska gränssnitt"

Transkript

1 Design och konstruktion av grafiska gränssnitt Olof Torgersson Interaktionsdesign Data- och informationsteknik Chalmers/GU 1!

2 Idag! Swings GUI-komponenter! Om användare Upplägg! Föreläsningar! Obligatoriska övningar! Labbar!Utförs i par! Projekt!Utförs i grupp om 4! Tenta! Betyg sammanvägning av projekt och tenta!lab och övning inget betyg bara G! Alla moment måste genomföras 2!

3 Interaktionsdesignspraxis! Fastställ behov och krav! loop!utveckla alternativa designförslag!bygg interaktiva prototyper för kommunikation and analys!utvärdera designen baserat på prototyperna! end loop Interaction Designer! Viktiga färdigheter!arbeta i team!designpraxis och erfarenhet! IT-material!Vad kan man göra?! Interface design!designmetoder!prototyping! Skissa! Mjukvara! Hårdvara (sensors and actuators)! Fysiska material!utvärderingsmetoder Graphical Interfaces Design Methods Analysis Methods Human Centred Design Course Physical Computing Ubiquitous Computing Interaction Design Project 3!

4 Material! The applications that are easy to use are designed to be familiar!tidwell xiii! Viktigt för framgång!känna användarna!kunna sina GUI-idiom!Kunna sin verktygslåda! Swing!Kunna sina mönster! Tidwell Java Swing! Designat för att kunna bygga riktiga GUI:n! Innehåller de flesta vanligt förekommande gränssnittskomponenterna!dessa är byggstenar!måste veta vilka som finns och vad de passar till!använda dem så det som förväntas! Windows, Linux, Mac har ungefär samma komponenter 4!

5 UI Guidelines! Alla plattformar har User Interface Guidelines! Swing också!använda dessa eller plattformsguidelines?! Del av GUI-designerns verktygslåda! Hjälp med detaljer snarare än interaktionsdesign!behövs för riktiga applikationer! Länkar finns på kurshemsidan Mera Swing! MVC nämns ofta! Swing snarare Separable Model! View-Controller ihop! Model för sig! Man kan byta look&feel utan att påverka modellen! Man kan byta modell utan att påverka look&feel! För enkla komponenter som JButton behöver man inte bry sig om modellen! Motsatsen gäller för t ex JTree, JTable! En applikation kan ha en MVC-modell ändå 5!

6 Components & Containers! De block GUI:s byggs av! Går igenom alla snabbt! Sen anses man känna till dessa! Inkluderar vissa saker från Swing UI Guidelines! Alla Containers är Components! Components kontroller! Containers behållare för Components! En Component måste finnas i en Container för att synas Swing-klasser JApplet JButton JCheckBox JCheckBoxMenuIte m JColorChooser JComboBox JComponent JDesktopPane JDialog JEditorPane JFileChooser JFormattedTextField JFrame JInternalFrame JLabel JLayeredPane JList JMenu JMenuBar JMenuItem JOptionPane JPanel JPasswordField JPopupMenu JProgressBar JRadioButton JRadioButtonMenuIt em JRootPane JScrollBar JScrollPane JSeparator JSlider JSpinner JSplitPane JTabbedPane JTable JTextArea JTextField JTextPane JTogglebutton JToolBar JToolTip JTree JViewport 6!

7 Containers! Top-Level Containers!JFrame!JApplet!JWindow!JDialog! JPanel!Används för att gruppera andra components! JRootPane JFrame! Applikationers huvudfönster! Menyrad! Ofta toolbar! Rekommenderad titel Dokumentnamn Programnamn! Swing Application Framework!FrameView 7!

8 JDialog! Sekundära fönster! Ingen menyrad! Rekommenderad titel! Beskrivande namn optional programnamn JMenuBar! Menyrad- hanteras bra av NetBeans! Några guidelines!använd bara ett ord i varje menytitel!använd välkända/standardbegrepp (Arkiv)!Inkludera mnemonics!använd inte för sekundära fönster 8!

9 JMenu! Hanteras bra av NetBeans! Ha inte samma namn på någon flera ggr! Undvik mer än en nivå JMenuItem! Ha inte samma namn på något item som på menyn! Undvik flera nivåer! Måste man ha flera nivåer så skapas de med JMenu! Kan ha ikoner. Hjälper användare att komma ihåg vad toolbarbuttons gör! Kortkommandon! Allt kan göras i NetBeans utan kod 9!

10 JSeparator! Huvudsakligen för att gruppera menu-items JCheckBoxMenuItem! Använd sparsamt!syns bara när menyn är framme! Bättre än toggle-menyer 10!

11 JRadioButtonMenuItem! 1-av-flera-val! Använd JSeparator ovanför/nedanför för att visa vilka som hör ihop JPopupMenu! Kallas vanligen kontextmeny! Alla vet nog hur det funkar 11!

12 JToolBar! För vanligt förekommanden kommandon! Förekommer både med och utan labels! Det man kan göra ska alltid finnas med i programmets menyer! Förse alla knappar med tooltips ORGANISERA INNEHÅLL 12!

13 JScrollPane! För något som inte får plats! Listor, tabeller, textdokument placeras typiskt i scrollpanes!automatiskt i NetBeans! Standard visa bara vid behov!rekommenderas! Horisontella tveksamma för t ex text JPanel! Allmän container för att organisera saker! Här en röd med ett par blå i! Bygga upp GUI hierarktiskt 13!

14 JSplitPane! Dela upp i justerbara ytor! Horisontellt eller vertikalt! Kan nästas! Kan styra fördelning!weight! Kan ha snabb-knappar!onetouchexpandable JTabbedPane! Mycket info på liten yta!relaterat men utan inbördes kopplingar! Kan göras i NetBeans! Inte fler än att en rad räcker! Headline capitalization! Nästa inte! Tool tips 14!

15 JLayeredPane! Flera lager på varandra! Se Swing Tutorial! Öppnar möjligheter snarare än att vara standardkomponent VISA INFO 15!

16 JLabel! Visa info för användare! Unselectable! Bild! Text! Bild + text! HTML! Ritar inte sin bakgrund!setopaque(true) JToolTip! Behöver man inte programmera direkt! Ofta bra för användaren!utforska!vet man trycker man innan de visas! Component.setToolTipText( En text ); 16!

17 JProgressBar! Om man blockerar interaktion under en tidsperiod bör man alltid visa en progressbar och erbjuda möjlighet att avbryta BASIC CONTROLS 17!

18 JButton! Standard action-grej! Kan konfigureras på olika sätt! Mnemonics! Icons! Text! Borders! JToggleButton! On/Off! Oberoende! Grupperade 18!

19 JCheckBox & JRadioButton! Välkända JList! Ett sätt att välja något! Kan ha flera olika selection-varianter! JListModel och JListSelectionModel! Icke-statiska ger ofta behova av att anpassa modellen! Single-selection i labben?!kod för att ordna och sortera finns i lab1backend 19!

20 JComboBox! Redigerbara och icke-redigerbara! Tar lite plats! Kan användas i toolbars! Ha inte för många items!!vanligt!t ex JList bättre!eller filtrering! Data från modell JTextField! Mata in en rad text!actionperformed vid retur! Varianter!JFormattedTextField!JPasswordTextField! Relaterade!JSpinner!JComboBox 20!

21 JTextArea! Flera rader oformatterad text!en rad JTextField! Placeras ofta i en JScrollPane JSlider & JSpinner! Input av data med begränsningar 21!

22 KOMPLEXA JTree! Strukturerad data! Kan anpassas på många sätt! Kräver ofta justerad kod/modell! Inte för datorovana 22!

23 JTable! Tabellformad data! Anpassningsbar! Modell! JEditorPane & JTextPane! Formatterad text! Kräver sin egen genomgång 23!

24 JColorChoser! Komponent man kan placera varsomhelst! Stöd för dialog JFileChooser! Open! Save! Bibliotek eller inte! Filtyper 24!

25 Användare och mål! Lär känna användarna för de är inte (som) du! GUI:t designar konversationen mellan människan och program! Användning har ett mål!köpa en resa!skriva en uppsats!få underhållning!samverka socialt!sköta affärer!hålla sig uppdaterad! Användares egenskaper! Gamla?! Unga?! Nyfikna?! Trötta! Kunniga?! Envetna?! Tvingade?! Bakgrund?! Expert?! Nybörjare?! Enda säkra!olika och ofta perpetual intermediate 25!

26 Typer av applikationer! Nybörjare, tillfälliga användare!informationskiosker!inköp on-line!försäljningsautomater!installeringswizards!! Experter!Photoshop!NetBeans!Sys-adminverktyg!World of warcraft!! Väldigt olika förutsättningar forts! Varken eller, dvs mittimellan!office!e-post-program!webbläsare!mobilapplikationer! Många program hamnar i denna kategori. Måste välja baserat på användare och deras mål. 26!

27 Aktivitet! Vilken användare är du?! Fundera på nybörjare-expert-mittimellan! Hitta ett eller flera program ur varje kategori där ni passar in själva Lära känna användarna! Basen för all interaktionsdesign! Samma person har inte samma mål med olika program! Typiska saker att undersöka!användarnas mål med att använda mjukvaran!de speciella uppgifter de utför för att uppfylla målen!vokabulär de använder för att beskriva vad de gör!hur bra de är på att använda liknande program!deras attityder till det de ska utföra! 27!

28 Några metoder! Direktobservation!Observera och tala med användarna på plats.!intervjuer!ger sammanhang.! Enkäter!Mycket information.!missar direktkommunikationsinformation!översikt över det man faktiskt frågar om! Personas!Sammanställning av viktigaste egenskaperna i en fiktiv person Några patterns Eller snarare allmänna egenskaper som är önskvärda! (1) Safe Exploration! Kunna trycka runt utan oönskade effekter! Inte bara allvarliga utan även enkla irritationsmoment! (2) Instant Gratification! Belöna användarna! Gör första stegen enkla (visa rätt dokument/skärm)! Inga störande inledande registreringsformulär, förklaringar, reklamskärmar etc! Tar bort fokus 28!

29 forts! (3) Satisficing! Satisfying+sufficing! Typ bra nog. Väljer hellre bra nog än att lära sig ordentligt! Stöd utforskande, var tydlig! (4) Changes in Midstream! Man ändrar sig eller kommer in på ett sidospår! Stöd detta! Global navigation! Komma ihåg tidigare angivna värden! forts! (5) Deffered Choices!Tvinga inte användarna fylla i massa information för tidigt! Registreringsformulär! Tonart, tempo, title innan man börjat!ge möjlighet att komplettera senare! (7) Habituation!That gesture works everywhere else; why doesn t it work here too?!man måste som designer kunna konventioner!ctrl-a, Ctrl-X, Ctrl-S! Emacs vs Word 29!

30 forts! (8) Spatial Memory!Flytta inte runt saker!ha knappar etc där de förväntas!egen konfigurering kan vara bra! (11) Keyboard Only!Kan förväntas!swing har omfattande stöd för detta!tabba runt!mnemonics! Att göra! Titta igenom alla Swing-komponenter!Veta vad som finns och vad de gör!swing-tutorial på nätet! Läsa Preface och kapitel 1 i Tidwell! Nästa gång!mer om användare!fler designmönster!swing/appframework 30!

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Olof Torgersson Interaktionsdesign Tillämpad informationsteknologi Chalmers/GU 1 Idag Läsanvisningar Finns på kurshemsidan under resurser Kommer att förklaras

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Olof Torgersson Interaktionsdesign Tillämpad informationsteknologi Chalmers/GU Kort GUI-historia Swings komponenter Idag Lab 1 glöm inte att lämna in i PingPong

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Olof Torgersson Interaktionsdesign Tillämpad informationsteknologi Chalmers/GU Litekursinfo Kort GUI-historia Swings komponenter Idag Tidwell Designing Interfaces

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Olof Torgersson Interaktionsdesign Data- och informationsteknik Chalmers/GU 1 Idag Lite av varje Pappersprototyper Kapitel 7 i Tidwell NetBeans-exempel Tenta

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Olof Torgersson Interaktionsdesign Tillämpad informationsteknologi Chalmers/GU 1 Idag Lite av varje Projekt Kapitel 7 i Tidwell Kapitel 6 nästa gång Tenta

Läs mer

Arvshierarki. Object. Bostadshus. Flerfamiljshus. Villa

Arvshierarki. Object. Bostadshus. Flerfamiljshus. Villa Arv Arv är en grundläggande objektorienterad teknik för att organisera och återanvända klasser. Med arv kan man definiera en klass utgående från en redan existerande klass. Den nya klassen återanvänder

Läs mer

Arv. Grafiska komponenter. Arv. Arvhierarki. Arv. Föreläsning 12 (OH-bilder 9)

Arv. Grafiska komponenter. Arv. Arvhierarki. Arv. Föreläsning 12 (OH-bilder 9) är en grundläggande objektorienterad teknik för att organisera och återanvända klasser. TDA143 I1 Programmerade system Föreläsning 12 (OH-bilder 9) Grafiska komponenter Christer Carlsson Med arv kan man

Läs mer

Objektorienterad programmering med Java Swing. Programexempel. Swing och AWT AWT. = Abstract windowing toolkit

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

Läs mer

Föreläsning 9. Arv Grafiska komponenter

Föreläsning 9. Arv Grafiska komponenter Föreläsning 9 Arv Grafiska komponenter Arv Arv är en grundläggande objektorienterad teknik för att organisera och återanvända klasser. Med arv kan man definiera en klass utgående från en redan existerande

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Armin Nezirevic Peter Börjesson Interaktionsdesign Tillämpad informationsteknologi Chalmers/GU Idag Vad utmärker ett bra användargränssnitt? Kort kursinfo

Läs mer

Objektorienterad Programkonstruktion. Föreläsning 3 9 nov 2015

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

Läs mer

Grundläggande programmering, STS 1, VT Sven Sandberg. Föreläsning 18

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

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Peter Börjesson Interaktionsdesign Tillämpad informationsteknologi Chalmers/GU Idag Kort kursinfo Lab info Föreläsning - Vad utmärker ett bra användargränssnitt?

Läs mer

Objektorienterad Programkonstruktion. Föreläsning 3 7 nov 2016

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

Läs mer

Swing. MER Java Foundation Classes (JFC) Vad är farorna. Hur lära sig? LayoutManagers. Exempel på några av komponenterna

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

Läs mer

LiTHehack? Här? lithehack se koma Tisdagar och torsdagar

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

Läs mer

TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 5. Laboration 4 Lådplanering Exempel på grafik, ett avancerat program Frågor

TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 5. Laboration 4 Lådplanering Exempel på grafik, ett avancerat program Frågor TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 5 Laboration 4 Lådplanering Exempel på grafik, ett avancerat program Frågor 1 Laboration 4 - Introduktion Syfte: Öva på självständig problemlösning

Läs mer

Föreläsning 9. Arv Grafiska komponenter. Arv. Arv. Implementationsarv

Föreläsning 9. Arv Grafiska komponenter. Arv. Arv. Implementationsarv Arv Föreläsning 9 Arv Grafiska komponenter Föreläs Vi människor använder klassificering för att organisera vår tillvaro. Klassificering innebär att sammanföra likartade objekt inom en domän i olika delgrupper

Läs mer

1 Grafiska komponenter

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

Läs mer

Swing. MER Java Foundation Classes (JFC) Hur lära sig? Vad är farorna. LayoutManagers. Exempel på några av komponenterna

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

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Olof Torgersson Interaktionsdesign Tillämpad informationsteknologi Chalmers/GU Sjuk Kortföreläsning Idag Torsdag intro till projekt Kom då! 1 MENYER OCH TOOLBARS

Läs mer

Föreläsning 15 (16) Historik (java.awt) Historik (javax.swing) Introduktion till Swing

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

Läs mer

Java Direkt, upplaga 6 Innehåll

Java Direkt, upplaga 6 Innehåll Java Direkt, upplaga 6 Innehåll Förord 1 1 Att komma igång 5 1.1 Vad är Java? 5 1.2 Var hittar man information om Java? 8 1.3 Traditionell kompilering, länkning och exekvering 8 1.4 Kompilering och exekvering

Läs mer

Java Direkt, upplaga 7 Innehåll

Java Direkt, upplaga 7 Innehåll Java Direkt, upplaga 7 Innehåll Förord 1 1 Att komma igång 5 1.1 Vad är Java? 5 1.2 Var hittar man information om Java? 7 1.3 Traditionell kompilering, länkning och exekvering 8 1.4 Kompilering och exekvering

Läs mer

Java Direkt, upplaga 5 Innehåll

Java Direkt, upplaga 5 Innehåll Java Direkt, upplaga 5 Innehåll Förord 1 1 Att komma igång 5 1.1 Vad är Java? 5 1.2 Var hittar man information om Java? 8 1.3 Traditionell kompilering, länkning och exekvering 8 1.4 Kompilering och exekvering

Läs mer

Om användare och designprocessen

Om användare och designprocessen Om användare och designprocessen Målorienterad design. Olika typer av användare. Mentala modeller, metaforer med mera. Att designa The interaction framework. Förra veckan. Gör så här Men inte så Förra

Läs mer

Föreläsning Arv. Föreläsning 9. Arv Grafiska komponenter. Grafiska komponenter. Arv. Arv

Föreläsning Arv. Föreläsning 9. Arv Grafiska komponenter. Grafiska komponenter. Arv. Arv Föreläsning 9 Arv Grafiska komponenter Föreläsning Arv 9 Arv Grafiska komponenter Arv Vi människor använder klassificering för att organisera vår tillvaro. Klassificering innebär att sammanföra likartade

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Olof Torgersson Interaktionsdesign Tillämpad informationsteknologi Chalmers/GU Idag Kursutvärdering Organizing content Tidwell kap 2 Menyer verktygsfält Doing

Läs mer

Lite info först. Kom ihåg! Deadline på lab1 på onsdag. Övning 2 på onsdag: gör en kalender för olika slags användare

Lite info först. Kom ihåg! Deadline på lab1 på onsdag. Övning 2 på onsdag: gör en kalender för olika slags användare Lite info först Kom ihåg! Deadline på lab1 på onsdag. Övning 2 på onsdag: gör en kalender för olika slags användare Förra veckan... GUI = Graphical User Interface (grafiskt användargränssnitt) Gör så här

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Olof Torgersson Interaktionsdesign Tillämpad informationsteknologi Chalmers/GU Idag Kursinfo Kort GUI-historia Människa-datorinteraktion/Interaktionsdesign

Läs mer

Föreläsning 7. Grafiska användargränssnitt

Föreläsning 7. Grafiska användargränssnitt Föreläsning 7 Grafiska användargränssnitt För att göra grafiska användargränssnitt: Måste man veta hur man skapar komponenterna i ett GUI och vilka det finns. Till lab 3 räcker det med att känna till de

Läs mer

27. GUI Programming. Java. Summer 2008 Instructor: Dr. Masoud Yaghini

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

Läs mer

Denna vecka. Idag. Grafiskt användarsnitt. Vi kommer att se

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

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Olof Torgersson Interaktionsdesign Tillämpad informationsteknologi Chalmers/GU 1 Idag Menyer och verktygsfält Organizing the page Kod bakom lab 1? Observera

Läs mer

Java Direkt, upplaga 8 Innehåll

Java Direkt, upplaga 8 Innehåll Java Direkt, upplaga 8 Innehåll 1 Att komma igång 5 1.1 Vad är Java? 5 1.2 Var hittar man information om Java? 7 1.3 Traditionell kompilering, länkning och exekvering 8 1.4 Kompilering och exekvering av

Läs mer

Swing. MER Java Foundation Classes (JFC) Vad är farorna. Hur lära sig? Exempel på några av komponenterna. LayoutManagers.

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

Läs mer

Swing. MER Java Foundation Classes (JFC) Hur lära sig? Vad är farorna. Exempel på några av komponenterna. LayoutManagers.

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

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Olof Torgersson Interaktionsdesign Data- och informationsteknik Chalmers/GU 1 Idag Menyer och verktygsfält Swing Application Framework & Actions Organizing

Läs mer

Swing. MER Java Foundation Classes (JFC) Vad är farorna. Hur lära sig? LayoutManagers. Exempel på några av komponenterna.

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,

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Olof Torgersson Interaktionsdesign Tillämpad informationsteknologi Chalmers/GU 1 Idag Fortsatt om användare Mentala modeller vs implementationsmodeller Personas

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Olof Torgersson Interaktionsdesign Tillämpad informationsteknologi Chalmers/GU 1 Idag Organisera innehåll forts, Getting round Lite demo Interaktionsdesignspraxis

Läs mer

Java-concept och Swing. Swing low, sweet chariot

Java-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 mer

725G61 - Laboration 8 Ett enkelt GUI. Sahand Sadjadee och Johan Falkenjack

725G61 - Laboration 8 Ett enkelt GUI. Sahand Sadjadee och Johan Falkenjack 725G61 - Laboration 8 Ett enkelt GUI Sahand Sadjadee och Johan Falkenjack December 20, 2013 1 Inledning I de tidigare labbarna har ni fått lära er grundläggande programmering och objektorientering samt

Läs mer

ITK:P1 Föreläsning 4. Grafiska gränssnitt i Java. AWT-komponenter

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

Läs mer

TENTAMEN: Design och konstruktion av grafiska gränssnitt DAT215

TENTAMEN: Design och konstruktion av grafiska gränssnitt DAT215 TENTAMEN: Design och konstruktion av grafiska gränssnitt DAT215 DAG: 14 mars, 2011 TID: 8.30 12.30 SAL: Hörsalsvägen Ansvarig: Olof Torgersson, tel. 772 54 06. Institutionen för tillämpad informationsteknologi.

Läs mer

TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 3

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

Läs mer

Föreläsnings 11 - GUI, Händelsestyrda program, MVC

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

Läs mer

Model View Controller. Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016

Model View Controller. Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016 Model View Controller Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016 Model View Controller Model View Controller (MVC) är ett design pattern (architectural pattern) som är väldigt

Läs mer

OOP Objekt-orienterad programmering

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)

Läs mer

Vad utmärker ett bra gränssnitt?

Vad utmärker ett bra gränssnitt? Vad utmärker ett bra gränssnitt? Kommunikation med användarna Feedback och Pliancy Excise kontra Flow GUI = Graphical User Interface GUIn, eller grafiska gränssnitt hittar vi på alla sorters skärmar I

Läs mer

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 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 mer

Klasser för grafik och bildhantering

Klasser för grafik och bildhantering Swing och AWT Fem typer av klasser GUI-komponenter Layout-hanterare Händelser och händelselyssnare Klasser för grafik och bildhantering Objectorienterad programmering Sida 1 AWT AWT = Abstract windowing

Läs mer

TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 3

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

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Olof Torgersson Interaktionsdesign Tillämpad informationsteknologi Chalmers/GU 1 Idag Lite av varje Doing things Golden rules Heuristics Intro usability Tenta

Läs mer

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) 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

Läs mer

Arv och Grafiska Användargränssnitt

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,

Läs mer

Vad utmärker ett bra användargränssnitt?

Vad utmärker ett bra användargränssnitt? Vad utmärker ett bra användargränssnitt? Att kommunicera med användarna Feedback och Pliancy Excise kontra Flow GUI = Graphic User Interface GUI = Graphic User Interface GUIn, eller grafiska gränssnitt

Läs mer

Windows Forms Winstrand Development

Windows Forms Winstrand Development 2013-01-23 1 Winstrand Development Användargränssnitt Hittills har vi skapat program för kommandoraden. Den bakomliggande koden fungerar som den ska, men vi upptäcker snabbt att programmen är begränsade

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Olof Torgersson Interaktionsdesign Data- och informationsteknik Chalmers/GU 1 Idag Organisera innehåll forts, Getting round Swing Application Framework &

Läs mer

Efterhand fick vi ett system som vi tyckte var väl anpassat. Vi renskrev kladden (nedan) och började programmera menyerna.

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

Läs mer

Malmö högskola 2007/2008 Teknik och samhälle

Malmö högskola 2007/2008 Teknik och samhälle Laboration 13 Avsikten med denna laboration är att du ska använda ett par nya grafiska komponenter. Dessutom ska du göra designen utan hjälp av en layout-manager (enklare). Börja med att skapa paketet

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Olof Torgersson Interaktionsdesign Data- och informationsteknik Chalmers/GU 1 Idag Lite av varje Utvärdering Rapport JComboBox? Tenta 55% av betyget Hjälpmedel

Läs mer

MVC-mönstret. model-view-control i Swing

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

Läs mer

OOP Objekt-orienterad programmering

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)

Läs mer

Malmö högskola 2007/2008 Teknik och samhälle

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

Läs mer

Hi fi prototyping. Johanna Persson MAM nov 2014

Hi fi prototyping. Johanna Persson MAM nov 2014 Hi fi prototyping Johanna Persson MAM15 25 nov 2014 Dagens upplägg Hi fi prototyping Olika verktyg för hi fi prototyping Introduktion till ett urval av dessa Power point Balsamiq Mockups Just in Mind Praktisk

Läs mer

Observer Pattern och MVC. Objekt-orienterad programmering och design Alex Gerdes, 2016

Observer Pattern och MVC. Objekt-orienterad programmering och design Alex Gerdes, 2016 Observer Pattern och MVC Objekt-orienterad programmering och design Alex Gerdes, 2016 Model View Controller Model View Controller (MVC) är ett design pattern (architectural pattern) som är väldigt vanligt

Läs mer

Verktyg och Utvecklingsmiljö. Föreläsning 2 Eclipse

Verktyg och Utvecklingsmiljö. Föreläsning 2 Eclipse Verktyg och Utvecklingsmiljö Föreläsning 2 Eclipse Verktyg Modern programutveckling innebär att man måste behärska ett antal verktyg. Editorer Kompilatorer Avlusare(debugger) Versionshantering(kommer i

Läs mer

Granskning av gränssnitt. Mattias Arvola

Granskning av gränssnitt. Mattias Arvola Granskning av gränssnitt Mattias Arvola 2 Att skapa interaktiva system Identifiera krav Utforma alternativ Ta fram prototyper (eller annan illustration av system) Utvärdera 3 Mål med utvärderingen Revidera,

Läs mer

The Last Adventure. Innehåll. Objektorientering. Språket Java. Java - Paket. Java - synlighet. Den sista lektionen. Repetition.

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

Läs mer

Visa stora ikoner utan text i Command Manager = Större arbetsyta

Visa stora ikoner utan text i Command Manager = Större arbetsyta Att anpassa gränssnittet i SolidWorks är enkelt. Högerklicka i antingen Command Manager eller statuslisten och välj Customize i listan, här finns alla verktyg som används för att anpassa SolidWorks gränssnitt.

Läs mer

Objektorienterad programmering med Java Swing: Händelser, lyssnare och applets

Objektorienterad 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 mer

Tangible interaction &TUI KIRSTEN RASSMUS-GRÖHN

Tangible interaction &TUI KIRSTEN RASSMUS-GRÖHN Tangible interaction &TUI KIRSTEN RASSMUS-GRÖHN Innehåll Vad är TUI? Historia Massor med exempel Hur gör man? Problem och utmaningar Vad är TUI = Tangible User Interface? I bred mening Att ge fysisk form

Läs mer

Projekt 2 XL. Observer-mönstret

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äs mer

CliMate följer Tre-lager-arkitektur. Domänobjekt - domänlogiklagret. Viktiga domänklasser i CliMate. De tre lagren. Paketen i CliMate:

CliMate följer Tre-lager-arkitektur. Domänobjekt - domänlogiklagret. Viktiga domänklasser i CliMate. De tre lagren. Paketen i CliMate: följer Tre-lager-arkitektur De tre lagren presentation: användarhändelser+grafik+resultat domänlogik: håller systemets funktioner databasaccess: databas + sql-hantering Paketen i : climate.ui (inkl climate.ui.action

Läs mer

Objektorienterad Programkonstruktion

Objektorienterad Programkonstruktion Objektorienterad Programkonstruktion Övning 3 Stränghantering Filer Christian Smith ccs@kth.se 1 Strängar Strängar definieras i klassen String Strängar kan instansieras med bokstavliga (eng: literal) strängar,

Läs mer

Laboration 3 GUI-programmering

Laboration 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 mer

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

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.

Läs mer

Människa-Datorinteraktion

Människa-Datorinteraktion Människa-Datorinteraktion Grundutbildnings-, forskarutbildnings- och forskningsämne som behandlar Gränssnitt och kommunikation människa-dator Kommunikation och samarbete människa-människa via (medierat

Läs mer

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 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 mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Olof Torgersson Interaktionsdesign Data- och informationsteknik Chalmers/GU 1 Idag Fortsatt om användare Mentala modeller vs implementationsmodeller Personas

Läs mer

Observer Pattern och MVC. Objekt-orienterad programmering och design (DIT953) Niklas Broberg, 2018

Observer Pattern och MVC. Objekt-orienterad programmering och design (DIT953) Niklas Broberg, 2018 Observer Pattern och MVC Objekt-orienterad programmering och design (DIT953) Niklas Broberg, 2018 Model View Controller Model View Controller (MVC) är ett design pattern (architectural pattern) som är

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Olof Torgersson Interaktionsdesign Tillämpad informationsteknologi Chalmers/GU Idag Information om projekt och rapport Exempel på tentafrågor En del från

Läs mer

Föreläsning 15: Repetition DVGA02

Föreläsning 15: Repetition DVGA02 Föreläsning 15: Repetition DVGA02 Vad handlar kursen om? Kursen kan i grova drag delas upp i tre delar: 1. Objekt-orienterad programmering 2. Grafiska användargränssnitt 3. Datastrukturer Dessutom genomsyras

Läs mer

Föreläsning 10. ADT:er och datastrukturer

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

Läs mer

NYHETER I AUTOCAD LT 2008

NYHETER I AUTOCAD LT 2008 NYHETER I AUTOCAD LT 2008 Nedan följer en kort beskrivning av nyheter och förbättringar i AutoCAD LT 2008, jämfört med AutoCAD LT 2007. Nyheterna är inte ordnade i speciell ordning. NYTT FÖRDEFINIERAT

Läs mer

MER Java Foundation Classes (JFC)

MER Java Foundation Classes (JFC) 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 Hur lära sig? Principerna

Läs mer

Macromedia. Flash 8 Grundkurs. www.databok.se

Macromedia. Flash 8 Grundkurs. www.databok.se Macromedia Flash 8 Grundkurs www.databok.se Innehållsförteckning 1 Börja arbeta med Flash 8...1 Användningsområden...1 Bekanta dig med arbetsytan...2 Scen och tidslinje...3 Lager...3 Bibliotek...4 Verktygsfältet

Läs mer

DD2385 Programutvecklingsteknik Några bilder till föreläsning 1 24/ Kursöversikt Javarepetition/Javaintroduktion

DD2385 Programutvecklingsteknik Några bilder till föreläsning 1 24/ Kursöversikt Javarepetition/Javaintroduktion DD2385 Programutvecklingsteknik Några bilder till föreläsning 1 24/3 2014 Innehåll Kursöversikt Javarepetition/Javaintroduktion UML - klassdiagram-introduktion i anslutning till Java-exemplen Kursmål,

Läs mer

Föreläsning 9: Gränssnitt och webbdesign

Föreläsning 9: Gränssnitt och webbdesign Föreläsning 9: Gränssnitt och webbdesign FSR: (1), 4, 6 Att läsa: Kapitel 6 i Rogers et al.: Interaction Design 160429 Gränssnitt och webbdesign 2 Översikt Gränssnitt historiskt Kännetecken olika gränssnitt

Läs mer

Författare: Juha Söderqvist IT-GUI. Version 1.0. Datum

Författare: Juha Söderqvist IT-GUI. Version 1.0. Datum Författare: Juha Söderqvist IT-GUI Version 1.0 Datum 2017-08-18 Innehåll 1. Introduktion... 3 Human-computer interaction... 3 Grafiska användargränssnitt... 4 Operativsystem... 4 Xerox Alto Executive file

Läs mer

Föreläsning 4, Användbarhet, prototyper

Föreläsning 4, Användbarhet, prototyper Föreläsning 4 Användbarhet och prototyper Kapitel 5-7 i Stone et al. Mer om användbarhet Psykologiska principer avseende: Förväntningar En uppgift i taget Struktur för förståelse Känna igen eller komma

Läs mer

Kursplanering Utveckling av webbapplikationer

Kursplanering Utveckling av webbapplikationer Kursplanering Utveckling av webbapplikationer Fakta Ämne Programmering Poäng 40 Yh-poäng Kurskod YSYS-WEB Klass Systemutvecklare.NET Syfte och koppling till yrkesrollen För att kunna arbeta som systemutvecklare

Läs mer

Programutveckling med Java Development Kit. (JDK 1.1.x) och Programmers File Editor (PFE 7.02)

Programutveckling med Java Development Kit. (JDK 1.1.x) och Programmers File Editor (PFE 7.02) UMEÅ UNIVERSITET Institutionen för datavetenskap Thomas Johansson Oktober 1998 Programutveckling med Java Development Kit (JDK 1.1.x) och Programmers File Editor (PFE 7.02) Umeå universitet 901 87 Umeå.

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Peter Börjesson Interaktionsdesign Tillämpad informationsteknologi Chalmers/GU Missad övning 5? Kontakta mig på peter.borjesson@ait.gu.se för att få en kompletteringsuppgift.

Läs mer

Design och konstruktion av grafiska gränssnitt

Design och konstruktion av grafiska gränssnitt Design och konstruktion av grafiska gränssnitt Peter Börjesson Interaktionsdesign Tillämpad informationsteknologi Chalmers/GU Idag Pappersprototyper Designexempel Listor (Tidwell kap.5, List of Things)

Läs mer

Layout och Navigation

Layout och Navigation Layout och Navigation Layout Layout Det är tre saker som definierar formen på ett GUI Gruppering av element Balans Grid & alignment (dvs hur komponenter är utlagda på ett osynligt rutnät) och som sagt,

Läs mer

Visuell GUI Testning

Visuell GUI Testning Visuell GUI Testning Vad är ett Graphical User Interface (GUI)? Icke-animerat GUI Animerat GUI Nuläget System- och acceptanstestning är dyrt! Manuellt Långsamt Enformigt Svårt att replikera exakt Nödvändigt

Läs mer