Vorlage für die Q2/Q4: HA: ZahlButton für den Taschenrechner implementieren
import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.util.*; public class TicTacToe implements ActionListener{ JFrame fenster; boolean spieler1AmZug; JLabel spieleranzeige; public static void main(String[] args){ new TicTacToe(); } TicTacToe(){ spieler1AmZug=false; fenster=new JFrame(); fenster.setLayout(new GridLayout(3,3)); fenster.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); for(int i=0;i<9;i++){ FeldButton b=new FeldButton(); b.addActionListener(this); fenster.add(b); } spieleranzeige=new JLabel(""); fenster.add(spieleranzeige); spielerWechsel(); fenster.pack(); fenster.setVisible(true); } public void spielerWechsel(){ if(spieler1AmZug==true){ spieler1AmZug=false; spieleranzeige.setText("Spieler 2 am Zug"); }else{ spieler1AmZug=true; spieleranzeige.setText("Spieler 1 am Zug"); } } public void actionPerformed(ActionEvent e){ FeldButton b=(FeldButton) e.getSource(); b.klick(spieler1AmZug); spielerWechsel(); } } class MyButton extends JButton{ MyButton(){ super(""); } } class FeldButton extends MyButton{ FeldButton(){ super(); } public void klick(boolean x){ if(x==true){ setText("X"); }else{ setText("O"); } } }