Voor informatica moet ik een applet maken die het volgende doet:
APPLET Cijferadministratie (Visual Cafe)
* 2 invoervelden (Naam leerling en cijfer)
* 3 knoppen ( voegtoe, sorteer op naam, sorteer op cijfer)
* lijst (waar de gegevens in komen te staan)
Het toevoegen lukt nog wel, maar nu is de bedoeling dat je het programma zo programmeert, dat hij kan sorteren (op naam en op cijfer).
De voegtoeknop:
void toevoegKnop_ActionPerformed(java.awt.event.ActionEvent event)
{
//ophalen van naam + cijfer
String naam = leerlingVeld.getText();
int cijfer = Integer.parseInt(cijferVeld.getText());
//toevoegen naam en cijfer aan de lijst
leerlingLijst.add(naam + " - " + cijfer);
//toevoegen naam en cijfer aan de array leerlingRij
leerlingRij[aantalleerlingen].naam = naam;
leerlingRij[aantalleerlingen].cijfer = cijfer;
//teller aantalleerlingen met 1 verhogen
aantalleerlingen++;
leerlingVeld.setText("");
cijferVeld.setText("");
}
En dit heb ik geprobeerd met de sorteerknop: (op naam)
void naamKnop_ActionPerformed(java.awt.event.ActionEvent event)
{
// indexRij ophalen ??
// als indexRij groter is dan indexRij + 1
// dan zet je indexRij in extra veld en indexRij + 1 in indexRij
// en extra veld in indexRij + 1
// zo niet dan ga je naar de volgende
// dat dan zo vaak doen als er aantal namen zijn
// dan zet je de namen op de juiste plek
String hulpveld = "";
int hulpcijfer = 0;
for(int teller = 0; teller < aantalleerlingen; teller++)
{
for(int index = 0; index < aantalleerlingen -1; index++)
{
if(leerlingRij[index].naam.compareTo(leerlingRij[index+1].naam) > 0);
{
hulpveld = leerlingRij[index].naam;
leerlingRij[index].naam = leerlingRij[index+1].naam;
leerlingRij[index+1].naam = hulpveld;
}
}
}
leerlingLijst.removeAll();
for(int t = 0; t < aantalleerlingen; t++)
{
leerlingLijst.add(leerlingRij[t].naam + " - " + leerlingRij[t].cijfer);
}
}
Je moet dus een hulpveld maken, zodat een naam die verplaatst moet worden tijdelijk ergens anders wordt neergezet.
Alleen nu kom ik vast te zitten...meer weet ik niet!
Wat moet ik doen om de applet werkend te maken?
Alvast bedankt!!!!
p.s.: Er zit een klasse bij, genoemd 'Leerling'.
public class Leerling
{
public String naam;
public int cijfer;
}
Ook boven de init, en in de init zelf is wat toegevoegd:
/*
A basic extension of the java.applet.Applet class
*/
import java.awt.*;
import java.applet.*;
public class cijferApplet extends Applet
{
//initialisatie en declaratie
private int AANTAL = 30;
//private Leering leerling = new Leerling();
//Voor een array geldt:
private Leerling[] leerlingRij = new Leerling[AANTAL];
//Declaratie voor de teller van aantalleerlingen (positiebepaling)
int aantalleerlingen = 0;
public void init()
{
//initialiseren van de velden van de array leerlingRij
for (int i = 0 ; i < AANTAL; i++)
{
leerlingRij[i] = new Leerling();
}
// Take out this line if you don't use..........enz.
__________________
Je moet wat.
Laatst gewijzigd op 15-10-2005 om 12:58.
|