JButton doivent modifier 8 JTextFields à l'aide d'un tableau. Écoutez boutons ou texte?

StackOverflow https://stackoverflow.com/questions/1386888

Question

Ceci est devoirs, et cette question Prolonge celui-ci

Donc, il y a un bouton pour First, Prev, Next et Last

Chacun doit modifier

Item ID, Name, Rating, Price, Units, Value, Fee, ValueW/Fee, Total Inventory Value 

Le dernier est un total de toutes les unités statiques.

Je ne sais pas si je devrais faire de chaque bouton faire plusieurs appels comme celui-ci.

productName.setText( product.getProductName() );
itemNumber.setText( String.valueOf( product.getItemNumber() ) );

Ou faire chaque JTextArea écouter le bouton puis changer son champ. Est-ce que même travail?

Était-ce utile?

La solution

Inscrivez-vous un ActionListener pour chaque bouton. Dans le corps de la méthode actionPerformed de cette ActionListener, obtenir l'élément pour afficher et passer à une méthode qui sera responsable de la définition des valeurs des champs de texte.

Quelque chose comme:

JButton button = new JButton("Next");
button.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) {
        DVDObject obj = getNextDVD();
        populateFields(obj);
    }
});

...

private DVDObject getNextDVD() {
    // gets the next object to display
    // you could call this method for each of the buttons, 
    // passing in an argument that determines which Object
    // to return (first, last, next, previous, whatever)
}

private void populateFields(DVDObject dvd) {
    // write out the values from the object passed in to the
    // fields
}

Je suppose que vous avez une sorte de collection d'objets qui contiennent toutes les informations sur les DVD, j'ai pris un coup de poignard dans le noir et l'a appelé « DVDObject » ici.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top