import java.awt.*; import java.awt.event.*; import javax.swing.*; class Hovedprogram { public static void main(String[] args) { //Lager to leger og tester dem Lege lege1 = new Lege("Ola"); Spesialist spesialist = new Spesialist("Spesialist Ola", "7529"); Tegnbar[] leger = {lege1, spesialist}; //Lager legemidler Vanlig legemiddelVanlig = new Vanlig("antibiotika", 150, 10); Vanedannende legemiddelVanedannende = new Vanedannende("Fishermans friend", 245, 50, 5); Narkotisk legemiddelNarkotisk = new Narkotisk("Doc", 549, 75, 8); Tegnbar[] legemidler = {legemiddelVanlig, legemiddelVanedannende, legemiddelNarkotisk}; //Lager reseter //lager med vilje alle reseptene med samme legenmidel, da dette vil vise bedre forskjellene mellom reseptene PResept res1 = new PResept(legemiddelVanlig, lege1, 4567); Millitaerresept res2 = new Millitaerresept(legemiddelVanlig, lege1, 4567, 5); HviteResept res3 = new HviteResept(legemiddelVanlig, lege1, 4567, 5); BlaaResept res4 = new BlaaResept(legemiddelVanlig, lege1, 4567, 5); Tegnbar[] resepter = {res1, res2, res3, res4}; JFrame vindu = new JFrame(); vindu.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JPanel basis = new JPanel(); JPanel viseBoks = new JPanel(); viseBoks.setLayout(new GridLayout(10,1)); JPanel knappeBoks = new JPanel(); knappeBoks.setLayout(new GridLayout(3,1)); class ViseKnapp extends JButton{ Tegnbar[] aaVise; public ViseKnapp(String tekst, Tegnbar[] aaVise){ super(tekst); this.aaVise = aaVise; } class KlikketPaa implements ActionListener{ @Override public void actionPerformed(ActionEvent event){ viseBoks.setLayout(new GridLayout(aaVise.length,1)); viseBoks.removeAll(); for (Tegnbar vises : aaVise){ viseBoks.add(vises.toGui()); } vindu.pack(); } } public void initGui(){ this.addActionListener(new KlikketPaa()); } } ViseKnapp legeKnapp = new ViseKnapp("Vis Leger", leger); ViseKnapp legemiddelKnapp = new ViseKnapp("Vis Legemidler",legemidler); ViseKnapp reseptKnapp = new ViseKnapp("Vis resepter",resepter); legeKnapp.initGui(); legemiddelKnapp.initGui(); reseptKnapp.initGui(); knappeBoks.add(legeKnapp); knappeBoks.add(legemiddelKnapp); knappeBoks.add(reseptKnapp); basis.add(knappeBoks); basis.add(viseBoks); vindu.add(basis); vindu.pack(); vindu.setVisible(true); } }