import java.awt.*; import java.awt.event.*; import javax.swing.*; public class MdcSwing extends JFrame { public JToggleButton calculaL; public JToggleButton calculaR; public ButtonGroup grupoBotoes; public JButton calculaMDC; public JButton limpa; public JList historico; public JTextField valorX; public JTextField valorY; public JLabel campoX; public JLabel campoY; public JLabel branco; public Integer valorMDC; int x, y; /* Construtor */ public MdcSwing() { super("Calculando o MDC..."); calculaL= new JToggleButton("MDC-L", true); calculaR= new JToggleButton("MDC-R"); grupoBotoes = new ButtonGroup(); grupoBotoes.add (calculaL); grupoBotoes.add (calculaR); calculaMDC = new JButton ("Calcula MDC"); limpa = new JButton ("Limpa"); campoX = new JLabel("Valor de x"); campoY = new JLabel("Valor de Y"); valorY = new JTextField (5); valorX = new JTextField (5); branco = new JLabel(" "); JPanel paneMeio = new JPanel(); JPanel paneCentral = new JPanel(); JPanel paneBotoesNorte = new JPanel(); JPanel paneBotoesSul = new JPanel(); JPanel paneLista = new JPanel(); JPanel paneGeral = new JPanel(); final DefaultListModel modelo = new DefaultListModel(); historico = new JList(modelo); paneBotoesSul.setBorder( BorderFactory.createTitledBorder( "Opções")); paneBotoesNorte.setLayout(new FlowLayout()); paneBotoesNorte.add(calculaL); paneBotoesNorte.add(calculaR); setContentPane(paneBotoesNorte); paneBotoesSul.setLayout(new FlowLayout()); paneBotoesSul.add(calculaMDC); paneBotoesSul.add(limpa); setContentPane(paneBotoesSul); paneCentral.setBorder( BorderFactory.createTitledBorder( "Valores")); paneCentral.setLayout(new FlowLayout()); paneCentral.add(campoX); paneCentral.add(valorX); paneCentral.add(branco); paneCentral.add(campoY); paneCentral.add(valorY); setContentPane(paneCentral); paneLista.setBorder( BorderFactory.createTitledBorder( "Histórico")); paneLista.setLayout(new FlowLayout()); JScrollPane jp=new JScrollPane(historico); jp.setPreferredSize(new Dimension(55,140)); paneLista.add(jp); setContentPane(paneLista); paneMeio.setLayout(new BorderLayout()); paneMeio.add(paneBotoesNorte, BorderLayout.NORTH); paneMeio.add(paneCentral, BorderLayout.CENTER); paneMeio.add(paneBotoesSul, BorderLayout.SOUTH); setContentPane(paneMeio); paneGeral.setLayout(new BorderLayout()); paneGeral.add(paneMeio, BorderLayout.CENTER); paneGeral.add(paneLista, BorderLayout.EAST); setContentPane(paneGeral); calculaMDC. addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e){ x = Integer.parseInt(valorX.getText()); y = Integer.parseInt(valorY.getText()); if (grupoBotoes.getSelection() == calculaL) { Integer valorMDC = new Integer(Mdc.mdcL(x,y)); modelo.addElement(valorMDC.toString()); } else { Integer valorMDC = new Integer(Mdc.mdcR(x,y)); modelo.addElement(valorMDC.toString()); } } } ); limpa.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e){ valorX.setText(""); valorY.setText(""); modelo.removeAllElements(); } }); }//fim-contrutor /* Funcao main */ public static void main(String[] arg) { JFrame minhaFrame = new MdcSwing(); WindowListener l = new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }; minhaFrame.addWindowListener(l); minhaFrame.pack(); minhaFrame.setVisible(true); }//fim-main }//fim-classe Mdc