import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Hilsen { private JFrame vindu; private JPanel hovedpanel; private JPanel innhold; private JLabel hilsetekst; private JTextField navnefelt; private JButton hilseknapp; private JButton resetknapp; public void init() { try { UIManager.setLookAndFeel( UIManager.getCrossPlatformLookAndFeelClassName() ); } catch (Exception e) { System.exit(1); } vindu = new JFrame("Hilsen"); vindu.setPreferredSize(new Dimension(600, 300)); vindu.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); hovedpanel = new JPanel(new BorderLayout()); innhold = new JPanel(new FlowLayout(FlowLayout.CENTER, 10, 30)); hilsetekst = new JLabel("Hilsen!"); innhold.add(hilsetekst); navnefelt = new JTextField(15); innhold.add(navnefelt); hilseknapp = new JButton("Hils!"); innhold.add(hilseknapp); resetknapp = new JButton("Reset"); innhold.add(resetknapp); hilseknapp.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { String navn = navnefelt.getText().trim(); String tekst = "Hei " + navn + "!"; Thread tr?d = new Thread(new HilseTr?d(hilsetekst, tekst)); tr?d.start(); } }); resetknapp.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { navnefelt.setText(""); hilsetekst.setText("Hilsen!"); } }); hovedpanel.add(innhold, BorderLayout.CENTER); vindu.add(hovedpanel); vindu.pack(); vindu.setLocationRelativeTo(null); vindu.setVisible(true); } public static void main(String[] args) { Hilsen h = new Hilsen(); h.init(); } }