Vi lærte sist å lage vinduer. Om å lage et vindu. GUI (Graphical User Interface)-programmering. Inf GUI - del 2

Størrelse: px
Begynne med side:

Download "Vi lærte sist å lage vinduer. Om å lage et vindu. GUI (Graphical User Interface)-programmering. Inf 1010-2007 GUI - del 2"

Transkript

1 GUI (Graphical User Iterface)-programmerig If GUI - del 2 Stei Gjessig Ist for Iformatikk Uiv. i Oslo Tidligere Hvorda få laget et vidu på skjerme Grafikk (tegig i viduet) Hvorda legge ulike kompoeter i viduet (trykkapper, tekstfelter, tekst, bilder,) Ekel behadlig av kappetrykk mm. I dag: Kort repetisjo Layout av viduer Mer om iput fra brukere via viduer Grudig om evetmodelle (fage opp hedelser) og Javas store bibliotek for det Hedelser (Evet) Lyttere med gresesitt eller Adaptere Lyttemetodee 2 kompoeter (ie i e Cotaier) Vi lærte sist å lage viduer JFrame er selve bildet (ramme) Cotaier som er vidusflate, e egeskap til selve bildet, får vi tak i ved å kalle metode getcotetpae( ) 3 import java.awt.evet.*; import javax.swig.*; Om å lage et vidu public class Vidu exteds JFrame { JLabel etikett; JTextField tekstfelt; JButto kapp; public Vidu( ) { settitle( Test-vidu"); Cotaier samlig = getcotetpae(); samlig.setlayout(ew FlowLayout()); etikett = ew JLabel("Skriv i av"); samlig. add(etikett); tekstfelt = ew JTextField(30); samlig. add(tekstfelt); kapp = ew JButto( Ferdig"); samlig. add(kapp); setdefaultcloseoperatio(jframe.exit_on_close); setbouds(100, 250, 400,150); Magler å lytte på kappe / tekstfeltet 4

2 Vi har lærte å lytte på kapper Ka også lytte på CR i tekstfelt Dette objektet syes på skjerme (som et tekstfelt Ferdig kapp.addactiolisteer(kappelytter); setter opp e forbielse mellom kappe og objektet/metode som hådterer kapptrykk Dette objektet syes på skjerme (som e kapp) tekstfelt.addactiolisteer(tekstlytter); kapp kappelytter tekstfelt tekstlytter Ved CR Vidu-objekt, subklasse av JFrame Koblig i kjøre-systemet Vidu-objekt, subklasse av JFrame Koblig i kjøre-systemet < det som skal gjøres ved kappetrykk> actioperformed actioperformed < det som skal gjøres ved år CR trykkes, f.eks. tekstfelt.gettext(); > Lytte-objekt som implemeterer gresesittet ActioListeer 5 Lytte-objekt som implemeterer gresesittet ActioListeer 6 import java.awt.evet.*; import javax.swig.*; public class Vidu exteds JFrame { private JButto kapp; private Lytter kappelytter; Fullstedig mii-program public static void mai(strig[] args) {ew Vidu(); public Vidu( ) { super("hei test"); Cotaier samlig = getcotetpae(); samlig.setlayout(ew FlowLayout()); setbouds(100, 250, 300,200); kapp= ew JButto("Hei"); samlig. add(kapp); setdefaultcloseoperatio(jframe.exit_on_close); kappelytter = ew Lytter( ); kapp.addactiolisteer(kappelytter); // slutt Vidu kostruktør class Lytter implemets ActioListeer { public void actioperformed(actioevet e) { System.out.pritl("Noe sa hei til meg"); // slutt class Lytter // slutt class Vidu Her lager vi et kappe Her legges kappe i i vidusflate Her lager vi et lytterobjekt Her kobles kappe opp mot dette lytterobjektet 7 mai ew Vidu( ); Det er mulig å slå samme lytter-objektet med adre objekter f.eks.: Kjøresystemet Dette objektet syes på skjerme (som e kapp) Vidu kapp kapp = ew JButto(... ) kapp.addactiolisteer(this);... actioperformed objekt av klasse Vidu (subklasse av JFrame, implemeterer ActioListeer) Dette blir litt moolittisk 8

3 import java.awt.evet.*; import javax.swig.*; Vi slår samme Vidus-objektet og lytter-objektet Hvorda få data fra brukere fra viduet public class Vidu exteds JFrame implemets ActioListeer { private JButto kapp; private Lytter kappelytter; public static void mai(strig[] args) {ew Vidu(); public Vidu( ) { super("hei test"); Cotaier samlig = getcotetpae(); samlig.setlayout(ew FlowLayout()); setbouds(100, 250, 300,200); kapp= ew JButto("Hei"); samlig. add(kapp); kapp.addactiolisteer(this); setdefaultcloseoperatio(jframe.exit_on_close); // slutt Vidu kostruktør public void actioperformed(actioevet e) { System.out.pritl("Noe sa hei til meg"); // slutt class Lytter // slutt class Vidu Her lager vi lytterobjektet også Her kobles kappe opp mot lytterobjektet (som er det samme) 9 Vi må få de data brukere skriver i viduet i i vårt program. Mer spesifikt, vi må kue skille mellom ulike tig (museklikk, tastetrykk, tekstskrivig, mm) brukere gjør med viduee som programmet (via kall til operativsystemet) har teget opp på skjerme. Vi må direkte fie ut om brukere har f.eks. Trykket på e trykk-kapp (hvilke) Tastet i ett av tekstfeltee (hvilket felt og hva ble tastet) Hvor er musa (følge des bevegelser) Klikket med musa (hvor, hvilke, opp, ed) Trykket e tast på tastaturet mm Hva ka e bruker gjøre Typer av hedelser Bevege musa iefor e av våre viduer i i viduet ut av viduet over e av kompoetee (trykk-kapp, tekstfelt,..) - hvilke Klikke musa hvilke kapp eller hvor (x,y i viduet) klikke ed slippe opp Taste e tast hvilke trykke ed slippe opp Trykke CR i et tekstfelt 11 Evetmodelle hva gjør operativsystemet? Op-sys (Wi, Liux,..) Ditt Program ( Evet Dispatch Thread ) Hver tig brukere gjør med PCe (flytter eller klikker musa, trykker på tastaturet...) blir laget om til é pakke. E kø av slike pakker sedes over fra operativsystemet til ditt program hele tide år tig skjer. Hver gag f.eks musa flyttes ett eeste pukt bortover geereres e y slik pakke (køe ka forkortes) 12

4 Mer om pakke (subklasse av EvetObject) Eksempler Ieholder få tig Størrelse av pakke/objektet er avhegig av type hedelse : Type hedelse : musebevegelse museklikk, trykk på tast (ed eller sluppet)... Verdi, f.eks Museposisjo (x,y) i viduet Hvilke musekapp trykket Hvilke tast trykket verdi: f.eks type hedelse x-pos kompoet y-pos Hvilket Viduskompoet på skjerme dette tilhører Peker til eller tekst Hvorda vet operativsystemet det? 13 Class RulleLytter implemets ItemListeer { public void itemstatechaged(itemevet e) { Strig s = (Strig) e.getitem(); if (s.equals( Opp")) {fart++; else if (s.equals( Ned")) {fart - - ; else if (s.equals( Høyre")) {retig = hoyre; else if (s.equals( Vestre")) {retig = vestre; public void actioperformed(actioevet e) { if (e.getsource( ) = = stoppkapp) { setvisible(false); System.exit (0); else if (e.getsource( ) = = ekapp) { Mer om Evetmodelle e kø per program Op-sys (Wi, Liux,..) Ditt Program ( Evet Dispatch Thread ) Operativsystemet har viduer fra flere programmer på skjerme, me vet hvilket vidu og da program ett evet (hedelse) tilhører. Lager e slik kø for hvert program som har viduer på skjerme Hvert program får da bare sie hedelser. Hvorda kytte forbidelse program evetkøe Programmet må lage lyttere, (= køe av hedelser) For hver hedelse må det meldes på et bestemt objekt og tilhørede metode som mottager av hedelses-objekter/hedelses-pakker. Dee metode blir da kalt hver gag e slik hedelse itreffer Hvis flere metoder blitt registrert som lyttere av samme type hedelse, får de hver si kopi av pakka. Lyttere implemeterer et gresesitt (ulikt for hver type hedelse) med tilhørede lyttermetoder: Hyppigst brukt gresesitt / metode: ActioListeer / actioperformed(actioevet e) Javas kjøretidssystem (Java Virual Machie, >java) har e løkke som leser meldigee i evetkøe og starter Evet Dispatch Thread -e som fordeler dem (= kaller metodee) for de typer hedelser som har e lytter registrert. kaster de pakkee ige vil ha 15 16

5 >java fordeler pakkee Op-sys while (true) { <les este pakke> < fi evt. registrerte lyttemetoder> <kall de(m) med pakke som parameter> < kast pakker ige vil ha> Ditt javaprogram Evet Dispatch Thread 17 Viktigste lyttergresesitt Gresesitt og type av hedelser MouseListeer museklikk MouseMotioListeer musebevegelser ActioListeer Trykk på trykkapper / CR i tekstfelt KeyListeer Tastetrykk ItemListeer Valg i rullegardi + ca 80 adre lytter-gresesitt f.eks: ListSelectioListeer, MeuDragMouseListeer, MeuKeyListeer, MeuListeer, MetaEvetListeer, MouseIputListeer, MouseWheelListeer, NamespaceChageListeer, NamigListeer, NodeChageListeer, ObjectChageListeer, PopupMeuListeer, PrefereceChageListeer, PropertyChageListeer, RowSetListeer, SSLSessioBidigListeer, TableColumModelListeer, TableModelListeer, TextListeer, WidowFocusListeer, WidowListeer, WidowStateListeer 18 Hvorda lage et lytteobjekt to måter: Kappetrykk, tell opp og vis fram (este som MVC-progr. på forrige forelesig) 1 Implemetere det riktige gresesittet (KeyListeer, ActioListeer, ItemListeer) Husk at da må vi implemetere alle metodee i gresesittet Dette gjør vi som oftest bare for oe ekle gresesitt (der det bare er é metode i hvert gresesitt) : ActioListeer ItemListeer 2 Lage e lytterklasse som subklasse av e ferdiglaget klasse som allerede er laget og som implemeterer lytter-gresesittet NY De heter alle Adapter (KeyAdapter, MouseAdapter,..) og har implemetert tomme metoder for alle metodee i gresesittet. I e subklasse ka vi da ekelt omdefiere de metodee vi skal bruke (vi slipper å gi kode til reste av metodee) 19 Vi har tre kompoeter Overskrift Tekstfelt Trykkapp Bruker GridLayout 3 rader, 1 koloe Vi legger i e lytter på trykkappe Sier pig De teller opp atall gager trykket og skriver det ut i tekstfeltet Sjekk programmet vi lager og se vesetlige forskjelle på dette og det vi gjorde forrige gag 20

6 Kode for IputDemo - med idre klasse Lytter import javax.swig.*; import java.awt.evet.*; // NB! - for ilesig class IputDemo exteds JFrame { static it teller=0; JLabel etikett = ew JLabel("Her kommer svaret"); JTextField tekstfelt = ew JTextField(30); JButto kapp = ew JButto("Trykk her"); IputDemo() { super("iputdemo"); 21 void lagvidu() { tekstfelt.seteditable(true); Cotaier lerret = getcotetpae(); lerret.setlayout(ew GridLayout(3, 1)); lerret.add(etikett); lerret.add(tekstfelt); lerret.add(kapp); Lytter l1 = ew Lytter(); kapp.addactiolisteer(l1); setdefaultcloseoperatio(jframe.exit_on_close); pack(); class Lytter implemets ActioListeer { public void actioperformed(actioevet e) { teller ++; System.out.pritl( \07 ); tekstfelt.settext("du har trykket "+ teller + " gager"); public static void mai(strig[] args) { ew IputDemo().lagVidu(); // ed IputDemo Flere uavhegige Viduer A) Bare deklarere ulike klasser som subklasse av JFrame og lag objekt av dem i mai B) Lag flere viduer av samme type: Gå i løkke i mai og lag flere objekter på skjerme Plasserige på skjerme (øsker ikke alle oppå hveradre) Legger til følgede kode class Iput2Demo exteds JFrame { // som før... static JFrame last = ull; // peker til forrige vidu jeg har laget void lagvidu() { setlocatiorelativeto(last); // ed til høyre for last last = this;... public static void mai(strig[] args) { for (it i = 0; i< 3; i++) ew Iput2Demo().lagVidu(); 23 24

7 Når vi klikker på de ulike viduee KeyListeer Metoder i greseittet: char getkeychar() Returs the character associated with the key i this evet. it getkeycode() Returs the iteger keycode associated with the key i this evet. + ca 10 adre (så e ka forstå det blir litt tugt å implemetere dem alle hvis vi bare treger e eller to) iterface MouseListeer void mouseclicked(mouseevet e) Ivoked whe the mouse butto has bee clicked (pressed ad released) o a compoet. void mousepressed(mouseevet e) Ivoked whe a mouse butto has bee pressed o a compoet. void mousereleased(mouseevet e) Ivoked whe a mouse butto has bee released o a compoet. void mouseetered(mouseevet e) Ivoked whe the mouse eters a compoet. void mouseexited(mouseevet e) Ivoked whe the mouse exits a compoet. MouseEvet it getbutto() Returs which, if ay, of the mouse buttos has chaged state (blitt klikket på). it getclickcout() Returs the umber of mouse clicks associated with this evet (ekeltklikk, dobbeltklikk). it getx() Returs the horizotal x positio of the evet relative to the source compoet. it gety() Returs the vertical y positio of the evet relative to the source compoet. + ca. 10 adre metoder 27 28

8 KeyAdapter lytter på alle tastee Vil lytte på at brukere gir CR ( = eter-taste, vogretur på orsk) Telle opp hvor mage tastetrykk som tastes i i øverste felt Hvis det er CR, så oversette alt til STORE BOKSTAVER i ederste felt 12? 29 import javax.swig.*; import java.awt.evet.*; // Husk for hedelseshådterig class KeyDemo exteds JFrame { JLabel etikett = ew JLabel("Oversetter til store bokstaver"); JTextField tekstfelt = ew JTextField(30), svarfelt = ew JTextField(30) ; KeyDemo() { super("keydemo"); tekstfelt.seteditable(true); svarfelt.seteditable(true); Cotaier lerret = getcotetpae(); lerret.setlayout(ew GridLayout(3, 1)); lerret.add(etikett); lerret.add(tekstfelt); lerret.add(svarfelt); tekstfelt.addkeylisteer(ew Tast()); setdefaultcloseoperatio(jframe.exit_on_close); pack(); class Tast exteds KeyAdapter { it teller = 0; public void keyreleased (KeyEvet e) { if (e.getkeycode() == KeyEvet.VK_ENTER) { Strig s = tekstfelt.gettext(); svarfelt.settext(s.touppercase()); else { teller++; svarfelt.settext("du har å trykket på " + teller +" taster"); // slutt keyreleased og Tast public static void mai(strig[] args) { ew KeyDemo(); Rullegardidemostrasjo import javax.swig.*; import java.awt.evet.*; // Husk for hedelseshådterig class RulleDemo exteds JFrame { JLabel etikett; JTextField tekstfelt, svarfelt; JComboBox kopi; svarfelt.seteditable(false); Hit til gåte: RulleDemo() { super("rullegardidemostrasjo"); etikett = ew JLabel("Kopierig"); tekstfelt = ew JTextField(30); svarfelt = ew JTextField(30) ; tekstfelt.seteditable(true); kopi= ew JComboBox (); kopi.additem("kopier som er"); kopi.additem("kopier til store bokstaver"); kopi.additem("kopier til små bokstaver"); kopi.additem("slett"); kopi.seteditable(false); Cotaier lerret = getcotetpae(); lerret.setlayout(ew GridLayout(4, 1)); lerret.add(etikett); lerret.add(tekstfelt); lerret.add(svarfelt); lerret.add(kopi); Lytter lytt = ew Lytter(); tekstfelt.addkeylisteer(lytt); kopi.additemlisteer(lytt); setdefaultcloseoperatio (JFrame.EXIT_ON_CLOSE); pack(); // slutt kostruktør 32

9 Rulledemo. forts class Lytter exteds KeyAdapter implemets ItemListeer { it teller =0; public void keyreleased (KeyEvet e) { teller++; svarfelt.settext("du har å trykket på " + teller+" taster"): public void itemstatechaged(itemevet e) { Strig s = (Strig) e.getitem(); if (s.equals("kopier som er")) svarfelt.settext(tekstfelt.gettext()); else if (s.equals("kopier til store bokstaver")) svarfelt.settext(tekstfelt.gettext().touppercase()); else if (s.equals("kopier til små bokstaver")) svarfelt.settext(tekstfelt.gettext().tolowercase()); else if (s.equals("slett")) { svarfelt.settext(""); tekstfelt.settext(""); public static void mai(strig[] args) { ew RulleDemo(); MouseEvet it getbutto() Returs which, if ay, of the mouse buttos has chaged state (blitt klikket på). it getclickcout() Returs the umber of mouse clicks associated with this evet (ekeltklikk, dobbeltklikk). it getx() Returs the horizotal x positio of the evet relative to the source compoet. it gety() Returs the vertical y positio of the evet relative to the source compoet. + ca. 10 adre metoder // slutt class Rulledemo E Muse-demo et frihåds tegeprogram Spesifikasjo Vi må lytte på musa (lage e ege klasse) og lagre alle posisjoee musa har vært på (f.eks de siste posisjoee musa har vært på). Hver gag musa røres (kapp-ede-trekkes-til-yttsted), legger vi til et ytt pukt og teger opp hele kurve om igje Samme flate som teger, ka også lytte på musa Oppgave 1: Rett opp e opplagt feil i programmet (sammehegede strek) Oppgave 2: Sjekk hva som skjer hvis vi ikke lagrer alle posisjoee musa har vært på (me for eksempel bare de 100 siste) 35 36

10 import javax.swig.*; import java.awt.evet.*; class Muse exteds JPael implemets MouseMotioListeer { it [] x = ew it[10000], y= ew it[10000]; it at = 0; class MuseDemo exteds JFrame { MuseDemo() { settitle("musedemo"); Muse mus = ew Muse(); mus.addmousemotiolisteer(mus); getcotetpae().add(mus, BorderLayout.CENTER); setdefaultcloseoperatio(jframe.exit_on_close); pack(); public static void mai(strig[] args) { ew MuseDemo(); Muse() { setpreferredsize(ew Dimesio(500, 500)); // De to metodee i MouseMotioListeer: public void mousemoved (MouseEvet e) { ; public void mousedragged (MouseEvet e) { if (at == x.legth) at = 0; x[at] = e.getx(); y [at] = e.gety(); at ++; repait(); // her ber vi om at vår paitcompoeet() skal kalles public void paitcompoet (Graphics g) { super.paitcompoet(g); // Her teger vi for (it i=1; i<at; i++) g.drawlie(x[i-1],y[i-1],x[i],y[i]);

Hvordan gjør vi det, to typer av vinduer? Om Grafiske Bruker-Grensesnitt (GUI) GUI (Graphical User Interface)-programmering

Hvordan gjør vi det, to typer av vinduer? Om Grafiske Bruker-Grensesnitt (GUI) GUI (Graphical User Interface)-programmering GUI (Graphical User Iterface)-programmerig Uke 11 13. mars 2007 Grafisk brukergresesitt med Swig og awt Litt Modell Utsy - Kotroll Del I Stei Gjessig Ist for Iformatikk Uiv. i Oslo I dag (så lagt vi kommer)

Detaljer

Om Grafiske Bruker-Grensesnitt (GUI) Hvordan gjør vi det, to typer av vinduer? GUI (Graphical User Interface)-programmering

Om Grafiske Bruker-Grensesnitt (GUI) Hvordan gjør vi det, to typer av vinduer? GUI (Graphical User Interface)-programmering Uke9. mars 2005 rafisk brukergresesitt med Swig og awt Litt Modell Utsy - Kotroll Del I Stei jessig Ist for Iformatikk Uiv. i Oslo UI (raphical User Iterface)-programmerig I dag Hvorda få laget et vidu

Detaljer

Vi lærte sist å lage vinduer. Om å lage et vindu. GUI (Graphical User Interface)-programmering. Inf 1010-2008 GUI - del 2

Vi lærte sist å lage vinduer. Om å lage et vindu. GUI (Graphical User Interface)-programmering. Inf 1010-2008 GUI - del 2 GUI (Graphical User Interface)-programmering Inf 1010-2008 GUI - del 2 Stein Gjessing Inst for Informatikk Univ. i Oslo Tidligere Hvordan få laget et vindu på skjermen Grafikk (tegning i vinduet) Hvordan

Detaljer

INF1010. Grafisk brukergrensesni. med Swing og awt del 2. INF1010 - - Grafisk brukergrensesni4 II

INF1010. Grafisk brukergrensesni. med Swing og awt del 2. INF1010 - - Grafisk brukergrensesni4 II INF1010 Grafisk brukergrensesni. med Swing og awt del 2 1 GUI (Graphical User Interface)- programmering n n n Enkel behandling av knappetrykk mm. Layout av vinduer Om å lytte på knappetrykk med musa n

Detaljer

Uke mars 2005 GUI - del 2. GUI (Graphical User Interface)-programmering

Uke mars 2005 GUI - del 2. GUI (Graphical User Interface)-programmering Uke10 29. mars 2005 GUI - del 2 Stein Gjessing Inst for Informatikk Univ. i Oslo GUI (Graphical User Interface)-programmering Forrige gang Hvordan få laget et vindu på skjermen Hvordan legge ulike komponenter

Detaljer

Vi lærte sist å lage vinduer. Om å lage et vindu. GUI (Graphical User Interface)-programmering. GUI - del 2

Vi lærte sist å lage vinduer. Om å lage et vindu. GUI (Graphical User Interface)-programmering. GUI - del 2 GUI (Graphical User Interface)-programmering g Inf 1010-2009 GUI - del 2 Stein Gjessing Inst for Informatikk Univ. i Oslo Tidligere Hvordan få laget et vindu på skjermen Hvordan legge ulike komponenter

Detaljer

GUI - del 2. Stein Gjessing Inst for Informatikk Univ. i Oslo

GUI - del 2. Stein Gjessing Inst for Informatikk Univ. i Oslo Inf 1010-2009 GUI - del 2 Stein Gjessing Inst for Informatikk Univ. i Oslo GUI (Graphical User Interface)-programmering g Tidligere Hvordan få laget et vindu på skjermen Hvordan legge ulike komponenter

Detaljer

INF1010. Grafisk brukergrensesni. med Swing og awt del 2

INF1010. Grafisk brukergrensesni. med Swing og awt del 2 INF1010 Grafisk brukergrensesni. med Swing og awt del 2 GUI (Graphical User Interface)- programmering u u u Enkel behandling av knappetrykk mm. Layout av vinduer Om å lytte på knappetrykk med musa u Input

Detaljer

Inf 1010 GUI - del 2

Inf 1010 GUI - del 2 Inf 1010 GUI - del 2 Stein Gjessing Institutt for Informatikk Universitetet i Oslo 1 GUI (Graphical User Interface)-programmering Tidligere Hvordan få laget et vindu på skjermen Hvordan legge ulike komponenter

Detaljer

Tråder i Java Parallelle programmmer og programbiter

Tråder i Java Parallelle programmmer og programbiter Oversikt Tråder i Java Parallelle programmmer og programbiter Stei Gjessig, Ist. for iformatikk, Uiv. i Oslo Hva er parallelle programmer? Hvorfor parallelle programmer? Hvorda ka dette skje i e maski

Detaljer

Inf mars 2010 GUI del 2

Inf mars 2010 GUI del 2 Inf 1010 11. mars 2010 GUI del 2 Stein Gjessing Ins$tu' for Informa$kk Universitetet i Oslo 1 GUI (Graphical User Interface) programmering Tidligere Hvordan få laget et vindu på skjermen Hvordan legge

Detaljer

n / ($$ n 0$$/ $ " 1! <! ')! $ : ; $.+ $.5.+ .!)/!/ ) $.) 6$ 7$, $.5.,.9+- 5.+ 8$ 7$, + - 5.

n / ($$ n 0$$/ $  1! <! ')! $ : ; $.+ $.5.+ .!)/!/ ) $.) 6$ 7$, $.5.,.9+- 5.+ 8$ 7$, + - 5. "# %% & ' ()*,"""). / " %% &%% / ( 0/ " 1 /(232.,..5. 6 7,.5.,. / : ; 5.. )// ).) 8 < ') < 6 6 8 < 8 8 7,.5.,.9 5. 5. 5. 5. 5.. 5..9 /.> DB(?/ ( / (.?/. /?(5@"""6(?( 5@""6 &. A8 6 (."B 3 8 6 ) ("?/& =

Detaljer

INF Våren Li' repe$sjon om Tråder og GUI. Stein Gjessing, Ins$tu' for informa$kk, Universitetet i Oslo. Ins$tu' for informa$kk

INF Våren Li' repe$sjon om Tråder og GUI. Stein Gjessing, Ins$tu' for informa$kk, Universitetet i Oslo. Ins$tu' for informa$kk INF1010 - Våren 2015 Li' repe$sjon om Tråder og GUI Stein Gjessing,, Universitetet i Oslo 1 GUI, tråder og hendelser Op-sys (Win, Linux,..) Ditt Program sin Event Dispatch Thread Hver ting brukeren gjør

Detaljer

INF1010 Grafisk brukergrensesni3 med Swing og awt del 1 INF1010

INF1010 Grafisk brukergrensesni3 med Swing og awt del 1 INF1010 Grafisk brukergrensesni3 med Swing og awt del 1 GUI (Graphical User Interface)- programmering Hvordan lage et vindu på skjermen Hvordan legge ulike komponenter i vinduet (trykknapper, tekseelter, tekst,

Detaljer

INF1010 - våren 2007 16. januar, uke 3 - Oversikt og forutsetninger Java datastruktur-tegninger

INF1010 - våren 2007 16. januar, uke 3 - Oversikt og forutsetninger Java datastruktur-tegninger INF1010 - våre 2007 16. jauar, uke 3 - Oversikt og forutsetiger Java datastruktur-tegiger Stei Gjessig Ist. for iformatikk Nye temaer i INF1010 Fra problem til program Software Egieerig light, fasee i

Detaljer

Grafisk Brukergrensesnitt

Grafisk Brukergrensesnitt Grafisk Brukergrensesnitt Repetisjonskurs Hva må kunnes? JFrame JPanel JComponents Layouts Listeners jframe Representerer et vindu JComponents legges på vinduet Har en tittel og størrelse Komponenter struktureres

Detaljer

IN1010 våren 2018 Tirsdag 13. februar. Interface - Grensesnitt

IN1010 våren 2018 Tirsdag 13. februar. Interface - Grensesnitt IN1010 våre 2018 Tirsdag 13. februar Iterface - Gresesitt Stei Gjessig Dages hovedtema Egelsk: Iterface (også et Java-ord) Norsk: Gresesitt Les otatet Gresesitt i Java av Stei Gjessig To motivasjoer for

Detaljer

INF1010 våren 2017 Torsdag 9. februar. Interface - Grensesnitt

INF1010 våren 2017 Torsdag 9. februar. Interface - Grensesnitt INF1010 våre 2017 Torsdag 9. februar Iterface - Gresesitt og litt om geeriske klasser og geeriske iterface hvis tid Stei Gjessig Dages hovedtema Egelsk: Iterface (også et Java-ord) Norsk: Gresesitt Les

Detaljer

import javax.swing.*; import java.awt.*;

import javax.swing.*; import java.awt.*; import javax.swing.*; import java.awt.*; import javax.swing.*; import java.awt.*; Pluss mange Implementasjoner av forskjellige grensesnitt class RammeDemo { public static void main(string[] args) { JFrame

Detaljer

INF1010 våren 2017 Torsdag 26. januar. Arv og subklasser del 1. Stein Gjessing Institutt for informatikk Universitetet i Oslo

INF1010 våren 2017 Torsdag 26. januar. Arv og subklasser del 1. Stein Gjessing Institutt for informatikk Universitetet i Oslo INF1010 våre 2017 Torsdag 26. jauar Arv og subklasser del 1 Stei Gjessig Istitutt for iformatikk Uiversitetet i Oslo 1 Når du har lært om subklasser ka du programmere med: Første uke: Spesialiserig (og

Detaljer

Grafiske brukergrensesnitt med Swing og AWT

Grafiske brukergrensesnitt med Swing og AWT Grafiske brukergrensesnitt med Swing og AWT - 1 av 11 INNHOLD INTRODUKSJON 3 VINDUER, RAMMER OG PANELER. 4 KOMPONENTER OG VINDUSELEMENTER 6 KNAPPER OG KNAPPELYTTERE.. 8 LAYOUT.. 10 APPENDIX. 11 2 av 11

Detaljer

Gjennomgang av eksamen H99

Gjennomgang av eksamen H99 Gjennomgang av eksamen H99 Administrasjon av kurser, studenter og påmeldinger Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for Informatikk Universitetet i Oslo Oppgave 1 (15 %) (Besvares

Detaljer

INF1010 våren 2005 Uke 3, 25. januar Arv og subklasser del I

INF1010 våren 2005 Uke 3, 25. januar Arv og subklasser del I Emeoversikt subklasser INF1010 våre 2005 Uke 3, 25. jauar Arv og subklasser del I Stei Gjessig Istitutt for iformatikk 1 Geeraliserig - spesialiserig Gjebruk av klasser Ved sammesetig (komposisjo) Ved

Detaljer

Uke 12 IN3030 v2019. Eric Jul PSE-gruppa Ifi, UiO

Uke 12 IN3030 v2019. Eric Jul PSE-gruppa Ifi, UiO Uke 12 IN3030 v2019 Eric Jul PSE-gruppa Ifi, UiO Oblig 5 Kovekse Ihylliga Itroduksjo De kovekse ihylliga til pukter Oblig 5 Hva er det, defiisjo Hvorda ser de ut Hva brukes de til? Hvorda fier vi de? 24

Detaljer

INF3030 Uke 6, våren Eric Jul PSE Inst. for informatikk

INF3030 Uke 6, våren Eric Jul PSE Inst. for informatikk INF3030 Uke 6, våre 2019 Eric Jul PSE Ist. for iformatikk 1 Å dele opp algoritme Kode består e eller flere steg; som oftest i form av e eller flere samliger av løkker (som er ekle, doble, triple..) Vi

Detaljer

INF3030 Uke 7, våren Eric Jul PSE Inst. for informatikk

INF3030 Uke 7, våren Eric Jul PSE Inst. for informatikk INF3030 Uke 7, våre 2019 Eric Jul PSE Ist. for iformatikk 1 Hva så vi på i uke 6 1. Eratosthees sil 2. Kokker og Kelere 3. Cocurrecy: De første to av tre måter å programmere moitorer i Java eksemplifisert

Detaljer

IN1010 våren 2019 Onsdag 15. mai. Rask repetisjon av subklasser og tråder (pluss µ nytt)

IN1010 våren 2019 Onsdag 15. mai. Rask repetisjon av subklasser og tråder (pluss µ nytt) IN1010 våre 2019 Osdag 15. mai Rask repetisjo av subklasser og tråder (pluss µ ytt) Stei Gjessig Istitutt for iformatikk Uiversitetet i Oslo 1 Iledig Dette er 41 lysark som det ikke er mulig å gå gjeom

Detaljer

INF våren 2005 Uke 1, 11 jan - Praktisk, oversikt og forutsetninger

INF våren 2005 Uke 1, 11 jan - Praktisk, oversikt og forutsetninger INF1010 - våre 2005 Uke 1, 11 ja - Praktisk, oversikt og forutsetiger Stei Gjessig og Stei Michael Storleer Ist. for iformatikk Om INF1010 Forutsetter INF1000 (eller tilsvarede som Humit1700?) Lærebok

Detaljer

INF2440 Uke 5, våren2018. Eric Jul PSE Inst. for informatikk

INF2440 Uke 5, våren2018. Eric Jul PSE Inst. for informatikk INF2440 Uke 5, våre2018 Eric Jul PSE Ist. for iformatikk 1 Hva så vi på i Uke4 1. Kommetarer om matrise-multiplikasjo 2. Hvorfor vi ikke bruker PRAM modelle for parallelle beregiger som skal gå fort. 3.

Detaljer

GUI («Graphical User Interface») del 2

GUI («Graphical User Interface») del 2 GUI («Graphical User Interface») del 2 Interaksjon med brukeren Hendelsesdrevet programmering Tråder i GUI Se også på Infoskrivet https://www.uio.no/studier/emner/matnat/ ifi/in1010/v18/gui/fx-intro-in1010.pdf

Detaljer

GUI («Graphical User Interface») del 2

GUI («Graphical User Interface») del 2 GUI («Graphical User Interface») del 2 Interaksjon med brukeren Hendelsesdrevet programmering Tråder i GUI Et spill basert på klikkbare ruter Se også på Infoskrivet https://www.uio.no/studier/emner/matnat/

Detaljer

UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet

UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i : INF 101 - Grunnkurs i objektorientert programmering Eksamensdag : Tirsdag 4. juni 2002 Tid for eksamen : 09.00-15.00 Oppgavesettet

Detaljer

Mer om utvalgsundersøkelser

Mer om utvalgsundersøkelser Mer om utvalgsudersøkelser I uderkapittel 3.6 i læreboka gir vi e kort iførig i takegage ved utvalgsudersøkelser. Vi gir her e grudigere framstillig av temaet. Populasjo og utvalg Ved e utvalgsudersøkelse

Detaljer

INF 1010, vår 2005 Løsningsforslag uke 10

INF 1010, vår 2005 Løsningsforslag uke 10 INF 1010, vår 2005 Løsningsforslag uke 10 Anders Brunland 1. april 2005 Oppgave 1 Oppgave 15.4 i i Rett på Java. Løsningsforslag De forskjellige komponentene settes i metoden initcomponents. Her settes

Detaljer

Leica Lino Presis selvhorisonterende punkt- og linjelaser

Leica Lino Presis selvhorisonterende punkt- og linjelaser Impex Produkter AS Verkseier Furuluds vei 15 0668 OSLO Tel. 22 32 77 20 Fax 22 32 77 25 ifo@impex.o www.impex.o Leica Lio Presis selvhorisoterede pukt- og lijelaser Still opp, slå på, klar! Med Leica Lio

Detaljer

Stabler, Køer og Lister. ADT er

Stabler, Køer og Lister. ADT er Stabler, er og Lister I. STEL OG QUEUE DT I.1 DT I.2 rray implemetasjo I.3 Liket-Liste implemetasjo II. DQUEUE DT III.IMPLEMENTSJON V EN DT MED EN NNEN DT Kap. 3 (kursorisk: 3.1.3, 3.2.3, 3.4; utatt: 3.2.4,

Detaljer

JPanel. Komponent hieraki. Window/JWindow. Applet/JApplet. JDialog. JFrame

JPanel. Komponent hieraki. Window/JWindow. Applet/JApplet. JDialog. JFrame Komponent hieraki Applet JPanel Component Container JComponent Panel Window JWindow Frame JApplet Dialog Brukes vanligvis som en ekstra container for å få til ønske layout. Legges til som en hvilken som

Detaljer

Forprosjektrapport. I denne rapporten er aktivitet og oppgave ensbetydende. Bruker referer til sluttbrukerne av applikasjonen og ikke administrator.

Forprosjektrapport. I denne rapporten er aktivitet og oppgave ensbetydende. Bruker referer til sluttbrukerne av applikasjonen og ikke administrator. Forprosjektrapport Presetasjo... Itroduksjo... Bakgru... Mål og rammebetigelser... Kravspesifikasjo... Mål... Rammebetigelser... 3 Tekologi... 3 Løsiger/alterativer... 3 Aalyse av virkiger... 7 Presetasjo

Detaljer

INF1010 Grafisk brukergrensesni3 (GUI) med Swing/awt. del 1

INF1010 Grafisk brukergrensesni3 (GUI) med Swing/awt. del 1 INF1010 Grafisk brukergrensesni3 (GUI) med Swing/awt del 1 1 Hvordan lage et vindu på skjermen 2 Hvordan legge inn enkle elementer i vinduet 3 Hvordan lage et vindu med et sudokuspill 4 Hvordan lage en

Detaljer

Tre måter å lese fra terminal. Java 4. Eksempel. Formatert utskrift til skjerm

Tre måter å lese fra terminal. Java 4. Eksempel. Formatert utskrift til skjerm Mer om easyio Mer om forgreninger Løkker 7. september 2004 Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for informatikk Universitetet i Oslo Java 4 1 Tre måter å lese fra terminal Først:

Detaljer

Om Grafiske Bruker-Grensesnitt (GUI) Hvordan gjør vi det: To måter. GUI (Graphical User Interface)-programmering

Om Grafiske Bruker-Grensesnitt (GUI) Hvordan gjør vi det: To måter. GUI (Graphical User Interface)-programmering 4. mars 2008 Grafisk brukergrensesnitt med Swing og awt Litt Modell Utsyn - Kontroll Del I Stein Gjessing Inst for Informatikk Univ. i Oslo GUI (Graphical User Interface)-programmering I dag (så langt

Detaljer

Oblig 4Hybelhus litt mer tips enn i oppgaven

Oblig 4Hybelhus litt mer tips enn i oppgaven Oblig 4Hybelhus litt mer tips enn i oppgaven lørdag 19. okt 2013 Arne Maus Obligatorisk oppgave 4 Gulbrand Grås husleiesystem I denne oppgaven skal vi se på hans studenthus Utsyn. Utsyn består av 3 etasjer,

Detaljer

TOD063 Datastrukturer og algoritmer

TOD063 Datastrukturer og algoritmer TOD063 Datastrukturer og algoritmer Øving : 3 Utlevert : Uke 7 Innleveringsfrist : 26. februar 2010 Klasse : 1 Data og 1 Informasjonsteknologi Gruppearbeid: 2-3 personer pr. gruppe. Oppgave 1 Vi skal lage

Detaljer

Terminprøve R2 Høsten 2014

Terminprøve R2 Høsten 2014 Termiprøve R Høste 04 Del Tid: 3 timer Hjelpemidler: Skrivesaker Oppgave (6 poeg) E flate i rommet er gitt ved likige: x 4x y 6y z 8z 0 0 a) Vis at puktet P3, 5, ligger på flate b) Vis at dette er e kuleflate

Detaljer

4. mars 2008 Grafisk brukergrensesnitt med Swing og awt Litt Modell Utsyn - Kontroll Del I. Stein Gjessing Inst for Informatikk Univ.

4. mars 2008 Grafisk brukergrensesnitt med Swing og awt Litt Modell Utsyn - Kontroll Del I. Stein Gjessing Inst for Informatikk Univ. 4. mars 2008 Grafisk brukergrensesnitt med Swing og awt Litt Modell Utsyn - Kontroll Del I Stein Gjessing Inst for Informatikk Univ. i Oslo GUI (Graphical User Interface)-programmering I dag (så langt

Detaljer

Terminprøve R2 Høsten 2014 Løsning

Terminprøve R2 Høsten 2014 Løsning Termiprøve R Høste 04 Løsig Del Tid: 3 timer Hjelpemidler: Skrivesaker Oppgave (6 poeg) E flate i rommet er gitt ved likige: x 4x y 6y z 8z 0 0 a) Vis at puktet P3, 5, ligger på flate Puktet P3, 5, ligger

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i Eksamensdag: 6. juni 2006 Tid for eksamen: 1430 1730 Oppgavesettet er på 6 sider. Vedlegg: INF1010 Objektorientert programmering

Detaljer

Kommentarer til oppgaver;

Kommentarer til oppgaver; Kapittel - Algebra Versjo: 11.09.1 - Rettet feil i 0, 1 og 70 og lagt i litt om GeoGebra-bruk Kommetarer til oppgaver; 0, 05, 10, 13, 15, 5, 9, 37, 5,, 5, 59, 1, 70, 7, 78, 80,81 0 a) Trykkfeil i D-koloe

Detaljer

INF1010 våren 2017 Onsdag 25. januar. Litt om unntak i Java

INF1010 våren 2017 Onsdag 25. januar. Litt om unntak i Java INF1010 våren 2017 Onsdag 25. januar Litt om unntak i Java Stein Gjessing Nytt tema: Feilhåndtering (IO: Innlesing/Utskrift) n En metode som kan komme til å gjøre en IO-feil på fil må enten behandle denne

Detaljer

2 Om statiske variable/konstanter og statiske metoder.

2 Om statiske variable/konstanter og statiske metoder. Litt om datastrukturer i Java Av Stein Gjessing, Institutt for informatikk, Universitetet i Oslo 1 Innledning Dette notatet beskriver noe av det som foregår i primærlageret når et Javaprogram utføres.

Detaljer

INF1010 våren 2019 Onsdag 30. januar. Mer om unntak i Java (med litt repetisjon av I/O først)

INF1010 våren 2019 Onsdag 30. januar. Mer om unntak i Java (med litt repetisjon av I/O først) INF1010 våren 2019 Onsdag 30. januar Mer om unntak i Java (med litt repetisjon av I/O først) Stein Gjessing Lesing fra terminal og fil navn: mininn Bruk Scanner: Scanner mininn = new Scanner(); Type:

Detaljer

IN3030 Uke 12, v2019. Eric Jul PSE, Inst. for informatikk

IN3030 Uke 12, v2019. Eric Jul PSE, Inst. for informatikk IN3030 Uke 12, v2019 Eric Jul PSE, Ist. for iformatikk 1 Hva skal vi se på i Uke 12 Review Radix sort Oblig 4 Text Program Parallellizig 2 Oblig 4 Radix sort Parallelliser Radix-sorterig med fra 1 5 sifre

Detaljer

EKSAMEN. TILLATTE HJELPEMIDLER: Alle trykte og skrevne. INNFØRING MED PENN, evt. trykkblyant som gir gjennomslag

EKSAMEN. TILLATTE HJELPEMIDLER: Alle trykte og skrevne. INNFØRING MED PENN, evt. trykkblyant som gir gjennomslag KANDIDATNUMMER: EKSAMEN EMNENAVN: Programutvikling EMNENUMMER: IMT3281 EKSAMENSDATO:05/12-2007 KLASSE: 06HBINDA/06HBINDP TID: 09.00 13.00 EMNEANSVARLIG: Øivind Kolloen ANTALL SIDER UTLEVERT: 7 TILLATTE

Detaljer

Påliteligheten til en stikkprøve

Påliteligheten til en stikkprøve Pålitelighete til e stikkprøve Om origiale... 1 Beskrivelse... 2 Oppgaver... 4 Løsigsforslag... 4 Didaktisk bakgru... 5 Om origiale "Zuverlässigkeit eier Stichprobe" på http://www.mathe-olie.at/galerie/wstat2/stichprobe/dee

Detaljer

Oblig 4 (av 4) INF1000, høsten 2012 Værdata, leveres innen 9. nov. kl. 23.59

Oblig 4 (av 4) INF1000, høsten 2012 Værdata, leveres innen 9. nov. kl. 23.59 Oblig 4 (av 4) INF1000, høsten 2012 Værdata, leveres innen 9. nov. kl. 23.59 Formål Formålet med denne oppgaven er å gi trening i hele pensum og i å lage et større program. Løsningen du lager skal være

Detaljer

Om Grafiske Bruker-Grensesnitt (GUI) Hvordan gjør vi det: To måter. GUI (Graphical User Interface)-programmering. del 1. Litt Modell Utsyn - Kontroll

Om Grafiske Bruker-Grensesnitt (GUI) Hvordan gjør vi det: To måter. GUI (Graphical User Interface)-programmering. del 1. Litt Modell Utsyn - Kontroll INF1010-3. mars 2009 Grafisk brukergrensesnitt med Swing og awt - del 1 Litt Modell Utsyn - Kontroll Stein Gjessing Inst for Informatikk Univ. i Oslo GUI (Graphical User Interface)-programmering I dag

Detaljer

Løsningsforslag ukeoppg. 6: 28. sep - 4. okt (INF1000 - Høst 2011)

Løsningsforslag ukeoppg. 6: 28. sep - 4. okt (INF1000 - Høst 2011) Løsningsforslag ukeoppg. 6: 28. sep - 4. okt (INF1000 - Høst 2011) Løsningsforslag til oppgave 7, 8, og 9 mangler Klasser og objekter (kap. 8.1-8.14 i "Rett på Java" 3. utg.) NB! Legg merke til at disse

Detaljer

EKSAMEN Løsningsforslag

EKSAMEN Løsningsforslag ..4 EKSAMEN Løsigsforslag Emekode: ITF75 Dato: 6. desember Eme: Matematikk for IT Eksamestid: kl 9. til kl. Hjelpemidler: To A4-ark med valgfritt ihold på begge sider. Kalkulator er ikke tillatt. Faglærer:

Detaljer

Plan for fagdag 3. Plan: Litt om differanse- og summefølger. Sammenhengen a n a 1 n 1 i 1

Plan for fagdag 3. Plan: Litt om differanse- og summefølger. Sammenhengen a n a 1 n 1 i 1 Pla for fagdag 3 R2-18.11.10 Pla: Litt om differase- og summefølger. Sammehege a a 1 1 i 1 d i. Geometriske resoemet. Arbeidsoppgaver. Differase- og summefølger Regresjo med lommereger Differaser er ofte

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO BOKMÅL Det matematisk-naturvitenskapelige fakultet Eksamen i : Eksamensdag : Torsdag 2. desember 2004 Tid for eksamen : 09.00 12.00 Oppgavesettet er på : Vedlegg : Tillatte hjelpemidler

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF1000 Grunnkurs i objektorientert programmering Eksamensdag: 13. juni 2006 Tid for eksamen: 9.00 12.00 Oppgavesettet er på 5

Detaljer

INF1000 (Uke 5) Mer om løkker, arrayer og metoder

INF1000 (Uke 5) Mer om løkker, arrayer og metoder INF1000 (Uke 5) Mer om løkker, arrayer og metoder Grunnkurs i programmering Institutt for Informatikk Universitetet i Oslo Anja Bråthen Kristoffersen og Are Magnus Bruaset Praktisk informasjon Når disse

Detaljer

Løsningsforslag til eksamen i INF1000 våren 2006

Løsningsforslag til eksamen i INF1000 våren 2006 Løsningsforslag til eksamen i INF1000 våren 2006 Oppgave 1 a) -1 false 7 b) 30 c) Verdien til j er: 4Verdien til k er: 3Verdien til n er: 7 d) Andre if-test er true Tredje if-test er true e) k = 4 k =

Detaljer

23.09.2015. Introduksjon til objektorientert. programmering. Hva skjedde ~1967? Lokale (og globale) helter. Grunnkurs i objektorientert.

23.09.2015. Introduksjon til objektorientert. programmering. Hva skjedde ~1967? Lokale (og globale) helter. Grunnkurs i objektorientert. Grunnkurs i objektorientert programmering Introduksjon til objektorientert programmering INF1000 Høst 2015 Siri Moe Jensen INF1000 - Høst 2015 uke 5 1 Siri Moe Jensen INF1000 - Høst 2015 uke 5 2 Kristen

Detaljer

Del 1 En oversikt over C-programmering

Del 1 En oversikt over C-programmering Del 1 En oversikt over C-programmering 1 RR 2016 Starten C ble utviklet mellom 1969 og 1973 for å re-implementere Unix operativsystemet. Er et strukturert programmeringsspråk, hvor program bygges opp av

Detaljer

AVDELING FOR INGENIØRUTDANNING EKSAMENSOPPGAVE

AVDELING FOR INGENIØRUTDANNING EKSAMENSOPPGAVE AVDELING FOR INGENIØRUTDANNING EKSAMENSOPPGAVE Eme: Diskret matematikk Gruppe(r): Emekode: FO 019A Dato: 12.12.200 Faglig veileder: Ulf Uttersrud Eksamestid: 9-14 Eksamesoppgave består av: Atall sider

Detaljer

Kapittel 10 fra læreboka Grafer

Kapittel 10 fra læreboka Grafer Forelesigsotat i Diskret matematikk torsdag 6. oktober 017 Kapittel 10 fra læreboka Grafer (utdrag) E graf er e samlig pukter (oder) og kater mellom puktee (eg. odes, vertex, edge). E graf kalles rettet

Detaljer

INF1010 MVC i tekstbaserte programmer

INF1010 MVC i tekstbaserte programmer INF1010 MVC i tekstbaserte programmer Marit Nybakken marnybak@ifi.uio.no 9. februar 2004 Marit har ingen utdanning innen systemutvikling og vet antageligvis ikke hva hun prater om. Hun har dog skumlest

Detaljer

INF1000 oppgaver til uke 38 (17 sep 23 sep)

INF1000 oppgaver til uke 38 (17 sep 23 sep) INF1000 oppgaver til uke 38 (17 sep 23 sep) Formål: Øve på programmering med forgreninger, løkker og arrayer. Teoritimer (plenumsøvinger): 1. Oppgave 4 og 6 i kapittel 4 i læreboka. 2. En blokk er en samling

Detaljer

29.02.2012. GUI-programmering, del 3 Vinduslyttere Dialogvinduer GUI-komponenten JTable Egne datamodellklasser. En oversikt over kapittel 19 i boka

29.02.2012. GUI-programmering, del 3 Vinduslyttere Dialogvinduer GUI-komponenten JTable Egne datamodellklasser. En oversikt over kapittel 19 i boka GUI-programmering, del 3 Vinduslyttere Dialogvinduer GUI-komponenten JTable Egne datamodellklasser LC191D Videregående programmering Semesterplan: http://aitel.hist.no/fag/vprg/index_lc191d.php Høgskolen

Detaljer

1. Finn klassene (hvilke objekter er det i problemet) 1. Dataene som beskriver problemet (hvilke objekter har vi og hvor mange klasser er det?

1. Finn klassene (hvilke objekter er det i problemet) 1. Dataene som beskriver problemet (hvilke objekter har vi og hvor mange klasser er det? Obligatorisk oppgave 3 Gulbrand Grås husleiesystem Oblig 3hus litt mer tips enn i oppgaven I denne oppgaven skal vi se på hans studenthus Utsyn. Utsyn består av 3 etasjer, nummerert fra -3. I hver etasje

Detaljer

Løse reelle problemer

Løse reelle problemer Løse reelle problemer Litt mer om løkker, metoder med returverdier, innlesing fra fil og strenger INF1000, uke5 Ragnhild Kobro Runde MER OM LØKKER Repetisjon fra forrige uke: while Syntaks: while (condition)

Detaljer

IN1010 våren 2019 Onsdag 6. februar. Arv og subklasser - del 2

IN1010 våren 2019 Onsdag 6. februar. Arv og subklasser - del 2 IN1010 våre 2019 Osdag 6. februar Arv og subklasser - del 2 Stei Gjessig Dages tema Virtuelle metoder som er det samme som Polymorfi Når bruker vi arv / år bruker vi komposisjo Kostruktører i subklasser

Detaljer

Lese fra fil. INF1000 : Forelesning 5. Eksempel. De vanligste lesemetodene. Metoder:

Lese fra fil. INF1000 : Forelesning 5. Eksempel. De vanligste lesemetodene. Metoder: Lese fra fil Filbehandling Tekster Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for informatikk Universitetet i Oslo INF1000 : Forelesning 5 Vi må først importere pakken easyio Vi åpner

Detaljer

Oppgave 1. Oppgave 2. Oppgave 3. Prøveeksamen i INF1000. Ole Christian og Arne. 23. november 2004

Oppgave 1. Oppgave 2. Oppgave 3. Prøveeksamen i INF1000. Ole Christian og Arne. 23. november 2004 Oppgave 1 Prøveeksamen i INF1000 Ole Christian og Arne 23. november 2004 Er dette lovlige deklarasjoner (når de foretas inni en metode)? JA NEI int i; int k = i; int i, j = 4; int k = j; double[] x = new

Detaljer

Konfidensintervall. Notat til STK1110. Ørnulf Borgan, Ingrid K. Glad og Anders Rygh Swensen Matematisk institutt, Universitetet i Oslo.

Konfidensintervall. Notat til STK1110. Ørnulf Borgan, Ingrid K. Glad og Anders Rygh Swensen Matematisk institutt, Universitetet i Oslo. Kofidesitervall Notat til STK1110 Ørulf Borga, Igrid K. Glad og Aders Rygh Swese Matematisk istitutt, Uiversitetet i Oslo August 2007 Formål E valig metode for å agi usikkerhete til et estimat er å berege

Detaljer

if-tester Funksjoner, løkker og iftester Løkker og Informasjonsteknologi 2 Læreplansmål Gløer Olav Langslet Sandvika VGS

if-tester Funksjoner, løkker og iftester Løkker og Informasjonsteknologi 2 Læreplansmål Gløer Olav Langslet Sandvika VGS Løkker og if-tester Gløer Olav Langslet Sandvika VGS 29.08.2011 Informasjonsteknologi 2 Funksjoner, løkker og iftester Læreplansmål Eleven skal kunne programmere med enkle og indekserte variabler eller

Detaljer

INF2440, Uke 3, våren 2018 Regler for parallelle programmer, mer om cache og Radix-algoritmen. Eric Jul PSE, Inst. for informatikk

INF2440, Uke 3, våren 2018 Regler for parallelle programmer, mer om cache og Radix-algoritmen. Eric Jul PSE, Inst. for informatikk INF2440, Uke 3, våre 2018 Regler for parallelle programmer, mer om cache og Radix-algoritme Eric Jul PSE, Ist. for iformatikk 1 Hva har vi sett på i Uke2 I) Tre måter å avslutte tråder vi har startet.

Detaljer

2T kapittel 3 Modellering og bevis Utvalgte løsninger oppgavesamlingen

2T kapittel 3 Modellering og bevis Utvalgte løsninger oppgavesamlingen T kapittel 3 Modellerig og bevis Utvalgte løsiger oppgavesamlige 301 a Sitthøyde i 1910 blir 170,0 171, 4 170,7. I 1970 blir de 177,1 179, 4 178,3. b Med som atall år etter 1900 og y som sitthøyde i cetimeter

Detaljer

OBJEKTER SOM EN PROGRAMMERINGS-TEKNIKK

OBJEKTER SOM EN PROGRAMMERINGS-TEKNIKK INF1000: Forelesning 6 Klasser og objekter del 1 OBJEKTER SOM EN PROGRAMMERINGS-TEKNIKK Motivasjon Anta at vi ønsker å lage et studentregister hvor vi for hver student lagrer, bruker og telefonnummer Med

Detaljer

Prøveeksamen i INF1000. Ole Christian og Arne. 23. november 2004

Prøveeksamen i INF1000. Ole Christian og Arne. 23. november 2004 Prøveeksamen i INF1000 Ole Christian og Arne 23. november 2004 Oppgave 1 Er dette lovlige deklarasjoner (når de foretas inni en metode)? JA NEI int i; int k = i; int i, j = 4; int k = j; double[] x = new

Detaljer

Hendelser Apprentice ComputerCraft PDF

Hendelser Apprentice ComputerCraft PDF Helser Apprentice ComputerCraft PDF Introduksjon I denne leksjonen skal vi se nærmere på hvordan datamaskinene bruker såkalte helser for å reagere på ting som tastetrykk, museklikk og så videre. Etterhvert

Detaljer

Fra Python til Java, del 2

Fra Python til Java, del 2 Fra Python til Java, del 2 Hvordan kjøre Java? På Ifis maskiner På egen maskin Et eksempel Array-er For-setninger Lesing og skriving Metoder Biblioteket Hva trenger vi egentlig? Å kjøre Java For å kunne

Detaljer

Hva er verdien til variabelen j etter at følgende kode er utført? int i, j; i = 5; j = 10; while ( i < j ) { i = i + 2; j = j - 1; }

Hva er verdien til variabelen j etter at følgende kode er utført? int i, j; i = 5; j = 10; while ( i < j ) { i = i + 2; j = j - 1; } Hva er verdien til variabelen j etter at følgende kode er utført? int i, j; i = 5; j = 10; while ( i < j ) { i = i + 2; j = j - 1; Hva skrives ut på skjermen når følgende kode utføres? int [] tallene =

Detaljer

LO191D/LC191D Videregående programmering

LO191D/LC191D Videregående programmering LO191D/LC191D Videregående programmering Eksamen mai 2012 Løsningsforslag Oppgave 1 Klassen Destinasjon: // Oppgaven er uklar på hva som skal inn i klassen Destinasjon. // Her følger en minimumsutgave

Detaljer

Bli Kjent med Datamaskinen Introduksjon ComputerCraft PDF

Bli Kjent med Datamaskinen Introduksjon ComputerCraft PDF Bli Kjent med Datamaskinen Introduksjon ComputerCraft PDF Introduksjon Vi begynner med å bygge en enkel datamaskin. Etter å ha brukt litt tid på å bli kjent med hvordan datamaskinen virker, bruker vi den

Detaljer

Oppgave 1. INF1000 Uke 13. Oppgave 2. Oppgave 3. Er dette lovlige deklarasjoner (når de foretas inni en metode)? JA NEI

Oppgave 1. INF1000 Uke 13. Oppgave 2. Oppgave 3. Er dette lovlige deklarasjoner (når de foretas inni en metode)? JA NEI Oppgave 1 INF1000 Uke 13 Gjennomgang av prøveeksamen fra høsten 2004 Er dette lovlige deklarasjoner (når de foretas inni en metode)? JA NEI int i; int k = i; int i, j = 4; int k = j; double[] x = new double[1];

Detaljer

Skilpaddetekst. Steg 1: Tekst på flere linjer. Sjekkliste. Introduksjon

Skilpaddetekst. Steg 1: Tekst på flere linjer. Sjekkliste. Introduksjon Skilpaddetekst Ekspert Python Introduksjon I denne oppgaven skal vi skrive kode, slik at vi kan skrive stor tekst ved hjelp av turtle slik som på bildet under. Steg 1: Tekst på flere linjer Vi har allerede

Detaljer

1. Premonitions - Foresight (ex-rmgdn Pause)

1. Premonitions - Foresight (ex-rmgdn Pause) SVÆRT RUBATO - MYE VISUELLE TEGN: Dee låta har svært lite tydelig tempo Derfor må vi fokusere på å gjøre mye visuelle teg til hveradre I tillegg til visuelle teg (mest av alt felles asatser på lage toer

Detaljer

Seminaroppgaver IN1010, uke 2

Seminaroppgaver IN1010, uke 2 Seminaroppgaver IN1010, uke 2 1.a: Skriv en klasse HeiVerden.java. Klassen skal inneholde en main- metode (se på notatet fra tidligere). Inne i main -metoden skal programmet først la brukeren oppgi en

Detaljer

INF1000: Forelesning 6. Klasser og objekter del 1

INF1000: Forelesning 6. Klasser og objekter del 1 INF1000: Forelesning 6 Klasser og objekter del 1 OBJEKTER SOM EN PROGRAMMERINGS-TEKNIKK 2 Motivasjon Anta at vi ønsker å lage et studentregister hvor vi for hver student lagrer navn, brukernavn og telefonnummer.

Detaljer

13.09.2012 LITT OM OPPLEGGET. INF1000 EKSTRATILBUD Stoff fra uke 1-3 12. September 2012 Siri Moe Jensen EKSEMPLER

13.09.2012 LITT OM OPPLEGGET. INF1000 EKSTRATILBUD Stoff fra uke 1-3 12. September 2012 Siri Moe Jensen EKSEMPLER .9.22 LITT OM OPPLEGGET INF EKSTRATILBUD Stoff fra uke - 2. September 22 Siri Moe Jensen Målgruppe: De som mangler forståelse for konseptene gjennomgått så langt. Trening får du ved å jobbe med oppgaver,

Detaljer

INF1010 våren 2006 Uke 19: 9. mai 2006 Et større eksempel: Solitaire (kabal)

INF1010 våren 2006 Uke 19: 9. mai 2006 Et større eksempel: Solitaire (kabal) Det ferdige spillet INF1010 våren 2006 Uke 19: 9. mai 2006 Et større eksempel: Solitaire (kabal) Stein Michael Storleer Institutt for informatikk Dette er kopier av lysark for en forelesning. Sidene er

Detaljer

Steg 1: Tekst på flere linjer

Steg 1: Tekst på flere linjer Skilpaddetekst Skrevet av: Ole Kristian Pedersen, Kodeklubben Trondheim Kurs: Python Tema: Tekstbasert Fag: Programmering Klassetrinn: 8.-10. klasse Introduksjon I denne oppgaven skal vi skrive kode, slik

Detaljer

IN1010. Fra Python til Java. En introduksjon til programmeringsspråkenes verden Dag Langmyhr

IN1010. Fra Python til Java. En introduksjon til programmeringsspråkenes verden Dag Langmyhr IN1010 Fra Python til Java En introduksjon til programmeringsspråkenes verden dag@ifi.uio.no Oversikt Introduksjon Python Java Noe er likt Noe bare ser anderledes ut Noe er helt forskjellig Et par eksempler

Detaljer

I dag. Rep: Oppsummering - variabler. Rep: Datatyper. INF1000 (Uke 3) Mer om uttrykk, terminal I/O, forgreninger

I dag. Rep: Oppsummering - variabler. Rep: Datatyper. INF1000 (Uke 3) Mer om uttrykk, terminal I/O, forgreninger I dag INF1000 (Uke 3) Mer om uttrykk, terminal I/O, forgreninger Grunnkurs i programmering Institutt for Informatikk Universitet i Oslo Litt repetisjon Mer om uttrykk Lesing og skriving til terminal Forgreninger

Detaljer

1) Sørg for at du fortsatt er i eventredigeringsmodus (klikk F6 på tastaturet, eller velg ikonet med en person fra menylinjen).

1) Sørg for at du fortsatt er i eventredigeringsmodus (klikk F6 på tastaturet, eller velg ikonet med en person fra menylinjen). Nå har du mange karakterer i spillverdenen din, men det er ikke noe spennende hvis du ikke kan prate med dem! I dette oppdraget lærer du å legge til dialog til karakterene, slik at du kan snakke med dem.

Detaljer

EKSAMEN 6108/6108N PROGRAMMERING I JAVA Alt trykt og skriftlig materiale.

EKSAMEN 6108/6108N PROGRAMMERING I JAVA Alt trykt og skriftlig materiale. Høgskolen i Telemark Fakultet for allmennvitenskapelige fag EKSAMEN I 6108/6108N PROGRAMMERING I JAVA 21. 12. 2015 Tid: 4 timer Sidetall: Hjelpemiddel: Merknader: Framside + 5 sider Alt trykt og skriftlig

Detaljer

Registrarseminar 1. april 2003. Ingrid Ofstad Norid

Registrarseminar 1. april 2003. Ingrid Ofstad Norid Registrarsemiar 1. april 2003 Igrid Ofstad Norid Statistikk 570 har fått godkjet søkad om å bli registrar ca. 450 registrarer er aktive i dag 2 5 ye avtaler hver uke på semiaret deltar både registrarer

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO Side 1 UNIVERSITETET I OSLO Kandidatnr Det matematisk-naturvitenskapelige fakultet Eksamen i: PRØVEEKSAMEN INF1000 Eksamensdag: Prøveeksamen 22.11.2011 Tid for eksamen: 12:15-16:15 Oppgavesettet er på

Detaljer