L'idée est la suivante:
Créer une classe et l'utilisation s'étend pour hériter de la classe de formulaire JFrame;
Créez un objet JFrame et utilisez la méthode setVisible () de la classe JFrame pour définir le formulaire à visible;
Dans le constructeur, utilisez la méthode super () pour hériter du constructeur de la classe parent;
Utilisez la méthode SettLitle () pour définir le titre du formulaire;
Utilisez la méthode setBounds () pour définir la position d'affichage et la taille du formulaire;
Utilisez la méthode setDefaultCloseOperation () pour définir l'action du bouton Form Fermer pour quitter;
Créer un objet Grid Layout Manager à l'aide de GridLayout;
Utilisez la méthode Sethgap () de la classe GridLayout pour définir l'espacement horizontal des composants;
Utilisez la méthode setvgap () de la classe GridLayout pour définir l'espacement vertical du composant;
Créer un objet JPanel Container;
La définition du conteneur via la méthode setLayout () de la classe JPanel utilise le Grid Layout Manager;
Créez un tableau bidimensionnel de type chaîne et initialisez sa valeur à la valeur affichée sur le bouton correspondant de la calculatrice;
Créer un tableau bidimensionnel de type JBUTTON et allouer l'espace correspondant au tableau bidimensionnel de type chaîne précédent;
Itérater via le tableau bidimensionnel de type chaîne, affectez-le aux boutons correspondants dans le tableau bidimensionnel de type JButton à chaque élément et ajoutez des événements à chaque bouton afin que la valeur correspondante soit affichée dans la zone d'entrée de texte lorsque la boîte de texte lorsque la case lorsque la zone de saisie du texte lorsque la zone de texte du texte est affiché lorsque la zone de Text est du texte Le bouton est cliqué.
La copie de code est la suivante:
import java.awt.borderLayout;
import java.awt.dimension;
import java.awt.gridLayout;
import java.awt.event.actionEvent;
import java.awt.event.actionListener;
import javax.swing.jbutton;
import javax.swing.jframe;
import javax.swing.jpanel;
import javax.swing.jtextfield;
Importer javax.swing.swingConstants;
import javax.swing.uimanager;
classe publique ButtonArrayExample étend JFrame {// hériter de la classe de formulaire jframe
/ **
*
* /
Final statique privé long SerialVersionUID = 6626440733001287873L;
Jtexfield privé Textfield;
public static void main (String args []) {
essayer {
Uimanager.setLookAndFeel ("com.sun.java.swing.plaf.nimbus.nimbuslookAndFeel");
} catch (jetable e) {
e.printStackTrace ();
}
ButtonArrayExample frame = new ButtonArrayExample ();
frame.setVisible (true);
}
public ButtonArrayExample () {
super ();
BorderLayout BorderLayout = (BorderLayout) getContentPane (). GetLayout ();
BorderLayout.Sethgap (20);
BorderLayout.SetVGap (10);
SettItle ("Interface de calculatrice d'implémentation du tableau des bouton");
SetBounds (100, 100, 290, 282);
setDefaultCloseOperation (jframe.exit_on_close);
TextField = new JTextField ();
TextField.Sethorizontalalignment (swingConstants.trailing);
TextField.SetPreferRedSize (nouvelle dimension (12, 50));
getContentPane (). Add (TextField, BorderLayout.north);
TextField.SetColumns (10);
Final GridLayout GridLayout = new GridLayout (4, 0);
GridLayout.Sethgap (5);
Gridlayout.setvgap (5);
JPANEL PANNEL = NOUVEAU JPANEL ();
PANNEL.SETLAYOUT (GRIDLAYOUT);
getContentPane (). Add (panneau, borderLayout.Center);
String [] [] noms = {{"1", "2", "3", "+"}, {"4", "5", "6", "-"}, {"7", " 8 "," 9 "," × "}, {". "," 0 "," = "," ÷ "}};
JBUTTON [] [] Buttons = New Jbutton [4] [4];
for (int row = 0; row <names.length; row ++) {
for (int col = 0; col <names.length; col ++) {
boutons [row] [col] = new Jbutton (noms [row] [col]);
boutons [row] [col] .addactionListener (new ActionListener () {
@Outrepasser
public void ActionPerformed (ActionEvent e) {
JBUTTON Button = (Jbutton) E.Getsource ();
String text = textfield.getText ();
TextField.SeTText (Text + Button.GetText ());
}
});
panneau.add (boutons [ligne] [col]);
}
}
}
}