import javax.swing.*; import java.awt.event.*; import java.awt.*; class GuiDialog implements Dialog { // Vi gjorde GUI-oppgaven fra eksamen v?ren 2022, dette er mitt forslag til l?sning med en main-metode som tester modulen. // Vi har ikke implementert selve bilkollektivet, s? detter er bare et eksempel p? hvordan man kan g? frem for ? l?se GUI-biten. JFrame vindu = new JFrame("Ja eller nei"); Thread main = Thread.currentThread(); JLabel sprorsmaal = new JLabel(); public boolean valg = false; public GuiDialog() { try { UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName()); } catch (Exception e) {System.exit(-1);} vindu.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JPanel panel = new JPanel(); panel.add(sprorsmaal); panel.add(new jaEllerNei(true)); panel.add(new jaEllerNei(false)); vindu.add(panel); vindu.setVisible(true); vindu.pack(); jaEllerNei("Har du en fin dag?"); } public boolean jaEllerNei(String s) { sprorsmaal.setText(s); try {Thread.sleep(10000); } catch (InterruptedException ie) {} return valg; } public static void main(String[] args) { GuiDialog gui = new GuiDialog(); gui.jaEllerNei("Er du bare ute etter Elbil?"); } private class jaEllerNei extends JButton { boolean jaEllerNei; public jaEllerNei(boolean yn) { JLabel tekst = new JLabel(); if (yn) { tekst.setText("Ja"); } else { tekst.setText("Nei"); } jaEllerNei = yn; this.addActionListener(new knappeTrykk()); this.add(tekst); } class knappeTrykk implements ActionListener { public void actionPerformed(ActionEvent e) { valg = jaEllerNei; System.out.println(sprorsmaal.getText()); System.out.println(valg); main.interrupt(); } } } }