Laboration 1 - En liten knappkomponentIncheckningDet första du ska göra är kursregistrering i res-systemet. Logga in på CSC:s datorer och ge kommandotres checkin prutt10 . Gör även course join prutt10 .
Det kommer att förbättra din miljö lite grann och göra att
kursledaren kan ge dig inloggningsmeddelanden som rör kursen.
Båda gruppmedlemmarna måste ge kommandona från det egna kontot.
res checkin och course join görs bara en
enda gång per kurs.
Frivilligt - gemensam katalog för kursenDet kan vara praktiskt att ha en katalog som båda gruppmedlemmarna kan komma åt. Det finns ett kommando för detta:course labdir prutt10 labbkompis-användarnamn skapar katalogen
prutt10 under hemkatalogen för den som ger kommandot.
Labbkompisen får tillgång till katalogen men måste också
logga in och skriva kommandot
course labdir prutt10 kajsakavat där kajsakavat
byts mot den första gruppmedlemmens inloggningsnamn.
De som förstår sig på filsystemet och kan skapa underkataloger
och symboliska länkar och kan sätta åtkomsträttigheter
på sina kataloger och filer kan själva åstadkomma en filkatalog
tillgänglig inom gruppen utan specialkommandot Kösystemet Sima för hjälp och redovisningNär man gett kommandotcourse join prutt10 , loggat ut och
loggat in igen, har man tillgång till Sima genom att bara skriva
sm i ett terminalfönster.
Annars kan man skriva module add sima och därefter
sm . Sima dyker upp som ett eget fönster med en
rad kursförkortningar. Välj prutt och tryck på Login-
knappen! När du vill redovisa eller ha hjälp, tryck på Queue-
knappen.
Underkatalog för kursenDetta bör vara självklart för alla: Skapa en egen katalog för kursen där varje labb får en underkatalog (som vid behov själva kan få underkataloger). Kursen har funnits i flera år och kallas inom CSC förprutt följt av årtalet, t.ex. prutt10 .
Ni får förstås gärna använda ett annat vackrare namn!
Gör ett fristående javaprogram och en appletSkapa en underkatalog till kursens katalog. Kalla den t.ex. förlab1 .
Gör nu två mycket små Java-program. Det ena ska vara en applet (Applet eller
JApplet) och det andra ska vara ett fristående program som öppnar ett fönster
med ram (Frame eller JFrame) på datorskärmen. Se till att författarnas namn
står någonstans i fönstret.
Om du är ringrostig (eller t.o.m. nybörjare) som javaprogrammerare
påminner vi om att det till appleten måste höra en liten fil som
exemplelvis kan heta appletviewer Happ.htmlFörsta gången du använder appletviewern tar den lite tid att starta, men sedan blir den mycket snabbare än webbläsaren. Även om slutdestinationen för ett applet-program är en webbsida så använder man gärna appletviewer under testfasen. En minimal html-fil kan innehålla Happ.class (som är den kompilerade
versionen av Happ.java ) i ett fönster som är 300 pixlar
brett och 150 pixlar högt.
Skapa en utvidgad knappkomponent med olika tillståndSkapa nu en klass för en ny grafisk komponent som är en utvidgad knapp, dvs en klass som ärver frånButton eller JButton .
Knappen ska ha minst två olika tillstånd. Ett tryck på knappen ska
ändra tillståndet och det ska synas. Minst två saker ska ändras.
Man kan välja t.ex. färg på knappen, text på knappen eller textstorlek.
Om ni väljer n st tillstånd så ska man efter
n tryck på knappen vara tillbaka i
starttillståndet. OBS! Det är viktigt och krävs att
knappkomponenten själv sköter om sina
tillstånd. Det duger inte att det omgivande programmet (applet eller
fristående program) ändrar knappens tillstånd!
Det är trevligt men krävs inte att man kan välja vilka tillstånd
knappen ska ha genom parametrar till konstruktorn när knappen skapas. T.ex.
new MinKnapp(Color.white, Color.cyan, "På", "Av"); new MinKnapp(Color.green, Color.red, "Kör", "Stopp");Objekt av MinKnapp har två tillstånd som visas genom två olika färger och två olika texter på knapparna. Färgerna och texterna väljs då knappobjekten skapas. Knappar i fönstrenLägg minst ett par objekt av den nya knappen både i appleten och det fristående programmet.Liten paket-övningPröva slutligen att lägga den nya knappklassen i ett eget paket, som kan vara en underkatalogpaket och skriv lämpliga package
och import överst i inblandade javafiler så att det hela
fungerar igen.
Rita UML-klassdiagramöver knappkomponent, applet och fristående program. Alla klasser (nya och från bibliotek) ska vara med men det räcker att skriva klassernas namn i rutorna. Inga detaljer om insidorna behövs. Ni får förstås gärna rita diagrammet innan programmen skrivs.RedovisningVid redovisning så skall följande visas upp och förklaras
När handledaren är nöjd, be om hans/hennes underskrift på ditt kvittensblad! Kvittensbladet finns för utskrift på kurshemsidan under Laborationer.
Sidansvarig: <ann@nada.kth.se>
|