Noldus Skrevet 16. mars 2006 Del Skrevet 16. mars 2006 jeg holder på med en oppgave, og har støtt på litt problemer. "Når brukeren trykker på ”Statistics” i Tools menyen, skal det skrives ut hvor mange filer det finnes i arkivet i det skrollbare tekstområdet. " "Når du trykker ”Remove File from Archive”, så skal ArkivFil objektet med det filnavnet i tekstfeltet for ” File Name” fjernes fra arkivet. Dersom det finnes en slik fil, så skal det fjernes fra arkivet og meldingen ”fjernet” skrives i tekstområdet og tekstfeltene tømmes for tekst. Hvis det ikke finnes en slik fil, skal det skrives en feilmelding i tekstområdet. Skriv koden for dette. " jeg får ikke disse tingene til å fungere i rammen jeg har laget. jeg tror jeg må sette noe i klassen archive, men ikke vet jeg. alle hint mottas med stor takknemlighet. // område A public class MinRamme extends JFrame{ // område B public minramme(){ // område C } // område D public static void main(String[] args){ MinRamme m=new MinRamme(); m.setVisible(true); } } class Arkiv{ privat Vector arkiv; public Arkiv(){ arkiv=new Vector(); } public void add(ArkivFil af){/*ikke ferdig*/} public String skrivTilFil(){/*ikke ferdig*/} public String getArkivnavn(){/*ikke ferdig*/} public void setArkivnavn(String nyttarkivnavn){ arkivnavn = nyttarkivnavn;} public String getArkivnavn(){ return arkivnavn;} private String arkivnavn="arkiv.txt"; } class ArkivFil { private String filnavn; private String author; private String description; public ArkivFil (){ } public ArkivFil (String innfilnavn, String innauthor, String inndescription){ filnavn=innfilnavn; author =innauthor; description =inndescription; } public void setFilnavn(String innfilnavn){filnavn=innfilnavn;} public String getFilnavn(){return filnavn;} public void setAuthor (String innauthor){ author =innauthor;} public String getAuthor (){return author;} public void set description (String inndescription){ description =inndescription;} public String getFilnavn(){return description;} Lenke til kommentar
Edorph Skrevet 16. mars 2006 Del Skrevet 16. mars 2006 (endret) Du må i hvertfall ha en funksjon i FilArkiv-klassen som fjerner ArkivFiler med filnavnet du skriver i tekstfeltet. Noe ala public String remove(String szRemNavn) { String szStatus = "Fant ikke filen med navnet " + szRemNavn + "\n"; // Let gjennom etter ArkivFil med navn szRemNavn for(int i=0; i<arkiv.size(); i++) { if( ((ArkivFil)arkiv.get(i)).getFilnavn().equals(szRemNavn) ) { arkiv.remove(i); szStatus = "Fjernet!\n"; } } return szStatus; } Og MinRamme-klassen kan vel være noe slikt? public class MinRamme extends JFrame implements ActionListener{ // område B JButton jbAdd, jbRem; JTextField jtfFilnavn; JTextArea jtaOutput; Arkiv arkiv; public MinRamme(){ arkiv = new Arkiv(); jtfFilnavn = new JTextField(); jtfFilnavn.setSize(200,200); jbAdd = new JButton("Legg til"); jbAdd.addActionListener(this); jbRem = new JButton("Fjern"); jbRem.addActionListener(this); jtaOutput = new JTextArea(); JPanel jpNorth = new JPanel(new GridLayout(1,3)); JPanel jpMain = new JPanel(); jpMain.setLayout(new BorderLayout()); this.add(jpNorth, BorderLayout.NORTH); this.add(jpMain, BorderLayout.CENTER); jpNorth.add(jtfFilnavn); jpNorth.add(jbAdd); jpNorth.add(jbRem); jpMain.add(jtaOutput, BorderLayout.CENTER); this.setSize(400,400); this.setTitle("Filarkiv"); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } // område D public static void main(String[] args){ MinRamme m=new MinRamme(); m.setVisible(true); } public void actionPerformed(ActionEvent evt) { if(evt.getSource() == jbAdd){ arkiv.add(new ArkivFil(jtfFilnavn.getText(), "dummy", "dummy")); jtaOutput.append("La til fil. Nå er det så mange filer i arkivet: " + arkiv.getSize() + "\n"); } else if(evt.getSource() == jbRem) { jtaOutput.append( arkiv.remove(jtfFilnavn.getText()) ); jtaOutput.append("Ok. Nå er det så mange filer i arkivet: " + arkiv.getSize() + "\n"); } } } Gøy detta Endret 16. mars 2006 av Edorph Lenke til kommentar
Edorph Skrevet 16. mars 2006 Del Skrevet 16. mars 2006 Og sånn ble mitt helt til slutt http://home.online.no/~frnil3/MinRamme.java.html Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå